Auto-generated configs and docs

This commit is contained in:
GitHub gen-configs Action 2023-06-24 01:08:02 +00:00
parent 84efe441af
commit 76b2bb8149
96 changed files with 2067 additions and 444 deletions

View File

@ -1,4 +1,4 @@
// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on hellen_cypress_gen_config.bat integration/rusefi_config.txt Sat Jun 17 03:00:03 UTC 2023
// this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:12 UTC 2023
// by class com.rusefi.output.CHeaderConsumer
// begin
#pragma once
@ -1576,7 +1576,7 @@ struct engine_configuration_s {
bool useTpicAdvancedMode : 1 {};
/**
offset 724 bit 12 */
bool unused760b12 : 1 {};
bool lambdaProtectionEnable : 1 {};
/**
offset 724 bit 13 */
bool verboseTLE8888 : 1 {};
@ -4356,10 +4356,29 @@ struct engine_configuration_s {
*/
pin_input_mode_e tcu_rangeInputMode[RANGE_INPUT_COUNT];
/**
units
RPM
* offset 3968
*/
uint8_t mainUnusedEnd[194];
scaled_channel<uint8_t, 1, 100> lambdaProtectionMinRpm;
/**
* offset 3969
*/
scaled_channel<uint8_t, 1, 10> lambdaProtectionMinLoad;
/**
* offset 3970
*/
scaled_channel<uint8_t, 1, 1> lambdaProtectionMinTps;
/**
* Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed
s
* offset 3971
*/
scaled_channel<uint8_t, 10, 1> lambdaProtectionTimeout;
/**
units
* offset 3972
*/
uint8_t mainUnusedEnd[190];
/**
* need 4 byte alignment
units
@ -5254,13 +5273,27 @@ struct persistent_config_s {
*/
uint8_t tcu_rangeLow[6];
/**
* need 4 byte alignment
units
lambda
* offset 23434
*/
uint8_t alignmentFill_at_23434[2];
scaled_channel<uint8_t, 100, 1> lambdaMaxDeviationTable[4][4];
/**
* offset 23450
*/
uint16_t lambdaMaxDeviationLoadBins[4];
/**
RPM
* offset 23458
*/
uint16_t lambdaMaxDeviationRpmBins[4];
/**
* need 4 byte alignment
units
* offset 23466
*/
uint8_t alignmentFill_at_23466[2];
};
static_assert(sizeof(persistent_config_s) == 23436);
static_assert(sizeof(persistent_config_s) == 23468);
// end
// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on hellen_cypress_gen_config.bat integration/rusefi_config.txt Sat Jun 17 03:00:03 UTC 2023
// this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:12 UTC 2023

View File

@ -990,7 +990,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 23436
#define persistent_config_s_size 23468
#define pid_s_size 20
#define PidAutoTune_AutoTunerState_AUTOTUNER_OFF 0
#define PidAutoTune_AutoTunerState_CONVERGED 16
@ -1080,7 +1080,7 @@
#define SentEtbType_NONE 0
#define show_Frankenso_presets true
#define show_test_presets true
#define SIGNATURE_HASH 2969982063
#define SIGNATURE_HASH 269900760
#define SIMULATOR_TUNE_BIN_FILE_NAME "generated/simulator_tune_image.bin"
#define spi_device_e_auto_enum 0="SPI_NONE",1="SPI_DEVICE_1",2="SPI_DEVICE_2",3="SPI_DEVICE_3",4="SPI_DEVICE_4"
#define spi_device_e_SPI_DEVICE_1 1
@ -1126,7 +1126,7 @@
#define TOOTH_PACKET_SIZE 2
#define TOP_DEAD_CENTER_MESSAGE "r"
#define TORQUE_CURVE_SIZE 6
#define TOTAL_CONFIG_SIZE 23436
#define TOTAL_CONFIG_SIZE 23468
#define TPS_2_BYTE_PACKING_MULT 100
#define TPS_TPS_ACCEL_CLT_CORR_TABLE 4
#define TPS_TPS_ACCEL_TABLE 8
@ -1359,7 +1359,7 @@
#define ts_show_vbatt true
#define ts_show_vr_threshold_2 true
#define ts_show_vr_threshold_all true
#define TS_SIGNATURE "rusEFI master.2023.06.24.cypress.2969982063"
#define TS_SIGNATURE "rusEFI master.2023.06.24.cypress.269900760"
#define TS_SINGLE_WRITE_COMMAND 'W'
#define TS_SINGLE_WRITE_COMMAND_char W
#define TS_TEST_COMMAND 't'

View File

@ -1,4 +1,4 @@
// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Sat Jun 17 03:00:02 UTC 2023
// this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:11 UTC 2023
// by class com.rusefi.output.CHeaderConsumer
// begin
#pragma once
@ -1576,7 +1576,7 @@ struct engine_configuration_s {
bool useTpicAdvancedMode : 1 {};
/**
offset 724 bit 12 */
bool unused760b12 : 1 {};
bool lambdaProtectionEnable : 1 {};
/**
offset 724 bit 13 */
bool verboseTLE8888 : 1 {};
@ -4356,10 +4356,29 @@ struct engine_configuration_s {
*/
pin_input_mode_e tcu_rangeInputMode[RANGE_INPUT_COUNT];
/**
units
RPM
* offset 3968
*/
uint8_t mainUnusedEnd[194];
scaled_channel<uint8_t, 1, 100> lambdaProtectionMinRpm;
/**
* offset 3969
*/
scaled_channel<uint8_t, 1, 10> lambdaProtectionMinLoad;
/**
* offset 3970
*/
scaled_channel<uint8_t, 1, 1> lambdaProtectionMinTps;
/**
* Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed
s
* offset 3971
*/
scaled_channel<uint8_t, 10, 1> lambdaProtectionTimeout;
/**
units
* offset 3972
*/
uint8_t mainUnusedEnd[190];
/**
* need 4 byte alignment
units
@ -5254,13 +5273,27 @@ struct persistent_config_s {
*/
uint8_t tcu_rangeLow[6];
/**
* need 4 byte alignment
units
lambda
* offset 23434
*/
uint8_t alignmentFill_at_23434[2];
scaled_channel<uint8_t, 100, 1> lambdaMaxDeviationTable[4][4];
/**
* offset 23450
*/
uint16_t lambdaMaxDeviationLoadBins[4];
/**
RPM
* offset 23458
*/
uint16_t lambdaMaxDeviationRpmBins[4];
/**
* need 4 byte alignment
units
* offset 23466
*/
uint8_t alignmentFill_at_23466[2];
};
static_assert(sizeof(persistent_config_s) == 23436);
static_assert(sizeof(persistent_config_s) == 23468);
// end
// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Sat Jun 17 03:00:02 UTC 2023
// this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:11 UTC 2023

View File

@ -990,7 +990,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 23436
#define persistent_config_s_size 23468
#define pid_s_size 20
#define PidAutoTune_AutoTunerState_AUTOTUNER_OFF 0
#define PidAutoTune_AutoTunerState_CONVERGED 16
@ -1080,7 +1080,7 @@
#define SentEtbType_NONE 0
#define show_Frankenso_presets true
#define show_test_presets true
#define SIGNATURE_HASH 3654416035
#define SIGNATURE_HASH 2025978132
#define SIMULATOR_TUNE_BIN_FILE_NAME "generated/simulator_tune_image.bin"
#define spi_device_e_auto_enum 0="SPI_NONE",1="SPI_DEVICE_1",2="SPI_DEVICE_2",3="SPI_DEVICE_3",4="SPI_DEVICE_4"
#define spi_device_e_SPI_DEVICE_1 1
@ -1126,7 +1126,7 @@
#define TOOTH_PACKET_SIZE 2
#define TOP_DEAD_CENTER_MESSAGE "r"
#define TORQUE_CURVE_SIZE 6
#define TOTAL_CONFIG_SIZE 23436
#define TOTAL_CONFIG_SIZE 23468
#define TPS_2_BYTE_PACKING_MULT 100
#define TPS_TPS_ACCEL_CLT_CORR_TABLE 4
#define TPS_TPS_ACCEL_TABLE 8
@ -1359,7 +1359,7 @@
#define ts_show_vbatt true
#define ts_show_vr_threshold_2 true
#define ts_show_vr_threshold_all true
#define TS_SIGNATURE "rusEFI master.2023.06.24.kin.3654416035"
#define TS_SIGNATURE "rusEFI master.2023.06.24.kin.2025978132"
#define TS_SINGLE_WRITE_COMMAND 'W'
#define TS_SINGLE_WRITE_COMMAND_char W
#define TS_TEST_COMMAND 't'

View File

@ -1,4 +1,4 @@
// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on config/boards/subaru_eg33/config/gen_subaru_config.sh integration/rusefi_config.txt Sat Jun 17 03:00:04 UTC 2023
// this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:13 UTC 2023
// by class com.rusefi.output.CHeaderConsumer
// begin
#pragma once
@ -1576,7 +1576,7 @@ struct engine_configuration_s {
bool useTpicAdvancedMode : 1 {};
/**
offset 724 bit 12 */
bool unused760b12 : 1 {};
bool lambdaProtectionEnable : 1 {};
/**
offset 724 bit 13 */
bool verboseTLE8888 : 1 {};
@ -4356,10 +4356,29 @@ struct engine_configuration_s {
*/
pin_input_mode_e tcu_rangeInputMode[RANGE_INPUT_COUNT];
/**
units
RPM
* offset 3968
*/
uint8_t mainUnusedEnd[194];
scaled_channel<uint8_t, 1, 100> lambdaProtectionMinRpm;
/**
* offset 3969
*/
scaled_channel<uint8_t, 1, 10> lambdaProtectionMinLoad;
/**
* offset 3970
*/
scaled_channel<uint8_t, 1, 1> lambdaProtectionMinTps;
/**
* Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed
s
* offset 3971
*/
scaled_channel<uint8_t, 10, 1> lambdaProtectionTimeout;
/**
units
* offset 3972
*/
uint8_t mainUnusedEnd[190];
/**
* need 4 byte alignment
units
@ -5254,13 +5273,27 @@ struct persistent_config_s {
*/
uint8_t tcu_rangeLow[6];
/**
* need 4 byte alignment
units
lambda
* offset 23434
*/
uint8_t alignmentFill_at_23434[2];
scaled_channel<uint8_t, 100, 1> lambdaMaxDeviationTable[4][4];
/**
* offset 23450
*/
uint16_t lambdaMaxDeviationLoadBins[4];
/**
RPM
* offset 23458
*/
uint16_t lambdaMaxDeviationRpmBins[4];
/**
* need 4 byte alignment
units
* offset 23466
*/
uint8_t alignmentFill_at_23466[2];
};
static_assert(sizeof(persistent_config_s) == 23436);
static_assert(sizeof(persistent_config_s) == 23468);
// end
// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on config/boards/subaru_eg33/config/gen_subaru_config.sh integration/rusefi_config.txt Sat Jun 17 03:00:04 UTC 2023
// this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:13 UTC 2023

View File

@ -939,7 +939,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 23436
#define persistent_config_s_size 23468
#define pid_s_size 20
#define PidAutoTune_AutoTunerState_AUTOTUNER_OFF 0
#define PidAutoTune_AutoTunerState_CONVERGED 16
@ -1031,7 +1031,7 @@
#define show_Frankenso_presets false
#define show_Proteus_presets false
#define show_test_presets false
#define SIGNATURE_HASH 3062600568
#define SIGNATURE_HASH 396074191
#define SIMULATOR_TUNE_BIN_FILE_NAME "generated/simulator_tune_image.bin"
#define spi_device_e_auto_enum 0="SPI_NONE",1="SPI_DEVICE_1",2="SPI_DEVICE_2",3="SPI_DEVICE_3",4="SPI_DEVICE_4"
#define spi_device_e_SPI_DEVICE_1 1
@ -1078,7 +1078,7 @@
#define TOOTH_PACKET_SIZE 2
#define TOP_DEAD_CENTER_MESSAGE "r"
#define TORQUE_CURVE_SIZE 6
#define TOTAL_CONFIG_SIZE 23436
#define TOTAL_CONFIG_SIZE 23468
#define TPS_2_BYTE_PACKING_MULT 100
#define TPS_TPS_ACCEL_CLT_CORR_TABLE 4
#define TPS_TPS_ACCEL_TABLE 8
@ -1311,7 +1311,7 @@
#define ts_show_vbatt true
#define ts_show_vr_threshold_2 true
#define ts_show_vr_threshold_all true
#define TS_SIGNATURE "rusEFI master.2023.06.24.subaru_eg33_f7.3062600568"
#define TS_SIGNATURE "rusEFI master.2023.06.24.subaru_eg33_f7.396074191"
#define TS_SINGLE_WRITE_COMMAND 'W'
#define TS_SINGLE_WRITE_COMMAND_char W
#define TS_TEST_COMMAND 't'

View File

@ -1,4 +1,4 @@
// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Jun 17 03:00:53 UTC 2023
// this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:08:00 UTC 2023
// by class com.rusefi.output.CHeaderConsumer
// begin
#pragma once
@ -1576,7 +1576,7 @@ struct engine_configuration_s {
bool useTpicAdvancedMode : 1 {};
/**
offset 724 bit 12 */
bool unused760b12 : 1 {};
bool lambdaProtectionEnable : 1 {};
/**
offset 724 bit 13 */
bool verboseTLE8888 : 1 {};
@ -4356,10 +4356,29 @@ struct engine_configuration_s {
*/
pin_input_mode_e tcu_rangeInputMode[RANGE_INPUT_COUNT];
/**
units
RPM
* offset 3968
*/
uint8_t mainUnusedEnd[194];
scaled_channel<uint8_t, 1, 100> lambdaProtectionMinRpm;
/**
* offset 3969
*/
scaled_channel<uint8_t, 1, 10> lambdaProtectionMinLoad;
/**
* offset 3970
*/
scaled_channel<uint8_t, 1, 1> lambdaProtectionMinTps;
/**
* Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed
s
* offset 3971
*/
scaled_channel<uint8_t, 10, 1> lambdaProtectionTimeout;
/**
units
* offset 3972
*/
uint8_t mainUnusedEnd[190];
/**
* need 4 byte alignment
units
@ -5254,13 +5273,27 @@ struct persistent_config_s {
*/
uint8_t tcu_rangeLow[6];
/**
* need 4 byte alignment
units
lambda
* offset 23434
*/
uint8_t alignmentFill_at_23434[2];
scaled_channel<uint8_t, 100, 1> lambdaMaxDeviationTable[4][4];
/**
* offset 23450
*/
uint16_t lambdaMaxDeviationLoadBins[4];
/**
RPM
* offset 23458
*/
uint16_t lambdaMaxDeviationRpmBins[4];
/**
* need 4 byte alignment
units
* offset 23466
*/
uint8_t alignmentFill_at_23466[2];
};
static_assert(sizeof(persistent_config_s) == 23436);
static_assert(sizeof(persistent_config_s) == 23468);
// end
// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Jun 17 03:00:53 UTC 2023
// this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:08:00 UTC 2023

View File

@ -990,7 +990,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 23436
#define persistent_config_s_size 23468
#define pid_s_size 20
#define PidAutoTune_AutoTunerState_AUTOTUNER_OFF 0
#define PidAutoTune_AutoTunerState_CONVERGED 16
@ -1080,7 +1080,7 @@
#define SentEtbType_NONE 0
#define show_Frankenso_presets true
#define show_test_presets true
#define SIGNATURE_HASH 3978602650
#define SIGNATURE_HASH 1278519085
#define SIMULATOR_TUNE_BIN_FILE_NAME "generated/simulator_tune_image.bin"
#define spi_device_e_auto_enum 0="SPI_NONE",1="SPI_DEVICE_1",2="SPI_DEVICE_2",3="SPI_DEVICE_3",4="SPI_DEVICE_4"
#define spi_device_e_SPI_DEVICE_1 1
@ -1126,7 +1126,7 @@
#define TOOTH_PACKET_SIZE 2
#define TOP_DEAD_CENTER_MESSAGE "r"
#define TORQUE_CURVE_SIZE 6
#define TOTAL_CONFIG_SIZE 23436
#define TOTAL_CONFIG_SIZE 23468
#define TPS_2_BYTE_PACKING_MULT 100
#define TPS_TPS_ACCEL_CLT_CORR_TABLE 4
#define TPS_TPS_ACCEL_TABLE 8
@ -1359,7 +1359,7 @@
#define ts_show_vbatt true
#define ts_show_vr_threshold_2 true
#define ts_show_vr_threshold_all true
#define TS_SIGNATURE "rusEFI master.2023.06.24.f407-discovery.3978602650"
#define TS_SIGNATURE "rusEFI master.2023.06.24.f407-discovery.1278519085"
#define TS_SINGLE_WRITE_COMMAND 'W'
#define TS_SINGLE_WRITE_COMMAND_char W
#define TS_TEST_COMMAND 't'

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 4124892373
#define TS_SIGNATURE "rusEFI master.2023.06.24.48way.4124892373"
#define SIGNATURE_HASH 1422709602
#define TS_SIGNATURE "rusEFI master.2023.06.24.48way.1422709602"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 3382130794
#define TS_SIGNATURE "rusEFI master.2023.06.24.alphax-2chan.3382130794"
#define SIGNATURE_HASH 1753692125
#define TS_SIGNATURE "rusEFI master.2023.06.24.alphax-2chan.1753692125"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 2456261766
#define TS_SIGNATURE "rusEFI master.2023.06.24.alphax-4chan.2456261766"
#define SIGNATURE_HASH 863476529
#define TS_SIGNATURE "rusEFI master.2023.06.24.alphax-4chan.863476529"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 2456261766
#define TS_SIGNATURE "rusEFI master.2023.06.24.alphax-4chan_f7.2456261766"
#define SIGNATURE_HASH 863476529
#define TS_SIGNATURE "rusEFI master.2023.06.24.alphax-4chan_f7.863476529"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 1459699461
#define TS_SIGNATURE "rusEFI master.2023.06.24.alphax-8chan.1459699461"
#define SIGNATURE_HASH 4128321714
#define TS_SIGNATURE "rusEFI master.2023.06.24.alphax-8chan.4128321714"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 1459699461
#define TS_SIGNATURE "rusEFI master.2023.06.24.alphax-8chan_f7.1459699461"
#define SIGNATURE_HASH 4128321714
#define TS_SIGNATURE "rusEFI master.2023.06.24.alphax-8chan_f7.4128321714"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 2915869000
#define TS_SIGNATURE "rusEFI master.2023.06.24.atlas.2915869000"
#define SIGNATURE_HASH 215789311
#define TS_SIGNATURE "rusEFI master.2023.06.24.atlas.215789311"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 2300664281
#define TS_SIGNATURE "rusEFI master.2023.06.24.core8.2300664281"
#define SIGNATURE_HASH 674322030
#define TS_SIGNATURE "rusEFI master.2023.06.24.core8.674322030"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on hellen_cypress_gen_config.bat by SignatureConsumer
//
#define SIGNATURE_HASH 2969982063
#define TS_SIGNATURE "rusEFI master.2023.06.24.cypress.2969982063"
#define SIGNATURE_HASH 269900760
#define TS_SIGNATURE "rusEFI master.2023.06.24.cypress.269900760"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 3978602650
#define TS_SIGNATURE "rusEFI master.2023.06.24.f407-discovery.3978602650"
#define SIGNATURE_HASH 1278519085
#define TS_SIGNATURE "rusEFI master.2023.06.24.f407-discovery.1278519085"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 2969982063
#define TS_SIGNATURE "rusEFI master.2023.06.24.f429-discovery.2969982063"
#define SIGNATURE_HASH 269900760
#define TS_SIGNATURE "rusEFI master.2023.06.24.f429-discovery.269900760"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 2471802021
#define TS_SIGNATURE "rusEFI master.2023.06.24.frankenso_na6.2471802021"
#define SIGNATURE_HASH 843365138
#define TS_SIGNATURE "rusEFI master.2023.06.24.frankenso_na6.843365138"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 1711151398
#define TS_SIGNATURE "rusEFI master.2023.06.24.harley81.1711151398"
#define SIGNATURE_HASH 3303937681
#define TS_SIGNATURE "rusEFI master.2023.06.24.harley81.3303937681"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 32826015
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen-gm-e67.32826015"
#define SIGNATURE_HASH 2699357480
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen-gm-e67.2699357480"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 3592853179
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen-honda-k.3592853179"
#define SIGNATURE_HASH 2000066828
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen-honda-k.2000066828"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 2357217801
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen-nb1.2357217801"
#define SIGNATURE_HASH 764429758
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen-nb1.764429758"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 3681301293
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen121nissan.3681301293"
#define SIGNATURE_HASH 2054962330
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen121nissan.2054962330"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 628640684
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen121vag.628640684"
#define SIGNATURE_HASH 2221425691
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen121vag.2221425691"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 2423559161
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen128.2423559161"
#define SIGNATURE_HASH 828677198
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen128.828677198"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 3385106048
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen154hyundai.3385106048"
#define SIGNATURE_HASH 1758761271
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen154hyundai.1758761271"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 3712111170
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen72.3712111170"
#define SIGNATURE_HASH 2085772789
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen72.2085772789"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 1180094594
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen81.1180094594"
#define SIGNATURE_HASH 3880181557
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen81.3880181557"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 1738674782
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen88bmw.1738674782"
#define SIGNATURE_HASH 3333561833
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellen88bmw.3333561833"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 1510721611
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellenNA6.1510721611"
#define SIGNATURE_HASH 4212901884
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellenNA6.4212901884"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 3973077830
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellenNA8_96.3973077830"
#define SIGNATURE_HASH 1304450289
#define TS_SIGNATURE "rusEFI master.2023.06.24.hellenNA8_96.1304450289"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on kinetis_gen_config.bat by SignatureConsumer
//
#define SIGNATURE_HASH 3654416035
#define TS_SIGNATURE "rusEFI master.2023.06.24.kin.3654416035"
#define SIGNATURE_HASH 2025978132
#define TS_SIGNATURE "rusEFI master.2023.06.24.kin.2025978132"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 2872920161
#define TS_SIGNATURE "rusEFI master.2023.06.24.m74_9.2872920161"
#define SIGNATURE_HASH 170739670
#define TS_SIGNATURE "rusEFI master.2023.06.24.m74_9.170739670"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 2415015656
#define TS_SIGNATURE "rusEFI master.2023.06.24.mre_f4.2415015656"
#define SIGNATURE_HASH 786577759
#define TS_SIGNATURE "rusEFI master.2023.06.24.mre_f4.786577759"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 2415015656
#define TS_SIGNATURE "rusEFI master.2023.06.24.mre_f7.2415015656"
#define SIGNATURE_HASH 786577759
#define TS_SIGNATURE "rusEFI master.2023.06.24.mre_f7.786577759"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 2969982063
#define TS_SIGNATURE "rusEFI master.2023.06.24.nucleo_f429.2969982063"
#define SIGNATURE_HASH 269900760
#define TS_SIGNATURE "rusEFI master.2023.06.24.nucleo_f429.269900760"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 2969982063
#define TS_SIGNATURE "rusEFI master.2023.06.24.nucleo_f767.2969982063"
#define SIGNATURE_HASH 269900760
#define TS_SIGNATURE "rusEFI master.2023.06.24.nucleo_f767.269900760"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 2969982063
#define TS_SIGNATURE "rusEFI master.2023.06.24.nucleo_h743.2969982063"
#define SIGNATURE_HASH 269900760
#define TS_SIGNATURE "rusEFI master.2023.06.24.nucleo_h743.269900760"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 2173868543
#define TS_SIGNATURE "rusEFI master.2023.06.24.prometheus_405.2173868543"
#define SIGNATURE_HASH 545429064
#define TS_SIGNATURE "rusEFI master.2023.06.24.prometheus_405.545429064"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 2173868543
#define TS_SIGNATURE "rusEFI master.2023.06.24.prometheus_469.2173868543"
#define SIGNATURE_HASH 545429064
#define TS_SIGNATURE "rusEFI master.2023.06.24.prometheus_469.545429064"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 4177996769
#define TS_SIGNATURE "rusEFI master.2023.06.24.proteus_f4.4177996769"
#define SIGNATURE_HASH 1477911638
#define TS_SIGNATURE "rusEFI master.2023.06.24.proteus_f4.1477911638"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 4177996769
#define TS_SIGNATURE "rusEFI master.2023.06.24.proteus_f7.4177996769"
#define SIGNATURE_HASH 1477911638
#define TS_SIGNATURE "rusEFI master.2023.06.24.proteus_f7.1477911638"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 4177996769
#define TS_SIGNATURE "rusEFI master.2023.06.24.proteus_h7.4177996769"
#define SIGNATURE_HASH 1477911638
#define TS_SIGNATURE "rusEFI master.2023.06.24.proteus_h7.1477911638"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 3579687219
#define TS_SIGNATURE "rusEFI master.2023.06.24.s105.3579687219"
#define SIGNATURE_HASH 1951252100
#define TS_SIGNATURE "rusEFI master.2023.06.24.s105.1951252100"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 1536637003
#define TS_SIGNATURE "rusEFI master.2023.06.24.small-can.1536637003"
#define SIGNATURE_HASH 4203165692
#define TS_SIGNATURE "rusEFI master.2023.06.24.small-can.4203165692"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on config/boards/subaru_eg33/config/gen_subaru_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 3062600568
#define TS_SIGNATURE "rusEFI master.2023.06.24.subaru_eg33_f7.3062600568"
#define SIGNATURE_HASH 396074191
#define TS_SIGNATURE "rusEFI master.2023.06.24.subaru_eg33_f7.396074191"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 2969982063
#define TS_SIGNATURE "rusEFI master.2023.06.24.t-b-g.2969982063"
#define SIGNATURE_HASH 269900760
#define TS_SIGNATURE "rusEFI master.2023.06.24.t-b-g.269900760"

View File

@ -2,5 +2,5 @@
// was generated automatically by rusEFI tool config_definition.jar based on gen_config.sh by SignatureConsumer
//
#define SIGNATURE_HASH 1000896589
#define TS_SIGNATURE "rusEFI master.2023.06.24.tdg-pdm8.1000896589"
#define SIGNATURE_HASH 2595780602
#define TS_SIGNATURE "rusEFI master.2023.06.24.tdg-pdm8.2595780602"

View File

@ -409,6 +409,9 @@ float getConfigValueByName(const char *name) {
// useTpicAdvancedMode
case -1037977635:
return engineConfiguration->useTpicAdvancedMode;
// lambdaProtectionEnable
case 1451020756:
return engineConfiguration->lambdaProtectionEnable;
// verboseTLE8888
case -1251676000:
return engineConfiguration->verboseTLE8888;
@ -1594,6 +1597,18 @@ float getConfigValueByName(const char *name) {
// iacByTpsDecayTime
case 1742748825:
return engineConfiguration->iacByTpsDecayTime;
// lambdaProtectionMinRpm
case 1758659040:
return engineConfiguration->lambdaProtectionMinRpm;
// lambdaProtectionMinLoad
case -2094010831:
return engineConfiguration->lambdaProtectionMinLoad;
// lambdaProtectionMinTps
case 1758661224:
return engineConfiguration->lambdaProtectionMinTps;
// lambdaProtectionTimeout
case -1645106444:
return engineConfiguration->lambdaProtectionTimeout;
}
return EFI_ERROR_CODE;
}
@ -2274,6 +2289,11 @@ void setConfigValueByName(const char *name, float value) {
{
engineConfiguration->useTpicAdvancedMode = (int)value;
return;
}
case 1451020756:
{
engineConfiguration->lambdaProtectionEnable = (int)value;
return;
}
case -1251676000:
{
@ -4249,6 +4269,26 @@ void setConfigValueByName(const char *name, float value) {
{
engineConfiguration->iacByTpsDecayTime = (int)value;
return;
}
case 1758659040:
{
engineConfiguration->lambdaProtectionMinRpm = (int)value;
return;
}
case -2094010831:
{
engineConfiguration->lambdaProtectionMinLoad = (int)value;
return;
}
case 1758661224:
{
engineConfiguration->lambdaProtectionMinTps = (int)value;
return;
}
case -1645106444:
{
engineConfiguration->lambdaProtectionTimeout = (int)value;
return;
}
}
}

View File

@ -403,6 +403,9 @@ This setting should only be used if you have a stepper motor idle valve and a st
### useTpicAdvancedMode
### lambdaProtectionEnable
### verboseTLE8888
@ -1588,3 +1591,15 @@ How long initial IAC adder is held before starting to decay.
### iacByTpsDecayTime
How long it takes to remove initial IAC adder to return to normal idle.
### lambdaProtectionMinRpm
### lambdaProtectionMinLoad
### lambdaProtectionMinTps
### lambdaProtectionTimeout
Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.f407-discovery.3978602650"
signature = "rusEFI master.2023.06.24.f407-discovery.1278519085"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.f407-discovery.3978602650" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.f407-discovery.1278519085" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:38 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:08:00 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5445,6 +5459,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7434,6 +7453,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.48way.4124892373"
signature = "rusEFI master.2023.06.24.48way.1422709602"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.48way.4124892373" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.48way.1422709602" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:03 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:14 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5445,6 +5459,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7434,6 +7453,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.alphax-2chan.3382130794"
signature = "rusEFI master.2023.06.24.alphax-2chan.1753692125"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.alphax-2chan.3382130794" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.alphax-2chan.1753692125" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:17 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:16 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5441,6 +5455,11 @@ menuDialog = main
subMenu = fancyHardwareDialog, "Fancy Hardware"
subMenu = std_separator
; 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
@ -7406,6 +7425,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.alphax-4chan.2456261766"
signature = "rusEFI master.2023.06.24.alphax-4chan.863476529"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.alphax-4chan.2456261766" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.alphax-4chan.863476529" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:19 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:19 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5443,6 +5457,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7408,6 +7427,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.alphax-4chan_f7.2456261766"
signature = "rusEFI master.2023.06.24.alphax-4chan_f7.863476529"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.alphax-4chan_f7.2456261766" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.alphax-4chan_f7.863476529" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:21 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:21 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5443,6 +5457,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7408,6 +7427,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.alphax-8chan.1459699461"
signature = "rusEFI master.2023.06.24.alphax-8chan.4128321714"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.alphax-8chan.1459699461" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.alphax-8chan.4128321714" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:23 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:24 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5443,6 +5457,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7408,6 +7427,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.alphax-8chan_f7.1459699461"
signature = "rusEFI master.2023.06.24.alphax-8chan_f7.4128321714"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.alphax-8chan_f7.1459699461" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.alphax-8chan_f7.4128321714" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:26 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:27 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5443,6 +5457,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7408,6 +7427,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.atlas.2915869000"
signature = "rusEFI master.2023.06.24.atlas.215789311"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.atlas.2915869000" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.atlas.215789311" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:31 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:50 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5443,6 +5457,11 @@ menuDialog = main
subMenu = fancyHardwareDialog, "Fancy Hardware"
subMenu = std_separator
; 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
@ -7424,6 +7443,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.core8.2300664281"
signature = "rusEFI master.2023.06.24.core8.674322030"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.core8.2300664281" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.core8.674322030" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:01 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:12 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5445,6 +5459,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7434,6 +7453,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.cypress.2969982063"
signature = "rusEFI master.2023.06.24.cypress.269900760"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.cypress.2969982063" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.cypress.269900760" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:14 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:12 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5443,6 +5457,11 @@ menuDialog = main
subMenu = fancyHardwareDialog, "Fancy Hardware"
subMenu = std_separator
; 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
@ -7432,6 +7451,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.f407-discovery.3978602650"
signature = "rusEFI master.2023.06.24.f407-discovery.1278519085"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.f407-discovery.3978602650" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.f407-discovery.1278519085" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:34 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:55 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5445,6 +5459,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7434,6 +7453,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.f429-discovery.2969982063"
signature = "rusEFI master.2023.06.24.f429-discovery.269900760"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.f429-discovery.2969982063" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.f429-discovery.269900760" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:23 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:40 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5443,6 +5457,11 @@ menuDialog = main
subMenu = fancyHardwareDialog, "Fancy Hardware"
subMenu = std_separator
; 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
@ -7432,6 +7451,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.frankenso_na6.2471802021"
signature = "rusEFI master.2023.06.24.frankenso_na6.843365138"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.frankenso_na6.2471802021" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.frankenso_na6.843365138" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:11 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:25 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5443,6 +5457,11 @@ menuDialog = main
subMenu = fancyHardwareDialog, "Fancy Hardware"
subMenu = std_separator
; 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
@ -7432,6 +7451,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.harley81.1711151398"
signature = "rusEFI master.2023.06.24.harley81.3303937681"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.harley81.1711151398" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.harley81.3303937681" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:28 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:30 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5444,6 +5458,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7420,6 +7439,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.hellen-gm-e67.32826015"
signature = "rusEFI master.2023.06.24.hellen-gm-e67.2699357480"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.hellen-gm-e67.32826015" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.hellen-gm-e67.2699357480" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:49 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:56 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5444,6 +5458,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7423,6 +7442,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.hellen-honda-k.3592853179"
signature = "rusEFI master.2023.06.24.hellen-honda-k.2000066828"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.hellen-honda-k.3592853179" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.hellen-honda-k.2000066828" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:36 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:40 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5443,6 +5457,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7405,6 +7424,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.hellen-nb1.2357217801"
signature = "rusEFI master.2023.06.24.hellen-nb1.764429758"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.hellen-nb1.2357217801" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.hellen-nb1.764429758" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:46 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:53 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5444,6 +5458,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7423,6 +7442,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.hellen121nissan.3681301293"
signature = "rusEFI master.2023.06.24.hellen121nissan.2054962330"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.hellen121nissan.3681301293" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.hellen121nissan.2054962330" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:34 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:38 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5443,6 +5457,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7405,6 +7424,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.hellen121vag.628640684"
signature = "rusEFI master.2023.06.24.hellen121vag.2221425691"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.hellen121vag.628640684" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.hellen121vag.2221425691" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:32 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:35 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5444,6 +5458,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7423,6 +7442,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.hellen128.2423559161"
signature = "rusEFI master.2023.06.24.hellen128.828677198"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.hellen128.2423559161" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.hellen128.828677198" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:30 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:32 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5444,6 +5458,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7420,6 +7439,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.hellen154hyundai.3385106048"
signature = "rusEFI master.2023.06.24.hellen154hyundai.1758761271"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.hellen154hyundai.3385106048" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.hellen154hyundai.1758761271" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:38 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:43 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5443,6 +5457,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7405,6 +7424,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.hellen72.3712111170"
signature = "rusEFI master.2023.06.24.hellen72.2085772789"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.hellen72.3712111170" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.hellen72.2085772789" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:42 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:48 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5444,6 +5458,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7423,6 +7442,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.hellen81.1180094594"
signature = "rusEFI master.2023.06.24.hellen81.3880181557"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.hellen81.1180094594" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.hellen81.3880181557" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:44 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:51 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5442,6 +5456,11 @@ menuDialog = main
subMenu = fancyHardwareDialog, "Fancy Hardware"
subMenu = std_separator
; 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
@ -7421,6 +7440,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.hellen88bmw.1738674782"
signature = "rusEFI master.2023.06.24.hellen88bmw.3333561833"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.hellen88bmw.1738674782" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.hellen88bmw.3333561833" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:40 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:46 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5444,6 +5458,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7420,6 +7439,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.hellenNA6.1510721611"
signature = "rusEFI master.2023.06.24.hellenNA6.4212901884"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.hellenNA6.1510721611" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.hellenNA6.4212901884" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:51 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:59 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5444,6 +5458,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7423,6 +7442,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.hellenNA8_96.3973077830"
signature = "rusEFI master.2023.06.24.hellenNA8_96.1304450289"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.hellenNA8_96.3973077830" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.hellenNA8_96.1304450289" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:53 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:02 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5444,6 +5458,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7423,6 +7442,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.kin.3654416035"
signature = "rusEFI master.2023.06.24.kin.2025978132"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.kin.3654416035" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.kin.2025978132" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:13 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:11 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5443,6 +5457,11 @@ menuDialog = main
subMenu = fancyHardwareDialog, "Fancy Hardware"
subMenu = std_separator
; 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
@ -7433,6 +7452,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.m74_9.2872920161"
signature = "rusEFI master.2023.06.24.m74_9.170739670"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.m74_9.2872920161" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.m74_9.170739670" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:05 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:17 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5444,6 +5458,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7423,6 +7442,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.mre_f4.2415015656"
signature = "rusEFI master.2023.06.24.mre_f4.786577759"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.mre_f4.2415015656" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.mre_f4.786577759" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:59 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:09 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5446,6 +5460,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7423,6 +7442,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.mre_f7.2415015656"
signature = "rusEFI master.2023.06.24.mre_f7.786577759"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.mre_f7.2415015656" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.mre_f7.786577759" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:57 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:07 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5446,6 +5460,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7423,6 +7442,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.nucleo_f429.2969982063"
signature = "rusEFI master.2023.06.24.nucleo_f429.269900760"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.nucleo_f429.2969982063" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.nucleo_f429.269900760" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:25 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:43 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5443,6 +5457,11 @@ menuDialog = main
subMenu = fancyHardwareDialog, "Fancy Hardware"
subMenu = std_separator
; 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
@ -7432,6 +7451,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.nucleo_f767.2969982063"
signature = "rusEFI master.2023.06.24.nucleo_f767.269900760"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.nucleo_f767.2969982063" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.nucleo_f767.269900760" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:27 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:45 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5443,6 +5457,11 @@ menuDialog = main
subMenu = fancyHardwareDialog, "Fancy Hardware"
subMenu = std_separator
; 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
@ -7432,6 +7451,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.nucleo_h743.2969982063"
signature = "rusEFI master.2023.06.24.nucleo_h743.269900760"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.nucleo_h743.2969982063" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.nucleo_h743.269900760" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:29 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:48 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5443,6 +5457,11 @@ menuDialog = main
subMenu = fancyHardwareDialog, "Fancy Hardware"
subMenu = std_separator
; 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
@ -7432,6 +7451,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.prometheus_405.2173868543"
signature = "rusEFI master.2023.06.24.prometheus_405.545429064"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.prometheus_405.2173868543" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.prometheus_405.545429064" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:14 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:30 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5438,6 +5452,11 @@ menuDialog = main
subMenu = fancyHardwareDialog, "Fancy Hardware"
subMenu = std_separator
; 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
@ -7427,6 +7446,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.prometheus_469.2173868543"
signature = "rusEFI master.2023.06.24.prometheus_469.545429064"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.prometheus_469.2173868543" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.prometheus_469.545429064" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:13 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:27 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5438,6 +5452,11 @@ menuDialog = main
subMenu = fancyHardwareDialog, "Fancy Hardware"
subMenu = std_separator
; 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
@ -7427,6 +7446,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.proteus_f4.4177996769"
signature = "rusEFI master.2023.06.24.proteus_f4.1477911638"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.proteus_f4.4177996769" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.proteus_f4.1477911638" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:18 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:35 UTC 2023
pageSize = 27436
pageSize = 27468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 27410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 27416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 27422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 27428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 27436
lambdaMaxDeviationTable = array, U08, 27434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 27450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 27458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 27468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 27428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5440,6 +5454,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7427,6 +7446,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.proteus_f7.4177996769"
signature = "rusEFI master.2023.06.24.proteus_f7.1477911638"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.proteus_f7.4177996769" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.proteus_f7.1477911638" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:16 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:32 UTC 2023
pageSize = 27436
pageSize = 27468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 27410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 27416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 27422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 27428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 27436
lambdaMaxDeviationTable = array, U08, 27434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 27450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 27458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 27468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 27428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5440,6 +5454,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7427,6 +7446,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.proteus_h7.4177996769"
signature = "rusEFI master.2023.06.24.proteus_h7.1477911638"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.proteus_h7.4177996769" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.proteus_h7.1477911638" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:20 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:38 UTC 2023
pageSize = 27436
pageSize = 27468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 27410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 27416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 27422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 27428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 27436
lambdaMaxDeviationTable = array, U08, 27434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 27450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 27458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 27468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 27428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5440,6 +5454,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7427,6 +7446,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.s105.3579687219"
signature = "rusEFI master.2023.06.24.s105.1951252100"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.s105.3579687219" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.s105.1951252100" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:07 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:20 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5444,6 +5458,11 @@ menuDialog = main
subMenu = softwareKnock, "Software knock"
subMenu = maxKnockRetardTbl, "Max knock retard"
; 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
@ -7423,6 +7442,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.small-can.1536637003"
signature = "rusEFI master.2023.06.24.small-can.4203165692"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.small-can.1536637003" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.small-can.4203165692" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:47:54 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:04 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5442,6 +5456,11 @@ menuDialog = main
subMenu = fancyHardwareDialog, "Fancy Hardware"
subMenu = std_separator
; 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
@ -7423,6 +7442,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.subaru_eg33_f7.3062600568"
signature = "rusEFI master.2023.06.24.subaru_eg33_f7.396074191"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.subaru_eg33_f7.3062600568" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.subaru_eg33_f7.396074191" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:27:15 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:06:13 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5443,6 +5457,11 @@ menuDialog = main
subMenu = std_separator
subMenu = hipFunction, "HIP9011 settings (knock sensor) (alpha version)"
; 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
@ -7432,6 +7451,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.t-b-g.2969982063"
signature = "rusEFI master.2023.06.24.t-b-g.269900760"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.t-b-g.2969982063" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.t-b-g.269900760" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:09 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:22 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5443,6 +5457,11 @@ menuDialog = main
subMenu = fancyHardwareDialog, "Fancy Hardware"
subMenu = std_separator
; 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
@ -7432,6 +7451,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -34,12 +34,12 @@ enable2ndByteCanID = false
[MegaTune]
; https://rusefi.com/forum/viewtopic.php?p=36201#p36201
signature = "rusEFI master.2023.06.24.tdg-pdm8.1000896589"
signature = "rusEFI master.2023.06.24.tdg-pdm8.2595780602"
[TunerStudio]
queryCommand = "S"
versionInfo = "V" ; firmware version for title bar.
signature= "rusEFI master.2023.06.24.tdg-pdm8.1000896589" ; signature is expected to be 7 or more characters.
signature= "rusEFI master.2023.06.24.tdg-pdm8.2595780602" ; 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
@ -87,9 +87,9 @@ enable2ndByteCanID = false
; name = scalar, type, offset, units, scale, translate, lo, hi, digits
; CONFIG_DEFINITION_START
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:32 UTC 2023
; this section was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:07:53 UTC 2023
pageSize = 23436
pageSize = 23468
page = 1
engineType = bits, S32, 0, [0:6], 0="DEFAULT_FRANKENSO",97="ALPHAX_8CHAN_SBC",24="BMW_M73_M",50="BMW_M73_MRE",51="BMW_M73_MRE_SLAVE",35="CAMARO_4",65="CITROEN_TU3JP",38="DISCOVERY_PDM",2="DODGE_NEON_1995",46="DODGE_NEON_2003_CRANK",64="DODGE_RAM",61="EEPROM_BENCH_ENGINE",58="ETB_BENCH_ENGINE",3="FORD_ASPIRE_1996",11="FORD_COYOTE",14="FORD_ESCORT_GT",7="FORD_INLINE_6_1995",40="FRANKENSO_BMW_M73_F",47="FRANKENSO_MAZDA_MIATA_2003",56="FRANKENSO_MAZDA_MIATA_NA8",41="FRANKENSO_MIATA_NA6_MAP",49="FRANKENSO_QA_ENGINE",8="GY6_139QMB",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",34="HELLEN_NA6",10="HELLEN_NA8_96",80="HELLEN_NA94",83="HELLEN_NB1",94="HELLEN_NB1_36",69="HELLEN_NB2",86="HELLEN_NB2_36",43="HONDA_600",60="L9779_BENCH_ENGINE",55="MAZDA_MIATA_2003_BOARD_TEST",54="MAZDA_MIATA_2003_NA_RAIL",21="MIATA_1996",1="MIATA_PROTEUS_TCU",99="MINIMAL_PINS",12="MITSUBISHI_3A92",16="MITSUBISHI_4G93",31="MRE_BOARD_NEW_TEST",23="MRE_BODY_CONTROL",68="MRE_M111",20="MRE_MIATA_94_MAP",66="MRE_MIATA_NA6_MAP",4="MRE_SECONDARY_CAN",37="MRE_SUBARU_EJ18",62="MRE_VW_B6",5="NISSAN_PRIMERA",30="PROTEUS_ANALOG_PWM_TEST",63="PROTEUS_BMW_M73",9="PROTEUS_E65_6H_MAN_IN_THE_MIDDLE",27="PROTEUS_GM_LS_4",6="PROTEUS_HARLEY",90="PROTEUS_HONDA_K",91="PROTEUS_HONDA_OBD2A",104="PROTEUS_HYUNDAI_PB",25="PROTEUS_LUA_DEMO",17="PROTEUS_M111",67="PROTEUS_MIATA_NB2",93="PROTEUS_N73",103="PROTEUS_NISSAN_VQ35",42="PROTEUS_QC_TEST_BOARD",98="PROTEUS_SBC",39="PROTEUS_VW_B6",29="SACHS",70="SUBARUEG33_DEFAULTS",22="SUBARU_2003_WRX",100="TEST_100",101="TEST_101",102="TEST_102",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",59="TLE8888_BENCH_ENGINE",13="TOYOTA_1NZ_FE",44="TOYOTA_2JZ_GTE_VVTi",15="UNUSED_15",33="UNUSED_33",57="UNUSED_57",73="UNUSED_73",74="UNUSED_74",75="UNUSED_75",92="UNUSED_92",32="VW_ABA",96="WASTEGATE_PROTEUS_TEST"
sensorSnifferRpmThreshold = scalar, U16, 4, "RPM", 1, 0, 0, 10000, 0
@ -342,7 +342,7 @@ verboseQuad = bits, U32, 724, [8:8], "false", "true"
useStepperIdle = bits, U32, 724, [9:9], "false", "true"
enabledStep1Limiter = bits, U32, 724, [10:10], "false", "true"
useTpicAdvancedMode = bits, U32, 724, [11:11], "false", "true"
unused760b12 = bits, U32, 724, [12:12], "false", "true"
lambdaProtectionEnable = bits, U32, 724, [12:12], "false", "true"
verboseTLE8888 = bits, U32, 724, [13:13], "false", "true"
enableVerboseCanTx = bits, U32, 724, [14:14], "false", "true"
etb1configured = bits, U32, 724, [15:15], "false", "true"
@ -1224,7 +1224,11 @@ tcu_rangeInputMode3 = bits, U08, 3964, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode4 = bits, U08, 3965, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode5 = bits, U08, 3966, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
tcu_rangeInputMode6 = bits, U08, 3967, [0:1], "DEFAULT", "PULLUP", "PULLDOWN"
mainUnusedEnd = array, U08, 3968, [194], "units", 1, 0, 0, 1, 0
lambdaProtectionMinRpm = scalar, U08, 3968, "RPM", 100.0, 0, 0, 25000, 0
lambdaProtectionMinLoad = scalar, U08, 3969, "", 10.0, 0, 0, 1000, 0
lambdaProtectionMinTps = scalar, U08, 3970, "", 1, 0, 0, 100, 0
lambdaProtectionTimeout = scalar, U08, 3971, "s", 0.1, 0, 0, 10, 1
mainUnusedEnd = array, U08, 3972, [190], "units", 1, 0, 0, 1, 0
etbBiasBins = array, F32, 4164, [8], "target TPS position", 1, 0, 0, 100, 0
etbBiasValues = array, F32, 4196, [8], "ETB duty cycle bias", 1, 0, -100, 100, 2
iacPidMultTable = array, U08, 4228, [8x8], "%", 0.05, 0, 0, 10, 2
@ -1482,7 +1486,10 @@ tcu_rangeM1 = array, U08, 23410, [6], "level", 1, 0, 0, 3, 0
tcu_rangePlus = array, U08, 23416, [6], "level", 1, 0, 0, 3, 0
tcu_rangeMinus = array, U08, 23422, [6], "level", 1, 0, 0, 3, 0
tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
; total TS size = 23436
lambdaMaxDeviationTable = array, U08, 23434, [4x4], "lambda", 0.01, 0, 0, 1, 2
lambdaMaxDeviationLoadBins = array, U16, 23450, [4], "", 1, 0, 0, 1000, 0
lambdaMaxDeviationRpmBins = array, U16, 23458, [4], "RPM", 1, 0, 0, 18000, 0
; total TS size = 23468
[SettingContextHelp]
engineType = "http://rusefi.com/wiki/index.php?title=Manual:Engine_Type\nset engine_type X"
sensorSnifferRpmThreshold = "Disable sensor sniffer above this rpm"
@ -2147,6 +2154,7 @@ tcu_rangeLow = array, U08, 23428, [6], "level", 1, 0, 0, 3, 0
tcu_rangeInputMode4 = "tcu_rangeInputMode 4"
tcu_rangeInputMode5 = "tcu_rangeInputMode 5"
tcu_rangeInputMode6 = "tcu_rangeInputMode 6"
lambdaProtectionTimeout = "Only respond once lambda is out of range for this period of time. Use to avoid transients triggering lambda protection when not needed"
etbBiasBins = "target TPS value, 0 to 100%\nTODO: use int8 data date once we template interpolation method"
etbBiasValues = "PWM bias, 0 to 100%"
sparkDwellRpmBins = "On Single Coil or Wasted Spark setups you have to lower dwell at high RPM"
@ -4076,6 +4084,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
@ -5443,6 +5457,11 @@ menuDialog = main
subMenu = fancyHardwareDialog, "Fancy Hardware"
subMenu = std_separator
; 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
@ -7432,6 +7451,20 @@ dialog = sent_stateDialog, "sent_state"
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

View File

@ -1,6 +1,6 @@
package com.rusefi.config.generated;
// this file was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Fri Jun 23 23:28:38 UTC 2023
// this file was generated automatically by rusEFI tool config_definition.jar based on (unknown script) integration/rusefi_config.txt Sat Jun 24 01:08:00 UTC 2023
// by class com.rusefi.output.FileJavaFieldsConsumer
import com.rusefi.config.*;
@ -945,7 +945,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 = 23436;
public static final int persistent_config_s_size = 23468;
public static final int pid_s_size = 20;
public static final int PidAutoTune_AutoTunerState_AUTOTUNER_OFF = 0;
public static final int PidAutoTune_AutoTunerState_CONVERGED = 16;
@ -1022,6 +1022,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 = 1278519085;
public static final String SIMULATOR_TUNE_BIN_FILE_NAME = "generated/simulator_tune_image.bin";
public static final int spi_device_e_SPI_DEVICE_1 = 1;
public static final int spi_device_e_SPI_DEVICE_2 = 2;
@ -1059,7 +1060,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 = 23436;
public static final int TOTAL_CONFIG_SIZE = 23468;
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;
@ -1234,7 +1235,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.2023.06.24.f407-discovery.3978602650";
public static final String TS_SIGNATURE = "rusEFI master.2023.06.24.f407-discovery.1278519085";
public static final char TS_SINGLE_WRITE_COMMAND = 'W';
public static final char TS_TEST_COMMAND = 't';
public static final int TS_TOTAL_OUTPUT_SIZE = 1388;
@ -1584,6 +1585,7 @@ public class Fields {
public static final Field USESTEPPERIDLE = Field.create("USESTEPPERIDLE", 724, FieldType.BIT, 9).setBaseOffset(0);
public static final Field ENABLEDSTEP1LIMITER = Field.create("ENABLEDSTEP1LIMITER", 724, FieldType.BIT, 10).setBaseOffset(0);
public static final Field USETPICADVANCEDMODE = Field.create("USETPICADVANCEDMODE", 724, FieldType.BIT, 11).setBaseOffset(0);
public static final Field LAMBDAPROTECTIONENABLE = Field.create("LAMBDAPROTECTIONENABLE", 724, FieldType.BIT, 12).setBaseOffset(0);
public static final Field VERBOSETLE8888 = Field.create("VERBOSETLE8888", 724, FieldType.BIT, 13).setBaseOffset(0);
public static final Field ENABLEVERBOSECANTX = Field.create("ENABLEVERBOSECANTX", 724, FieldType.BIT, 14).setBaseOffset(0);
public static final Field ETB1CONFIGURED = Field.create("ETB1CONFIGURED", 724, FieldType.BIT, 15).setBaseOffset(0);
@ -2540,7 +2542,11 @@ public class Fields {
public static final Field TCU_RANGEINPUTMODE4 = Field.create("TCU_RANGEINPUTMODE4", 3965, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0);
public static final Field TCU_RANGEINPUTMODE5 = Field.create("TCU_RANGEINPUTMODE5", 3966, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0);
public static final Field TCU_RANGEINPUTMODE6 = Field.create("TCU_RANGEINPUTMODE6", 3967, FieldType.INT8, pin_input_mode_e).setScale(1.0).setBaseOffset(0);
public static final Field MAINUNUSEDEND = Field.create("MAINUNUSEDEND", 3968, FieldType.INT8).setScale(1.0).setBaseOffset(0);
public static final Field LAMBDAPROTECTIONMINRPM = Field.create("LAMBDAPROTECTIONMINRPM", 3968, FieldType.INT8).setScale(100.0).setBaseOffset(0);
public static final Field LAMBDAPROTECTIONMINLOAD = Field.create("LAMBDAPROTECTIONMINLOAD", 3969, FieldType.INT8).setScale(10.0).setBaseOffset(0);
public static final Field LAMBDAPROTECTIONMINTPS = Field.create("LAMBDAPROTECTIONMINTPS", 3970, FieldType.INT8).setScale(1.0).setBaseOffset(0);
public static final Field LAMBDAPROTECTIONTIMEOUT = Field.create("LAMBDAPROTECTIONTIMEOUT", 3971, FieldType.INT8).setScale(0.1).setBaseOffset(0);
public static final Field MAINUNUSEDEND = Field.create("MAINUNUSEDEND", 3972, FieldType.INT8).setScale(1.0).setBaseOffset(0);
public static final Field ALIGNMENTFILL_AT_4162 = Field.create("ALIGNMENTFILL_AT_4162", 4162, FieldType.INT8).setScale(1.0).setBaseOffset(0);
public static final Field ETBBIASBINS = Field.create("ETBBIASBINS", 4164, FieldType.FLOAT).setBaseOffset(0);
public static final Field ETBBIASVALUES = Field.create("ETBBIASVALUES", 4196, FieldType.FLOAT).setBaseOffset(0);
@ -2819,7 +2825,10 @@ public class Fields {
public static final Field TCU_RANGEPLUS = Field.create("TCU_RANGEPLUS", 23416, FieldType.INT8).setScale(1.0).setBaseOffset(0);
public static final Field TCU_RANGEMINUS = Field.create("TCU_RANGEMINUS", 23422, FieldType.INT8).setScale(1.0).setBaseOffset(0);
public static final Field TCU_RANGELOW = Field.create("TCU_RANGELOW", 23428, FieldType.INT8).setScale(1.0).setBaseOffset(0);
public static final Field ALIGNMENTFILL_AT_23434 = Field.create("ALIGNMENTFILL_AT_23434", 23434, FieldType.INT8).setScale(1.0).setBaseOffset(0);
public static final Field LAMBDAMAXDEVIATIONTABLE = Field.create("LAMBDAMAXDEVIATIONTABLE", 23434, FieldType.INT8).setScale(0.01).setBaseOffset(0);
public static final Field LAMBDAMAXDEVIATIONLOADBINS = Field.create("LAMBDAMAXDEVIATIONLOADBINS", 23450, FieldType.INT16).setScale(1.0).setBaseOffset(0);
public static final Field LAMBDAMAXDEVIATIONRPMBINS = Field.create("LAMBDAMAXDEVIATIONRPMBINS", 23458, FieldType.INT16).setScale(1.0).setBaseOffset(0);
public static final Field ALIGNMENTFILL_AT_23466 = Field.create("ALIGNMENTFILL_AT_23466", 23466, FieldType.INT8).setScale(1.0).setBaseOffset(0);
public static final Field[] VALUES = {
ENGINETYPE,
SENSORSNIFFERRPMTHRESHOLD,
@ -3096,6 +3105,7 @@ public class Fields {
USESTEPPERIDLE,
ENABLEDSTEP1LIMITER,
USETPICADVANCEDMODE,
LAMBDAPROTECTIONENABLE,
VERBOSETLE8888,
ENABLEVERBOSECANTX,
ETB1CONFIGURED,
@ -4034,6 +4044,10 @@ public class Fields {
TCU_RANGEINPUTMODE4,
TCU_RANGEINPUTMODE5,
TCU_RANGEINPUTMODE6,
LAMBDAPROTECTIONMINRPM,
LAMBDAPROTECTIONMINLOAD,
LAMBDAPROTECTIONMINTPS,
LAMBDAPROTECTIONTIMEOUT,
MAINUNUSEDEND,
ALIGNMENTFILL_AT_4162,
ETBBIASBINS,
@ -4313,6 +4327,9 @@ public class Fields {
TCU_RANGEPLUS,
TCU_RANGEMINUS,
TCU_RANGELOW,
ALIGNMENTFILL_AT_23434,
LAMBDAMAXDEVIATIONTABLE,
LAMBDAMAXDEVIATIONLOADBINS,
LAMBDAMAXDEVIATIONRPMBINS,
ALIGNMENTFILL_AT_23466,
};
}