fome-fw/firmware/controllers/algo/engine_configuration_genera...

1162 lines
19 KiB
C
Raw Normal View History

2015-02-11 14:04:02 -08:00
// this section was generated by config_definition.jar on Wed Feb 11 16:24:32 EST 2015
2015-01-27 16:05:24 -08:00
// begin
2015-01-27 13:04:15 -08:00
#include "rusefi_types.h"
2015-01-21 14:04:08 -08:00
typedef struct {
/**
* offset 0
*/
2015-01-22 17:05:54 -08:00
float baseFuel;
2015-01-21 14:04:08 -08:00
/**
* This value controls what RPM values we consider 'cranking' (any RPM below 'crankingRpm')
* Anything above 'crankingRpm' would be 'running'
* offset 4
*/
2015-01-22 17:05:54 -08:00
int16_t rpm;
2015-01-21 14:04:08 -08:00
/**
* need 4 byte alignment
* offset 6
*/
uint8_t alignmentFill[2];
/** total size 8*/
} cranking_parameters_s;
2015-01-21 15:06:34 -08:00
typedef struct {
/**
* kPa value at zero volts
* offset 0
2015-01-23 10:06:12 -08:00
*/
2015-01-22 17:05:54 -08:00
float valueAt0;
2015-01-21 15:06:34 -08:00
/**
* kPa value at 5 volts
* offset 4
2015-01-23 10:06:12 -08:00
*/
2015-01-22 17:05:54 -08:00
float valueAt5;
2015-01-21 15:06:34 -08:00
/**
* offset 8
2015-01-23 10:06:12 -08:00
*/
2015-01-22 17:05:54 -08:00
air_pressure_sensor_type_e type;
2015-01-21 15:06:34 -08:00
/**
* offset 12
2015-01-23 10:06:12 -08:00
*/
2015-01-21 15:06:34 -08:00
adc_channel_e hwChannel;
2015-01-23 10:06:12 -08:00
/** total size 16*/
2015-01-21 15:06:34 -08:00
} air_pressure_sensor_config_s;
2015-01-23 10:06:12 -08:00
/**
* @brief MAP averaging configuration
2015-01-21 15:06:34 -08:00
2015-01-28 16:06:39 -08:00
*/
2015-01-21 15:06:34 -08:00
typedef struct {
/**
* offset 0
2015-01-23 10:06:12 -08:00
*/
2015-01-21 15:06:34 -08:00
float samplingAngleBins[MAP_ANGLE_SIZE];
/**
* @brief MAP averaging sampling start angle, by RPM
* offset 32
2015-01-23 10:06:12 -08:00
*/
2015-01-21 15:06:34 -08:00
float samplingAngle[MAP_ANGLE_SIZE];
/**
* offset 64
2015-01-23 10:06:12 -08:00
*/
2015-01-21 15:06:34 -08:00
float samplingWindowBins[MAP_WINDOW_SIZE];
/**
* @brief MAP averaging angle duration, by RPM
* offset 96
2015-01-23 10:06:12 -08:00
*/
2015-01-21 15:06:34 -08:00
float samplingWindow[MAP_WINDOW_SIZE];
/**
* offset 128
2015-01-23 10:06:12 -08:00
*/
2015-01-21 15:06:34 -08:00
air_pressure_sensor_config_s sensor;
2015-01-23 10:06:12 -08:00
/** total size 144*/
2015-01-21 15:06:34 -08:00
} MAP_sensor_config_s;
2015-01-23 10:06:12 -08:00
2015-01-27 14:04:04 -08:00
/**
* @brief Thermistor curve parameters
2015-01-28 16:06:39 -08:00
*/
2015-01-27 14:04:04 -08:00
typedef struct {
/**
* these values are in Celcuus
* offset 0
*/
float tempC_1;
/**
* offset 4
*/
float tempC_2;
/**
* offset 8
*/
float tempC_3;
/**
* offset 12
*/
float resistance_1;
/**
* offset 16
*/
float resistance_2;
/**
* offset 20
*/
float resistance_3;
/**
* offset 24
*/
float bias_resistor;
/**
* offset 28
*/
float s_h_a;
/**
* offset 32
*/
float s_h_b;
/**
* offset 36
*/
float s_h_c;
/** total size 40*/
} ThermistorConf;
2015-02-02 09:05:12 -08:00
typedef struct {
/**
* cc/min, cubic centimeter per minute
* By the way, g/s = 0.125997881 * (lb/hr)
* g/s = 0.125997881 * (cc/min)/10.5
* g/s = 0.0119997981 * cc/min
* offset 0
*/
float flow;
/**
* offset 4
*/
float lag;
2015-02-02 11:04:09 -08:00
/**
* offset 8
*/
float battLagCorrBins[VBAT_INJECTOR_CURVE_SIZE];
/**
* offset 40
*/
float battLagCorr[VBAT_INJECTOR_CURVE_SIZE];
/** total size 72*/
2015-02-02 09:05:12 -08:00
} injector_s;
typedef struct {
/**
* Engine displacement, in liters
* see also cylindersCount
* offset 0
*/
float displacement;
2015-02-09 08:07:00 -08:00
/**
* offset 4
*/
cylinders_count_t cylindersCount;
/**
* offset 8
*/
firing_order_e firingOrder;
/** total size 12*/
2015-02-02 09:05:12 -08:00
} specs_s;
2015-01-23 10:06:12 -08:00
/**
* @brief Trigger wheel(s) configuration
2015-01-28 16:06:39 -08:00
*/
2015-01-23 10:06:12 -08:00
typedef struct {
/**
* offset 0
*/
trigger_type_e type;
/**
2015-02-02 20:07:37 -08:00
offset 4 bit 0 */
bool_t customIsSynchronizationNeeded : 1;
/**
offset 4 bit 1 */
2015-02-02 21:04:02 -08:00
bool_t customNeedSecondTriggerInput : 1;
2015-01-23 10:06:12 -08:00
/**
* offset 8
*/
int customTotalToothCount;
/**
* offset 12
*/
int customSkippedToothCount;
/**
* offset 16
*/
float customSyncRatioFrom;
/**
* offset 20
*/
float customSyncRatioTo;
/**
* offset 24
*/
2015-01-28 17:06:25 -08:00
bool32_t customUseRiseEdge;
2015-01-23 10:06:12 -08:00
/** total size 28*/
} trigger_config_s;
2015-01-23 11:07:33 -08:00
typedef struct {
/**
* offset 0
2015-01-27 16:05:24 -08:00
*/
2015-01-28 17:06:25 -08:00
adc_channel_e hwChannel;
2015-01-23 11:07:33 -08:00
/**
* offset 4
2015-01-27 16:05:24 -08:00
*/
2015-01-23 11:07:33 -08:00
float v1;
/**
* offset 8
2015-01-27 16:05:24 -08:00
*/
2015-01-23 11:07:33 -08:00
float value1;
/**
* offset 12
2015-01-27 16:05:24 -08:00
*/
2015-01-23 11:07:33 -08:00
float v2;
/**
* offset 16
2015-01-27 16:05:24 -08:00
*/
2015-01-23 11:07:33 -08:00
float value2;
2015-01-27 16:05:24 -08:00
/** total size 20*/
2015-01-23 11:07:33 -08:00
} afr_sensor_s;
2015-01-27 13:04:15 -08:00
typedef struct {
/**
* offset 0
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e idleValvePin;
/**
* offset 4
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
pin_output_mode_e idleValvePinMode;
/**
* offset 8
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e fuelPumpPin;
/**
* offset 12
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
pin_output_mode_e fuelPumpPinMode;
/**
* offset 16
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e injectionPins[INJECTION_PIN_COUNT];
/**
* offset 64
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
pin_output_mode_e injectionPinMode;
/**
* offset 68
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e ignitionPins[IGNITION_PIN_COUNT];
/**
* offset 116
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
pin_output_mode_e ignitionPinMode;
/**
* offset 120
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e malfunctionIndicatorPin;
/**
* offset 124
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
pin_output_mode_e malfunctionIndicatorPinMode;
/**
* offset 128
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e fanPin;
/**
* offset 132
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
pin_output_mode_e fanPinMode;
/**
* offset 136
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e electronicThrottlePin1;
/**
* offset 140
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
pin_output_mode_e electronicThrottlePin1Mode;
/**
* some cars have a switch to indicate that clutch pedal is all the way down
* offset 144
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e clutchDownPin;
/**
* offset 148
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
pin_input_mode_e clutchDownPinMode;
/**
* offset 152
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e alternatorControlPin;
/**
* offset 156
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
pin_output_mode_e alternatorControlPinMode;
/**
* offset 160
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e HD44780_rs;
/**
* offset 164
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e HD44780_e;
/**
* offset 168
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e HD44780_db4;
/**
* offset 172
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e HD44780_db5;
/**
* offset 176
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e HD44780_db6;
/**
* offset 180
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e HD44780_db7;
/**
* offset 184
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e gps_rx_pin;
/**
* offset 188
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e gps_tx_pin;
/**
* offset 192
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
int idleSolenoidFrequency;
/**
* offset 196
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
int triggerSimulatorFrequency;
/**
* Digital Potentiometer is used by stock ECU stimulation code
* offset 200
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
spi_device_e digitalPotentiometerSpiDevice;
/**
* offset 204
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e digitalPotentiometerChipSelect[DIGIPOT_COUNT];
/**
* offset 220
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
adc_channel_mode_e adcHwChannelEnabled[HW_MAX_ADC_INDEX];
/**
* offset 284
2015-01-27 16:05:24 -08:00
*/
2015-01-31 06:04:04 -08:00
brain_input_pin_e triggerInputPins[3];
2015-01-27 13:04:15 -08:00
/**
* offset 296
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e mainRelayPin;
/**
* offset 300
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
int idleThreadPeriod;
/**
* offset 304
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
int consoleLoopPeriod;
/**
* offset 308
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
int lcdThreadPeriod;
/**
* offset 312
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
int tunerStudioThreadPeriod;
/**
* offset 316
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
int generalPeriodicThreadPeriod;
/**
* offset 320
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
uint32_t tunerStudioSerialSpeed;
/**
* offset 324
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e boardTestModeJumperPin;
/**
* offset 328
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
can_device_mode_e canDeviceMode;
/**
* offset 332
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e canTxPin;
/**
* offset 336
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e canRxPin;
/**
* offset 340
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e triggerSimulatorPins[TRIGGER_SIMULATOR_PIN_COUNT];
/**
* offset 352
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
pin_output_mode_e triggerSimulatorPinModes[TRIGGER_SIMULATOR_PIN_COUNT];
/**
* offset 364
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
brain_pin_e o2heaterPin;
/**
* offset 368
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
pin_output_mode_e o2heaterPinModeTodO;
2015-01-27 16:05:24 -08:00
/**
2015-01-28 16:06:39 -08:00
offset 372 bit 0 */
bool_t is_enabled_spi_1 : 1;
2015-01-27 16:05:24 -08:00
/**
2015-01-28 16:06:39 -08:00
offset 372 bit 1 */
bool_t is_enabled_spi_2 : 1;
2015-01-27 16:05:24 -08:00
/**
2015-01-28 16:06:39 -08:00
offset 372 bit 2 */
bool_t is_enabled_spi_3 : 1;
2015-01-27 16:05:24 -08:00
/**
2015-01-28 16:06:39 -08:00
offset 372 bit 3 */
bool_t isSdCardEnabled : 1;
2015-01-27 16:05:24 -08:00
/**
2015-01-28 16:06:39 -08:00
offset 372 bit 4 */
bool_t isFastAdcEnabled : 1;
2015-01-27 16:05:24 -08:00
/**
2015-01-28 16:06:39 -08:00
offset 372 bit 5 */
bool_t isEngineControlEnabled : 1;
2015-01-27 16:05:24 -08:00
/**
2015-01-28 16:06:39 -08:00
offset 372 bit 6 */
bool_t isHip9011Enabled : 1;
2015-01-27 13:04:15 -08:00
/**
* offset 376
2015-01-27 16:05:24 -08:00
*/
2015-01-31 06:04:04 -08:00
brain_input_pin_e logicAnalyzerPins[LOGIC_ANALYZER_CHANNEL_COUNT];
2015-01-27 13:04:15 -08:00
/**
* default or inverted input
* offset 392
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
uint8_t logicAnalyzerMode[LOGIC_ANALYZER_CHANNEL_COUNT];
/**
* offset 396
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
int unrealisticRpmThreashold;
/**
* offset 400
2015-01-27 16:05:24 -08:00
*/
2015-01-27 13:04:15 -08:00
pin_output_mode_e mainRelayPinMode;
/**
* offset 404
2015-01-27 16:05:24 -08:00
*/
2015-02-07 06:04:13 -08:00
brain_pin_e max31855_cs[EGT_CHANNEL_COUNT];
2015-01-27 13:04:15 -08:00
/**
2015-01-27 16:05:24 -08:00
* offset 436
*/
2015-01-27 13:04:15 -08:00
spi_device_e max31855spiDevice;
/**
2015-01-27 16:05:24 -08:00
* offset 440
*/
2015-01-27 13:04:15 -08:00
brain_pin_e fsioPins[LE_COMMAND_COUNT];
/**
2015-01-27 16:05:24 -08:00
* offset 504
*/
2015-01-27 13:04:15 -08:00
pin_output_mode_e gpioPinModes[LE_COMMAND_COUNT];
/**
2015-01-27 16:05:24 -08:00
* offset 568
*/
2015-01-27 13:04:15 -08:00
brain_pin_e joystickPins[JOYSTICK_PIN_COUNT];
/**
* This pin is used for debugging - snap a logic analyzer on it and see if it's ever high
2015-01-27 16:05:24 -08:00
* offset 588
*/
2015-01-27 13:04:15 -08:00
brain_pin_e triggerErrorPin;
/**
2015-01-27 16:05:24 -08:00
* offset 592
*/
2015-01-27 13:04:15 -08:00
pin_output_mode_e triggerErrorPinMode;
/**
* value between 0 and 1
2015-01-27 16:05:24 -08:00
* offset 596
*/
2015-01-27 13:04:15 -08:00
float idleSolenoidPwm;
/**
2015-01-27 16:05:24 -08:00
* offset 600
*/
2015-01-27 13:04:15 -08:00
brain_pin_e acRelayPin;
/**
2015-01-27 16:05:24 -08:00
* offset 604
*/
2015-01-27 13:04:15 -08:00
pin_output_mode_e acRelayPinMode;
/**
2015-01-27 16:05:24 -08:00
* offset 608
*/
2015-01-30 12:05:18 -08:00
fsio_pwm_freq_t fsioFrequency[LE_COMMAND_COUNT];
2015-01-27 13:04:15 -08:00
/**
2015-01-27 16:05:24 -08:00
* offset 640
*/
2015-01-27 13:04:15 -08:00
brain_pin_e hip9011CsPin;
/**
2015-01-27 16:05:24 -08:00
* offset 644
*/
2015-01-27 13:04:15 -08:00
brain_pin_e hip9011IntHoldPin;
/**
2015-01-27 16:05:24 -08:00
* offset 648
*/
2015-01-27 13:04:15 -08:00
brain_pin_e hip9011OutPin;
/**
2015-01-27 16:05:24 -08:00
* offset 652
*/
2015-01-31 05:07:08 -08:00
fsio_setting_t fsio_setting[LE_COMMAND_COUNT];
2015-01-27 13:04:15 -08:00
/**
2015-01-27 16:05:24 -08:00
* offset 716
*/
2015-01-27 13:04:15 -08:00
brain_pin_e spi1mosiPin;
/**
2015-01-27 16:05:24 -08:00
* offset 720
*/
2015-01-27 13:04:15 -08:00
brain_pin_e spi1misoPin;
/**
2015-01-27 16:05:24 -08:00
* offset 724
*/
2015-01-27 13:04:15 -08:00
brain_pin_e spi1sckPin;
/**
2015-01-27 16:05:24 -08:00
* offset 728
*/
2015-01-27 13:04:15 -08:00
brain_pin_e spi2mosiPin;
/**
2015-01-27 16:05:24 -08:00
* offset 732
*/
2015-01-27 13:04:15 -08:00
brain_pin_e spi2misoPin;
/**
2015-01-27 16:05:24 -08:00
* offset 736
*/
2015-01-27 13:04:15 -08:00
brain_pin_e spi2sckPin;
/**
2015-01-27 16:05:24 -08:00
* offset 740
*/
2015-01-27 13:04:15 -08:00
brain_pin_e spi3mosiPin;
/**
2015-01-27 16:05:24 -08:00
* offset 744
*/
2015-01-27 13:04:15 -08:00
brain_pin_e spi3misoPin;
/**
2015-01-27 16:05:24 -08:00
* offset 748
*/
2015-01-27 13:04:15 -08:00
brain_pin_e spi3sckPin;
/**
2015-01-27 16:05:24 -08:00
* offset 752
*/
2015-01-27 13:04:15 -08:00
float hip9011Gain;
/**
2015-01-27 16:05:24 -08:00
* offset 756
*/
2015-01-27 13:04:15 -08:00
brain_pin_e joystickCenterPin;
/**
2015-01-27 16:05:24 -08:00
* offset 760
*/
2015-01-27 13:04:15 -08:00
brain_pin_e joystickAPin;
/**
2015-01-27 16:05:24 -08:00
* offset 764
*/
2015-01-27 13:04:15 -08:00
brain_pin_e joystickBPin;
/**
2015-01-27 16:05:24 -08:00
* offset 768
*/
2015-01-27 13:04:15 -08:00
brain_pin_e joystickCPin;
/**
2015-01-27 16:05:24 -08:00
* offset 772
*/
2015-01-27 13:04:15 -08:00
brain_pin_e joystickDPin;
/**
2015-01-27 16:05:24 -08:00
* offset 776
*/
2015-01-27 13:04:15 -08:00
analog_chart_e analogChartMode;
/**
2015-01-27 16:05:24 -08:00
* offset 780
*/
2015-01-27 13:04:15 -08:00
int unusedbs[6];
/**
2015-01-27 16:05:24 -08:00
* offset 804
*/
2015-01-27 13:04:15 -08:00
le_formula_t le_formulas[LE_COMMAND_COUNT];
2015-01-27 16:05:24 -08:00
/** total size 4004*/
2015-01-27 13:04:15 -08:00
} board_configuration_s;
2015-01-27 14:04:04 -08:00
typedef struct {
/**
* http://rusefi.com/wiki/index.php?title=Manual:Engine_Type
* offset 0
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
engine_type_e engineType;
/**
* this magic number is used to make sure that what we read from Flash is in fact some configuration
* offset 4
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int headerMagicValue;
/**
* offset 8
2015-01-27 16:05:24 -08:00
*/
2015-02-02 09:05:12 -08:00
injector_s injector;
2015-01-27 14:04:04 -08:00
/**
2015-02-02 09:05:12 -08:00
* offset 80
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float cltFuelCorrBins[CLT_CURVE_SIZE];
/**
2015-02-02 09:05:12 -08:00
* offset 144
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float cltFuelCorr[CLT_CURVE_SIZE];
/**
2015-02-02 09:05:12 -08:00
* offset 208
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float iatFuelCorrBins[IAT_CURVE_SIZE];
/**
2015-02-02 09:05:12 -08:00
* offset 272
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float iatFuelCorr[IAT_CURVE_SIZE];
/**
* Should the trigger emulator push data right into trigger input, eliminating the need for physical jumper wires?
* PS: Funny name, right? :)
* todo: make this a bit on some bit field
2015-02-02 09:05:12 -08:00
* offset 336
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int16_t directSelfStimulation;
/**
* todo: extract these two fields into a structure
* todo: we need two sets of TPS parameters - modern ETBs have to sensors
2015-02-02 09:05:12 -08:00
* offset 338
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int16_t tpsMin;
/**
* tpsMax value as 10 bit ADC value. Not Voltage!
2015-02-02 09:05:12 -08:00
* offset 340
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int16_t tpsMax;
/**
2015-02-02 09:05:12 -08:00
* offset 342
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
uint16_t unused334;
/**
* todo: finish implementation. These values are used for TPS disconnect detection
2015-02-02 09:05:12 -08:00
* offset 344
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int16_t tpsErrorLowValue;
/**
2015-02-02 09:05:12 -08:00
* offset 346
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int16_t tpsErrorHighValue;
/**
2015-02-02 09:05:12 -08:00
* offset 348
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float primingSquirtDurationMs;
/**
* 360 for two-stroke
* 720 for four-stroke
2015-02-02 09:05:12 -08:00
* offset 352
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int engineCycle;
/**
2015-02-02 09:05:12 -08:00
* offset 356
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
cranking_parameters_s cranking;
/**
* @see hasMapSensor
* @see isMapAveragingEnabled
2015-02-02 09:05:12 -08:00
* offset 364
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
MAP_sensor_config_s map;
/**
* todo: merge with channel settings, use full-scale Thermistor here!
2015-02-02 09:05:12 -08:00
* offset 508
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
ThermistorConf clt;
/**
2015-02-02 09:05:12 -08:00
* offset 548
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
ThermistorConf iat;
/**
2015-02-02 09:05:12 -08:00
* offset 588
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float sparkDwellBins[DWELL_COUNT];
/**
2015-02-02 09:05:12 -08:00
* offset 620
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float sparkDwell[DWELL_COUNT];
/**
* this value could be used to offset the whole ignition timing table by a constant
2015-02-11 14:04:02 -08:00
* offset 652
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float ignitionBaseAngle;
/**
* While cranking (which causes battery voltage to drop) we can calculate dwell time in shaft
* degrees, not in absolute time as in running mode.
2015-02-11 14:04:02 -08:00
* offset 656
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float crankingChargeAngle;
/**
2015-02-11 14:04:02 -08:00
* offset 660
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
timing_mode_e timingMode;
/**
* This value is used in 'fixed timing' mode, i.e. constant timing
* This mode is useful for instance while adjusting distributor location
2015-02-11 14:04:02 -08:00
* offset 664
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float fixedModeTiming;
/**
2015-02-11 14:04:02 -08:00
* offset 668
2015-01-27 16:05:24 -08:00
*/
2015-02-02 09:05:12 -08:00
specs_s specs;
/**
2015-02-11 14:04:02 -08:00
* offset 680
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int rpmHardLimit;
/**
2015-02-11 14:04:02 -08:00
* offset 684
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
injection_mode_e crankingInjectionMode;
/**
2015-02-11 14:04:02 -08:00
* offset 688
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
injection_mode_e injectionMode;
/**
* This field is the angle between Top Dead Center (TDC) and the first trigger event.
* Knowing this angle allows us to control timing and other angles in reference to TDC.
2015-02-11 14:04:02 -08:00
* offset 692
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float globalTriggerAngleOffset;
/**
* This parameter holds the coefficient of input voltage dividers
2015-02-11 14:04:02 -08:00
* offset 696
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float analogInputDividerCoefficient;
/**
* This setting controls which algorithm is used for ENGINE LOAD
2015-02-11 14:04:02 -08:00
* offset 700
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
engine_load_mode_e algorithm;
/**
2015-02-11 14:04:02 -08:00
* offset 704
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float vbattDividerCoeff;
/**
* Cooling fan turn-on temperature threshold, in Celsuis
2015-02-11 14:04:02 -08:00
* offset 708
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float fanOnTemperature;
/**
* Cooling fan turn-off temperature threshold, in Celsuis
2015-02-11 14:04:02 -08:00
* offset 712
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float fanOffTemperature;
/**
2015-02-11 14:04:02 -08:00
* offset 716
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
brain_pin_e vehicleSpeedSensorInputPin;
/**
* This coefficient translates vehicle speed input frequency (in Hz) into vehicle speed, km/h
2015-02-11 14:04:02 -08:00
* offset 720
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float vehicleSpeedCoef;
/**
2015-02-11 14:04:02 -08:00
* offset 724
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
can_nbc_e canNbcType;
/**
2015-02-11 14:04:02 -08:00
* offset 728
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int canSleepPeriod;
/**
2015-02-11 14:04:02 -08:00
* offset 732
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
ignition_mode_e ignitionMode;
/**
* todo: refactor this, see operation_mode_e
2015-02-11 14:04:02 -08:00
* offset 736
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float rpmMultiplier;
/**
2015-02-11 14:04:02 -08:00
* offset 740
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
display_mode_e displayMode;
/**
2015-02-11 14:04:02 -08:00
* offset 744
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
log_format_e logFormat;
/**
2015-02-11 14:04:02 -08:00
* offset 748
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int firmwareVersion;
/**
2015-02-11 14:04:02 -08:00
* offset 752
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int HD44780width;
/**
2015-02-11 14:04:02 -08:00
* offset 756
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int HD44780height;
/**
2015-02-11 14:04:02 -08:00
* offset 760
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
adc_channel_e tpsAdcChannel;
/**
2015-02-11 14:04:02 -08:00
* offset 764
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int overrideCrankingIgnition;
/**
2015-02-11 14:04:02 -08:00
* offset 768
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int analogChartFrequency;
/**
2015-02-11 14:04:02 -08:00
* offset 772
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
trigger_config_s trigger;
/**
2015-02-11 14:04:02 -08:00
* offset 800
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
spi_device_e hip9011SpiDevice;
/**
2015-02-11 14:04:02 -08:00
* offset 804
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
adc_channel_e vbattAdcChannel;
/**
2015-02-11 14:04:02 -08:00
* offset 808
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float globalFuelCorrection;
/**
* todo: merge with channel settings, use full-scale Thermistor!
2015-02-11 14:04:02 -08:00
* offset 812
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
adc_channel_e cltAdcChannel;
/**
2015-02-11 14:04:02 -08:00
* offset 816
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
adc_channel_e iatAdcChannel;
/**
2015-02-11 14:04:02 -08:00
* offset 820
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
adc_channel_e mafAdcChannel;
/**
* @see hasAfrSensor
2015-02-11 14:04:02 -08:00
* offset 824
2015-01-27 16:05:24 -08:00
*/
2015-01-28 17:06:25 -08:00
afr_sensor_s afr;
2015-01-27 14:04:04 -08:00
/**
* this is about deciding when the injector starts it's squirt
2015-02-11 14:04:02 -08:00
* offset 844
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float injectionAngle;
/**
2015-02-11 14:04:02 -08:00
* offset 848
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float crankingTimingAngle;
/**
2015-02-11 14:04:02 -08:00
* offset 852
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float diffLoadEnrichmentCoef;
/**
* @see hasBaroSensor
2015-02-11 14:04:02 -08:00
* offset 856
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
air_pressure_sensor_config_s baroSensor;
/**
2015-02-11 14:04:02 -08:00
* offset 872
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
board_configuration_s bc;
/**
* @see isMapAveragingEnabled
2015-02-11 14:04:02 -08:00
offset 4876 bit 0 */
2015-01-28 16:06:39 -08:00
bool_t hasMapSensor : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4876 bit 1 */
2015-01-28 16:06:39 -08:00
bool_t hasIatSensor : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4876 bit 2 */
2015-01-28 16:06:39 -08:00
bool_t hasBaroSensor : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4876 bit 3 */
2015-01-28 16:06:39 -08:00
bool_t hasAfrSensor : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4876 bit 4 */
2015-01-28 16:06:39 -08:00
bool_t useConstantDwellDuringCranking : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4876 bit 5 */
2015-01-28 16:06:39 -08:00
bool_t isDigitalChartEnabled : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4876 bit 6 */
2015-01-28 16:06:39 -08:00
bool_t isCanEnabled : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4876 bit 7 */
2015-01-28 16:06:39 -08:00
bool_t hasCltSensor : 1;
2015-01-27 14:04:04 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4876 bit 8 */
2015-01-28 16:06:39 -08:00
bool_t canReadEnabled : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4876 bit 9 */
2015-01-28 16:06:39 -08:00
bool_t canWriteEnabled : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4876 bit 10 */
2015-01-28 16:06:39 -08:00
bool_t hasVehicleSpeedSensor : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4876 bit 11 */
2015-01-28 16:06:39 -08:00
bool_t isJoystickEnabled : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4876 bit 12 */
2015-01-28 16:06:39 -08:00
bool_t isGpsEnabled : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4876 bit 13 */
2015-01-28 16:06:39 -08:00
bool_t hasMafSensor : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4876 bit 14 */
2015-01-28 16:06:39 -08:00
bool_t hasTpsSensor : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
* offset 4880
2015-01-27 14:04:04 -08:00
*/
adc_channel_e hipOutputChannel;
/**
2015-02-11 14:04:02 -08:00
* offset 4884
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
idle_mode_e idleMode;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4888 bit 0 */
2015-01-28 16:06:39 -08:00
bool_t isInjectionEnabled : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4888 bit 1 */
2015-01-28 16:06:39 -08:00
bool_t isIgnitionEnabled : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4888 bit 2 */
2015-01-28 16:06:39 -08:00
bool_t isCylinderCleanupEnabled : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4888 bit 3 */
2015-01-28 16:06:39 -08:00
bool_t secondTriggerChannelEnabled : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4888 bit 4 */
2015-02-02 21:04:02 -08:00
bool_t needSecondTriggerInputDeprecated : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4888 bit 5 */
2015-01-28 16:06:39 -08:00
bool_t isMapAveragingEnabled : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4888 bit 6 */
2015-01-28 16:06:39 -08:00
bool_t isMilEnabled : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4888 bit 7 */
2015-01-28 16:06:39 -08:00
bool_t isFuelPumpEnabled : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4888 bit 8 */
2015-01-28 16:06:39 -08:00
bool_t isTunerStudioEnabled : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4888 bit 9 */
2015-01-28 16:06:39 -08:00
bool_t isWaveAnalyzerEnabled : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4888 bit 10 */
2015-01-28 16:06:39 -08:00
bool_t isIdleThreadEnabled : 1;
2015-01-27 16:05:24 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4888 bit 11 */
2015-01-28 16:06:39 -08:00
bool_t isPrintTriggerSynchDetails : 1;
2015-01-27 14:04:04 -08:00
/**
* 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
2015-02-11 14:04:02 -08:00
offset 4888 bit 12 */
2015-01-28 16:06:39 -08:00
bool_t isManualSpinningMode : 1;
2015-01-31 05:07:08 -08:00
/**
2015-02-11 14:04:02 -08:00
offset 4888 bit 13 */
2015-01-31 05:07:08 -08:00
bool_t twoWireBatch : 1;
2015-01-27 14:04:04 -08:00
/**
2015-02-11 14:04:02 -08:00
* offset 4892
2015-01-27 16:05:24 -08:00
*/
2015-02-02 09:05:12 -08:00
uint32_t digitalChartSize;
2015-01-27 14:04:04 -08:00
/**
2015-02-11 14:04:02 -08:00
* offset 4896
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float crankingFuelCoef[CRANKING_CURVE_SIZE];
/**
2015-02-11 14:04:02 -08:00
* offset 4928
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float crankingFuelBins[CRANKING_CURVE_SIZE];
/**
2015-02-11 14:04:02 -08:00
* offset 4960
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float crankingCycleCoef[CRANKING_CURVE_SIZE];
/**
2015-02-11 14:04:02 -08:00
* offset 4992
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float crankingCycleBins[CRANKING_CURVE_SIZE];
/**
2015-02-11 14:04:02 -08:00
* offset 5024
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float ignitionDwellForCrankingMs;
/**
2015-02-11 14:04:02 -08:00
* offset 5028
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int targetIdleRpm;
/**
* A/C button input handled as analog input
2015-02-11 14:04:02 -08:00
* offset 5032
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
adc_channel_e acSwitchAdc;
/**
2015-02-11 14:04:02 -08:00
* offset 5036
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int ignMathCalculateAtIndex;
/**
2015-02-11 14:04:02 -08:00
* offset 5040
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int16_t acCutoffLowRpm;
/**
2015-02-11 14:04:02 -08:00
* offset 5042
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int16_t acCutoffHighRpm;
/**
2015-02-11 14:04:02 -08:00
* offset 5044
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int16_t acIdleRpmBump;
/**
2015-02-11 14:04:02 -08:00
* offset 5046
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int16_t unusedShort;
/**
2015-02-11 14:04:02 -08:00
* offset 5048
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
adc_channel_e vRefAdcChannel;
/**
2015-02-11 14:04:02 -08:00
* offset 5052
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float knockDetectionWindowStart;
/**
2015-02-11 14:04:02 -08:00
* offset 5056
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float knockDetectionWindowEnd;
/**
* Cylinder diameter, in mm.
2015-02-11 14:04:02 -08:00
* offset 5060
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float cylinderBore;
/**
* Some vehicles have a switch to indicate that clutch pedal is all the way up
2015-02-11 14:04:02 -08:00
* offset 5064
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
brain_pin_e clutchUpPin;
/**
2015-02-11 14:04:02 -08:00
* offset 5068
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
pin_input_mode_e clutchUpPinMode;
/**
2015-02-11 14:04:02 -08:00
* offset 5072
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
float hipThreshold;
/**
2015-02-11 14:04:02 -08:00
* offset 5076
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
brain_pin_e fsioInputs[LE_COMMAND_COUNT];
/**
2015-02-11 14:04:02 -08:00
* offset 5140
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
pin_input_mode_e fsioInputModes[LE_COMMAND_COUNT];
/**
2015-02-11 14:04:02 -08:00
* offset 5204
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
int unused3[149];
/**
2015-02-11 14:04:02 -08:00
* offset 5800
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
le_formula_t timingMultiplier;
/**
2015-02-11 14:04:02 -08:00
* offset 6000
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
le_formula_t timingAdditive;
/**
2015-02-11 14:04:02 -08:00
* offset 6200
*/
float mafDecoding[MAF_DECODING_COUNT];
/**
* offset 7224
*/
float mafDecodingBins[MAF_DECODING_COUNT];
/**
* offset 8248
*/
fuel_table_t fuelTable;
/**
* offset 9272
*/
float fuelLoadBins[FUEL_LOAD_COUNT];
/**
* RPM is float and not integer in order to use unified methods for interpolation
* offset 9336
*/
float fuelRpmBins[FUEL_RPM_COUNT];
/**
* offset 9400
*/
ignition_table_t ignitionTable;
/**
* offset 10424
*/
float ignitionLoadBins[IGN_LOAD_COUNT];
/**
* offset 10488
*/
float ignitionRpmBins[IGN_RPM_COUNT];
/**
* offset 10552
*/
ve_table_t veTable;
/**
* offset 11576
*/
float veLoadBins[FUEL_LOAD_COUNT];
/**
* offset 11640
*/
float veRpmBins[FUEL_RPM_COUNT];
/**
* offset 11704
*/
afr_table_t afrTable;
/**
* offset 12728
*/
float afrLoadBins[FUEL_LOAD_COUNT];
/**
* offset 12792
*/
float afrRpmBins[FUEL_RPM_COUNT];
/**
* offset 12856
2015-01-27 16:05:24 -08:00
*/
2015-01-27 14:04:04 -08:00
fuel_table_t injectionPhase;
2015-02-11 14:04:02 -08:00
/**
* offset 13880
*/
float injPhaseLoadBins[FUEL_LOAD_COUNT];
/**
* offset 13944
*/
float injPhaseRpmBins[FUEL_RPM_COUNT];
/**
* offset 14008
*/
ve_table_t ve2Table;
/**
* offset 15032
*/
float ve2LoadBins[FUEL_LOAD_COUNT];
/**
* offset 15096
*/
float ve2RpmBins[FUEL_RPM_COUNT];
/** total size 15160*/
2015-01-27 14:04:04 -08:00
} engine_configuration_s;
2015-01-27 16:05:24 -08:00
// end
2015-02-11 14:04:02 -08:00
// this section was generated by config_definition.jar on Wed Feb 11 16:24:32 EST 2015