stub config for lambda protection
(cherry picked from commit 07f0360dd9d0aa6cb288657d11acf46775513c6c)
This commit is contained in:
parent
47f4eb19dc
commit
84efe441af
|
@ -27,8 +27,8 @@ struct Status {
|
|||
uint8_t fuelPump : 1;
|
||||
uint8_t checkEngine : 1;
|
||||
uint8_t o2Heater : 1;
|
||||
uint8_t lambdaProtectActive : 1;
|
||||
|
||||
uint8_t pad6 : 1;
|
||||
uint8_t pad7 : 1;
|
||||
uint8_t pad8 : 1;
|
||||
|
||||
|
@ -47,6 +47,9 @@ static void populateFrame(Status& msg) {
|
|||
msg.checkEngine = enginePins.checkEnginePin.getLogicValue();
|
||||
msg.o2Heater = enginePins.o2heater.getLogicValue();
|
||||
|
||||
// TODO: https://github.com/FOME-Tech/fome-fw/issues/75
|
||||
msg.lambdaProtectActive = false;
|
||||
|
||||
msg.gear = Sensor::getOrZero(SensorType::DetectedGear);
|
||||
}
|
||||
|
||||
|
|
|
@ -54,6 +54,7 @@ BO_ 512 BASE0: 8 Vector__XXX
|
|||
SG_ FuelPumpAct : 34|1@1+ (1,0) [0|0] "" Vector__XXX
|
||||
SG_ CELAct : 35|1@1+ (1,0) [0|0] "" Vector__XXX
|
||||
SG_ EGOHeatAct : 36|1@1+ (1,0) [0|0] "" Vector__XXX
|
||||
SG_ LambdaProtectAct : 37|1@1+ (1,0) [0|0] "" Vector__XXX
|
||||
SG_ CurrentGear : 40|8@1+ (1,0) [0|0] "" Vector__XXX
|
||||
|
||||
BO_ 513 BASE1: 8 Vector__XXX
|
||||
|
@ -123,6 +124,7 @@ CM_ SG_ 512 MainRelayAct "Main Relay Active";
|
|||
CM_ SG_ 512 FuelPumpAct "Fuel Pump Output Active";
|
||||
CM_ SG_ 512 CELAct "Check Engine Light Active";
|
||||
CM_ SG_ 512 EGOHeatAct "EGO Heater Commanded On";
|
||||
CM_ SG_ 512 LambdaProtectAct "Lambda protection active (fault detected)";
|
||||
CM_ SG_ 512 CurrentGear "Current detected gear. 0 means neutral, 1 means first, etc.";
|
||||
CM_ SG_ 513 RPM "Current RPM";
|
||||
CM_ SG_ 513 IgnitionTiming "Current Ignition Timing. Positive is advance.";
|
||||
|
|
|
@ -720,7 +720,7 @@ bit is_enabled_spi_2
|
|||
|
||||
bit enabledStep1Limiter
|
||||
bit useTpicAdvancedMode
|
||||
bit unused760b12
|
||||
bit lambdaProtectionEnable
|
||||
bit verboseTLE8888
|
||||
bit enableVerboseCanTx;CAN broadcast using custom rusEFI protocol\nenable can_broadcast/disable can_broadcast
|
||||
bit etb1configured
|
||||
|
@ -1087,10 +1087,10 @@ int16_t tps2Max;Full throttle#2. tpsMax value as 10 bit ADC value. Not Voltage!\
|
|||
uint16_t autoscale multisparkDwell;This sets the dwell time for subsequent sparks. The main spark's dwell is set by the dwell table.;"ms", 0.001, 0, 0, 3, 2
|
||||
pid_s idleRpmPid;See cltIdleRpmBins
|
||||
float wwaeBeta;0 = No fuel settling on port walls 1 = All the fuel settling on port walls setting this to 0 disables the wall wetting enrichment. ;"Fraction", 1, 0, 0, 1, 2
|
||||
|
||||
|
||||
Gpio binarySerialTxPin;See also EFI_CONSOLE_RX_BRAIN_PIN
|
||||
Gpio binarySerialRxPin;
|
||||
|
||||
|
||||
Gpio[AUX_DIGITAL_VALVE_COUNT iterate] auxValves
|
||||
switch_input_pin_e tcuUpshiftButtonPin
|
||||
switch_input_pin_e tcuDownshiftButtonPin
|
||||
|
@ -1525,10 +1525,16 @@ pin_input_mode_e[LUA_DIGITAL_INPUT_COUNT iterate] luaDigitalInputPinModes;
|
|||
|
||||
switch_input_pin_e[RANGE_INPUT_COUNT iterate] tcu_rangeInput;
|
||||
pin_input_mode_e[RANGE_INPUT_COUNT iterate] tcu_rangeInputMode;
|
||||
|
||||
uint8_t autoscale lambdaProtectionMinRpm;;"RPM", 100, 0, 0, 25000, 0
|
||||
uint8_t autoscale lambdaProtectionMinLoad;;"", 10, 0, 0, 1000, 0
|
||||
uint8_t autoscale lambdaProtectionMinTps;;"", 1, 0, 0, 100, 0
|
||||
uint8_t autoscale lambdaProtectionTimeout;Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed;"s", 0.1, 0, 0, 10, 1
|
||||
|
||||
!
|
||||
! Just a shortcut to facilitate compatible configuration changes, i.e. a change which does not touch FLASH_DATA_VERSION and thus does not require manual tune migration
|
||||
!
|
||||
uint8_t[194] mainUnusedEnd;;"units", 1, 0, 0, 1, 0
|
||||
uint8_t[190] mainUnusedEnd;;"units", 1, 0, 0, 1, 0
|
||||
|
||||
! end of engine_configuration_s
|
||||
end_struct
|
||||
|
@ -1785,6 +1791,10 @@ uint8_t[6] tcu_rangePlus;;"level", 1, 0, 0, 3, 0
|
|||
uint8_t[6] tcu_rangeMinus;;"level", 1, 0, 0, 3, 0
|
||||
uint8_t[6] tcu_rangeLow;;"level", 1, 0, 0, 3, 0
|
||||
|
||||
uint8_t[4 x 4] autoscale lambdaMaxDeviationTable;;"lambda", 0.01, 0, 0, 1, 2
|
||||
uint16_t[4] lambdaMaxDeviationLoadBins;;"", 1, 0, 0, 1000, 0
|
||||
uint16_t[4] lambdaMaxDeviationRpmBins;;"RPM", 1, 0, 0, 18000, 0
|
||||
|
||||
end_struct
|
||||
|
||||
! Pedal Position Sensor
|
||||
|
|
|
@ -1233,6 +1233,12 @@ curve = rangeMatrix, "Range Switch Input Matrix"
|
|||
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
||||
upDownLabel = "(RICHER)", "(LEANER)"
|
||||
|
||||
table = lambdaMaxDeviationTableTbl, lambdaMaxDeviationTableMap, "Maximum Lambda Deviation Table", 1
|
||||
xyLabels = "RPM", ""
|
||||
xBins = lambdaMaxDeviationRpmBins, RPMValue
|
||||
yBins = lambdaMaxDeviationLoadBins, afrTableYAxis
|
||||
zBins = lambdaMaxDeviationTable
|
||||
|
||||
table = iacPidMultTbl, iacPidMultMap, "IAC PID Multiplier Table", 1
|
||||
; constant, variable
|
||||
xBins = iacPidMultRpmBins, RPMValue
|
||||
|
@ -1987,6 +1993,11 @@ menuDialog = main
|
|||
subMenu = hipFunction, "HIP9011 settings (knock sensor) (alpha version)" @@if_ts_show_hip9011
|
||||
subMenu = softwareKnock, "Software knock" @@if_ts_show_software_knock
|
||||
subMenu = maxKnockRetardTbl, "Max knock retard" @@if_ts_show_software_knock
|
||||
|
||||
; TODO: move lambdaProtection to the fuel menu once ready
|
||||
; https://github.com/FOME-Tech/fome-fw/issues/75
|
||||
subMenu = lambdaProtection, "Lambda Protection", 0, { isInjectionEnabled }
|
||||
|
||||
subMenu = std_separator
|
||||
|
||||
subMenu = std_separator
|
||||
|
@ -3572,6 +3583,20 @@ cmd_set_engine_type_default = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_
|
|||
panel = stftPartitionSettingsPower, {fuelClosedLoopCorrectionEnabled == 1}
|
||||
panel = stftPartitionSettingsOverrun, {fuelClosedLoopCorrectionEnabled == 1}
|
||||
|
||||
dialog = lambdaProtectionLeft, ""
|
||||
field = "Enable lambda protection", lambdaProtectionEnable
|
||||
field = "Check above load", lambdaProtectionMinLoad, { lambdaProtectionEnable }
|
||||
field = "Check above TPS", lambdaProtectionMinTps, { lambdaProtectionEnable }
|
||||
field = "Check above RPM", lambdaProtectionMinRpm, { lambdaProtectionEnable }
|
||||
field = "Check after delay", lambdaProtectionTimeout { lambdaProtectionEnable }
|
||||
|
||||
dialog = lambdaProtectionRight, "Lambda Difference Limit Table"
|
||||
panel = lambdaMaxDeviationTableTbl
|
||||
|
||||
dialog = lambdaProtection, "Lambda Protection", border
|
||||
panel = lambdaProtectionLeft, West
|
||||
panel = lambdaProtectionRight, East
|
||||
|
||||
dialog = vvtPidDialog0, "Configuration"
|
||||
field = "Activation Delay", vvtActivationDelayMs
|
||||
field = "Do not control below RPM", vvtControlMinRpm
|
||||
|
|
Loading…
Reference in New Issue