From 900c99f7046354e994dda9131de3f64887b0486d Mon Sep 17 00:00:00 2001 From: GitHub build-firmware Action Date: Sat, 29 Aug 2020 01:15:45 +0000 Subject: [PATCH] Auto-generated configs and docs --- ...ngine_configuration_generated_structures.h | 6 +++--- .../controllers/algo/rusefi_generated.h | 9 +++++---- ...ngine_configuration_generated_structures.h | 6 +++--- .../generated/fsio_enums_generated.def | 2 +- .../controllers/generated/fsio_getters.def | 2 +- firmware/controllers/generated/fsio_names.def | 2 +- .../controllers/generated/fsio_strings.def | 2 +- .../controllers/generated/rusefi_generated.h | 9 +++++---- .../controllers/generated/signature_all.h | 6 +++--- .../generated/signature_frankenso_na6.h | 6 +++--- .../controllers/generated/signature_kin.h | 6 +++--- .../controllers/generated/signature_mre_f4.h | 6 +++--- .../controllers/generated/signature_mre_f7.h | 6 +++--- .../generated/signature_prometheus_405.h | 6 +++--- .../generated/signature_prometheus_469.h | 6 +++--- .../generated/signature_proteus_f4.h | 6 +++--- .../generated/signature_proteus_f7.h | 6 +++--- firmware/tunerstudio/generated/cache.zip | Bin 854021 -> 854810 bytes firmware/tunerstudio/generated/rusefi.ini | 12 ++++++++---- .../generated/rusefi_frankenso_na6.ini | 12 ++++++++---- .../tunerstudio/generated/rusefi_kinetis.ini | 12 ++++++++---- .../tunerstudio/generated/rusefi_mre_f4.ini | 12 ++++++++---- .../tunerstudio/generated/rusefi_mre_f7.ini | 12 ++++++++---- .../generated/rusefi_prometheus_405.ini | 12 ++++++++---- .../generated/rusefi_prometheus_469.ini | 12 ++++++++---- .../generated/rusefi_proteus_f4.ini | 13 +++++++++---- .../generated/rusefi_proteus_f7.ini | 13 +++++++++---- .../com/rusefi/config/generated/Fields.java | 12 ++++++------ java_console/rusefi.xml | 2 +- 29 files changed, 128 insertions(+), 88 deletions(-) diff --git a/firmware/config/boards/kinetis/config/controllers/algo/engine_configuration_generated_structures.h b/firmware/config/boards/kinetis/config/controllers/algo/engine_configuration_generated_structures.h index c81df80984..8fc69783bb 100644 --- a/firmware/config/boards/kinetis/config/controllers/algo/engine_configuration_generated_structures.h +++ b/firmware/config/boards/kinetis/config/controllers/algo/engine_configuration_generated_structures.h @@ -1,4 +1,4 @@ -// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Thu Aug 27 04:44:40 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Sat Aug 29 01:15:28 UTC 2020 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once @@ -1767,7 +1767,7 @@ struct engine_configuration_s { bool dcMotorIdleValve : 1; /** offset 976 bit 12 */ - bool unusedBit_251_12 : 1; + bool enableSoftwareKnock : 1; /** offset 976 bit 13 */ bool unusedBit_251_13 : 1; @@ -3652,4 +3652,4 @@ struct persistent_config_s { typedef struct persistent_config_s persistent_config_s; // end -// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Thu Aug 27 04:44:40 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Sat Aug 29 01:15:28 UTC 2020 diff --git a/firmware/config/boards/kinetis/config/controllers/algo/rusefi_generated.h b/firmware/config/boards/kinetis/config/controllers/algo/rusefi_generated.h index 99e5067a7c..f4a1a422b4 100644 --- a/firmware/config/boards/kinetis/config/controllers/algo/rusefi_generated.h +++ b/firmware/config/boards/kinetis/config/controllers/algo/rusefi_generated.h @@ -328,6 +328,7 @@ #define enableInnovateLC2_offset 976 #define enableLaunchBoost_offset 976 #define enableLaunchRetard_offset 976 +#define enableSoftwareKnock_offset 976 #define enableVerboseCan2Tx_offset 2116 #define enableVerboseCanTx_offset 744 #define engine_configuration_s_size 6000 @@ -1122,8 +1123,8 @@ #define showHumanReadableWarning_offset 976 #define showSdCardWarning_offset 76 #define SIGNATURE_BOARD kin -#define SIGNATURE_DATE 2020.08.27 -#define SIGNATURE_HASH 1786209569 +#define SIGNATURE_DATE 2020.08.29 +#define SIGNATURE_HASH 1581350293 #define silentTriggerError_offset 1464 #define slowAdcAlpha_offset 2088 #define sparkDwellRpmBins_offset 332 @@ -1426,10 +1427,11 @@ #define ts_show_main_relay true #define ts_show_main_relay_microRusEFI_message false #define ts_show_sd_card true +#define ts_show_software_knock false #define ts_show_spi true #define ts_show_trigger_comparator true #define ts_show_tunerstudio_port true -#define TS_SIGNATURE "rusEFI 2020.08.27.kin.1786209569" +#define TS_SIGNATURE "rusEFI 2020.08.29.kin.1581350293" #define TS_SINGLE_WRITE_COMMAND 'W' #define TS_SINGLE_WRITE_COMMAND_char W #define TS_TEST_COMMAND 't' // 0x74 @@ -1474,7 +1476,6 @@ #define unusedAuxVoltage1_TODO_332_offset 2713 #define unusedAuxVoltage2_TODO_332_offset 2714 #define unusedBit4_1476_offset 1476 -#define unusedBit_251_12_offset 976 #define unusedBit_251_13_offset 976 #define unusedBit_251_14_offset 976 #define unusedBit_251_15_offset 976 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures.h b/firmware/controllers/generated/engine_configuration_generated_structures.h index 833fbefb7f..75a76628f4 100644 --- a/firmware/controllers/generated/engine_configuration_generated_structures.h +++ b/firmware/controllers/generated/engine_configuration_generated_structures.h @@ -1,4 +1,4 @@ -// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Thu Aug 27 04:44:21 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Aug 29 01:15:10 UTC 2020 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once @@ -1767,7 +1767,7 @@ struct engine_configuration_s { bool dcMotorIdleValve : 1; /** offset 976 bit 12 */ - bool unusedBit_251_12 : 1; + bool enableSoftwareKnock : 1; /** offset 976 bit 13 */ bool unusedBit_251_13 : 1; @@ -3652,4 +3652,4 @@ struct persistent_config_s { typedef struct persistent_config_s persistent_config_s; // end -// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Thu Aug 27 04:44:21 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Aug 29 01:15:10 UTC 2020 diff --git a/firmware/controllers/generated/fsio_enums_generated.def b/firmware/controllers/generated/fsio_enums_generated.def index ed9b7806f3..16166f4fe0 100644 --- a/firmware/controllers/generated/fsio_enums_generated.def +++ b/firmware/controllers/generated/fsio_enums_generated.def @@ -1,4 +1,4 @@ -// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Thu Aug 27 04:44:21 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Aug 29 01:15:10 UTC 2020 // by class com.rusefi.output.FileFsioSettingsConsumer FSIO_SETTING_FANONTEMPERATURE = 1000, diff --git a/firmware/controllers/generated/fsio_getters.def b/firmware/controllers/generated/fsio_getters.def index 71b8c12cb1..7d4884afda 100644 --- a/firmware/controllers/generated/fsio_getters.def +++ b/firmware/controllers/generated/fsio_getters.def @@ -1,4 +1,4 @@ -// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Thu Aug 27 04:44:21 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Aug 29 01:15:10 UTC 2020 // by class com.rusefi.output.FileFsioSettingsConsumer case FSIO_SETTING_FANONTEMPERATURE: diff --git a/firmware/controllers/generated/fsio_names.def b/firmware/controllers/generated/fsio_names.def index e07164c3de..ce277e4dcd 100644 --- a/firmware/controllers/generated/fsio_names.def +++ b/firmware/controllers/generated/fsio_names.def @@ -1,4 +1,4 @@ -// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Thu Aug 27 04:44:21 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Aug 29 01:15:10 UTC 2020 // by class com.rusefi.output.FileFsioSettingsConsumer static LENameOrdinalPair lefanOnTemperature(FSIO_SETTING_FANONTEMPERATURE, "cfg_fanOnTemperature"); diff --git a/firmware/controllers/generated/fsio_strings.def b/firmware/controllers/generated/fsio_strings.def index 8ab8e807c7..baa2b80482 100644 --- a/firmware/controllers/generated/fsio_strings.def +++ b/firmware/controllers/generated/fsio_strings.def @@ -1,4 +1,4 @@ -// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Thu Aug 27 04:44:21 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Aug 29 01:15:10 UTC 2020 // by class com.rusefi.output.FileFsioSettingsConsumer case FSIO_SETTING_FANONTEMPERATURE: diff --git a/firmware/controllers/generated/rusefi_generated.h b/firmware/controllers/generated/rusefi_generated.h index 54331a1312..56c6f04c5e 100644 --- a/firmware/controllers/generated/rusefi_generated.h +++ b/firmware/controllers/generated/rusefi_generated.h @@ -328,6 +328,7 @@ #define enableInnovateLC2_offset 976 #define enableLaunchBoost_offset 976 #define enableLaunchRetard_offset 976 +#define enableSoftwareKnock_offset 976 #define enableVerboseCan2Tx_offset 2116 #define enableVerboseCanTx_offset 744 #define engine_configuration_s_size 6000 @@ -1122,8 +1123,8 @@ #define showHumanReadableWarning_offset 976 #define showSdCardWarning_offset 76 #define SIGNATURE_BOARD all -#define SIGNATURE_DATE 2020.08.27 -#define SIGNATURE_HASH 1168318593 +#define SIGNATURE_DATE 2020.08.29 +#define SIGNATURE_HASH 1905604661 #define silentTriggerError_offset 1464 #define slowAdcAlpha_offset 2088 #define sparkDwellRpmBins_offset 332 @@ -1426,10 +1427,11 @@ #define ts_show_main_relay true #define ts_show_main_relay_microRusEFI_message false #define ts_show_sd_card true +#define ts_show_software_knock false #define ts_show_spi true #define ts_show_trigger_comparator false #define ts_show_tunerstudio_port true -#define TS_SIGNATURE "rusEFI 2020.08.27.all.1168318593" +#define TS_SIGNATURE "rusEFI 2020.08.29.all.1905604661" #define TS_SINGLE_WRITE_COMMAND 'W' #define TS_SINGLE_WRITE_COMMAND_char W #define TS_TEST_COMMAND 't' // 0x74 @@ -1474,7 +1476,6 @@ #define unusedAuxVoltage1_TODO_332_offset 2713 #define unusedAuxVoltage2_TODO_332_offset 2714 #define unusedBit4_1476_offset 1476 -#define unusedBit_251_12_offset 976 #define unusedBit_251_13_offset 976 #define unusedBit_251_14_offset 976 #define unusedBit_251_15_offset 976 diff --git a/firmware/controllers/generated/signature_all.h b/firmware/controllers/generated/signature_all.h index e1d44182f0..18b01c1297 100644 --- a/firmware/controllers/generated/signature_all.h +++ b/firmware/controllers/generated/signature_all.h @@ -3,6 +3,6 @@ // #define SIGNATURE_BOARD all -#define SIGNATURE_DATE 2020.08.27 -#define SIGNATURE_HASH 1168318593 -#define TS_SIGNATURE "rusEFI 2020.08.27.all.1168318593" +#define SIGNATURE_DATE 2020.08.29 +#define SIGNATURE_HASH 1905604661 +#define TS_SIGNATURE "rusEFI 2020.08.29.all.1905604661" diff --git a/firmware/controllers/generated/signature_frankenso_na6.h b/firmware/controllers/generated/signature_frankenso_na6.h index aadfb6adc0..39d00e7e16 100644 --- a/firmware/controllers/generated/signature_frankenso_na6.h +++ b/firmware/controllers/generated/signature_frankenso_na6.h @@ -3,6 +3,6 @@ // #define SIGNATURE_BOARD frankenso_na6 -#define SIGNATURE_DATE 2020.08.27 -#define SIGNATURE_HASH 2367628680 -#define TS_SIGNATURE "rusEFI 2020.08.27.frankenso_na6.2367628680" +#define SIGNATURE_DATE 2020.08.29 +#define SIGNATURE_HASH 3106487612 +#define TS_SIGNATURE "rusEFI 2020.08.29.frankenso_na6.3106487612" diff --git a/firmware/controllers/generated/signature_kin.h b/firmware/controllers/generated/signature_kin.h index 96dae363a7..5591077ddc 100644 --- a/firmware/controllers/generated/signature_kin.h +++ b/firmware/controllers/generated/signature_kin.h @@ -3,6 +3,6 @@ // #define SIGNATURE_BOARD kin -#define SIGNATURE_DATE 2020.08.27 -#define SIGNATURE_HASH 1786209569 -#define TS_SIGNATURE "rusEFI 2020.08.27.kin.1786209569" +#define SIGNATURE_DATE 2020.08.29 +#define SIGNATURE_HASH 1581350293 +#define TS_SIGNATURE "rusEFI 2020.08.29.kin.1581350293" diff --git a/firmware/controllers/generated/signature_mre_f4.h b/firmware/controllers/generated/signature_mre_f4.h index 87d3166685..9387ee42f0 100644 --- a/firmware/controllers/generated/signature_mre_f4.h +++ b/firmware/controllers/generated/signature_mre_f4.h @@ -3,6 +3,6 @@ // #define SIGNATURE_BOARD mre_f4 -#define SIGNATURE_DATE 2020.08.27 -#define SIGNATURE_HASH 3188569562 -#define TS_SIGNATURE "rusEFI 2020.08.27.mre_f4.3188569562" +#define SIGNATURE_DATE 2020.08.29 +#define SIGNATURE_HASH 2319166830 +#define TS_SIGNATURE "rusEFI 2020.08.29.mre_f4.2319166830" diff --git a/firmware/controllers/generated/signature_mre_f7.h b/firmware/controllers/generated/signature_mre_f7.h index 262544e5ac..8dcca4c4c3 100644 --- a/firmware/controllers/generated/signature_mre_f7.h +++ b/firmware/controllers/generated/signature_mre_f7.h @@ -3,6 +3,6 @@ // #define SIGNATURE_BOARD mre_f7 -#define SIGNATURE_DATE 2020.08.27 -#define SIGNATURE_HASH 3188569562 -#define TS_SIGNATURE "rusEFI 2020.08.27.mre_f7.3188569562" +#define SIGNATURE_DATE 2020.08.29 +#define SIGNATURE_HASH 2319166830 +#define TS_SIGNATURE "rusEFI 2020.08.29.mre_f7.2319166830" diff --git a/firmware/controllers/generated/signature_prometheus_405.h b/firmware/controllers/generated/signature_prometheus_405.h index 733a86998a..82c11b7328 100644 --- a/firmware/controllers/generated/signature_prometheus_405.h +++ b/firmware/controllers/generated/signature_prometheus_405.h @@ -3,6 +3,6 @@ // #define SIGNATURE_BOARD prometheus_405 -#define SIGNATURE_DATE 2020.08.27 -#define SIGNATURE_HASH 1381327167 -#define TS_SIGNATURE "rusEFI 2020.08.27.prometheus_405.1381327167" +#define SIGNATURE_DATE 2020.08.29 +#define SIGNATURE_HASH 1717795211 +#define TS_SIGNATURE "rusEFI 2020.08.29.prometheus_405.1717795211" diff --git a/firmware/controllers/generated/signature_prometheus_469.h b/firmware/controllers/generated/signature_prometheus_469.h index ed7ec3129e..027dc432e6 100644 --- a/firmware/controllers/generated/signature_prometheus_469.h +++ b/firmware/controllers/generated/signature_prometheus_469.h @@ -3,6 +3,6 @@ // #define SIGNATURE_BOARD prometheus_469 -#define SIGNATURE_DATE 2020.08.27 -#define SIGNATURE_HASH 1381327167 -#define TS_SIGNATURE "rusEFI 2020.08.27.prometheus_469.1381327167" +#define SIGNATURE_DATE 2020.08.29 +#define SIGNATURE_HASH 1717795211 +#define TS_SIGNATURE "rusEFI 2020.08.29.prometheus_469.1717795211" diff --git a/firmware/controllers/generated/signature_proteus_f4.h b/firmware/controllers/generated/signature_proteus_f4.h index a54817042c..ac92d5d996 100644 --- a/firmware/controllers/generated/signature_proteus_f4.h +++ b/firmware/controllers/generated/signature_proteus_f4.h @@ -3,6 +3,6 @@ // #define SIGNATURE_BOARD proteus_f4 -#define SIGNATURE_DATE 2020.08.27 -#define SIGNATURE_HASH 2751659738 -#define TS_SIGNATURE "rusEFI 2020.08.27.proteus_f4.2751659738" +#define SIGNATURE_DATE 2020.08.29 +#define SIGNATURE_HASH 1154185072 +#define TS_SIGNATURE "rusEFI 2020.08.29.proteus_f4.1154185072" diff --git a/firmware/controllers/generated/signature_proteus_f7.h b/firmware/controllers/generated/signature_proteus_f7.h index 2963d4ef7b..f433b345be 100644 --- a/firmware/controllers/generated/signature_proteus_f7.h +++ b/firmware/controllers/generated/signature_proteus_f7.h @@ -3,6 +3,6 @@ // #define SIGNATURE_BOARD proteus_f7 -#define SIGNATURE_DATE 2020.08.27 -#define SIGNATURE_HASH 2751659738 -#define TS_SIGNATURE "rusEFI 2020.08.27.proteus_f7.2751659738" +#define SIGNATURE_DATE 2020.08.29 +#define SIGNATURE_HASH 1154185072 +#define TS_SIGNATURE "rusEFI 2020.08.29.proteus_f7.1154185072" diff --git a/firmware/tunerstudio/generated/cache.zip b/firmware/tunerstudio/generated/cache.zip index 8686d984850c8ebb9315ca4f3858004f8f85d383..060468c2db3e26650a03ca1b868cc71eee3611ed 100644 GIT binary patch delta 272348 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 cB|z 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 Settings dialog = hipFunction, "HIP9011 Settings (knock decoder)" field = "Enabled", isHip9011Enabled diff --git a/firmware/tunerstudio/generated/rusefi_frankenso_na6.ini b/firmware/tunerstudio/generated/rusefi_frankenso_na6.ini index 381147abc2..b579d63a77 100644 --- a/firmware/tunerstudio/generated/rusefi_frankenso_na6.ini +++ b/firmware/tunerstudio/generated/rusefi_frankenso_na6.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2020.08.27.frankenso_na6.2367628680" + signature = "rusEFI 2020.08.29.frankenso_na6.3106487612" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.08.27.frankenso_na6.2367628680" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.08.29.frankenso_na6.3106487612" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC @@ -74,7 +74,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Thu Aug 27 04:44:26 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Aug 29 01:15:20 UTC 2020 pageSize = 20000 page = 1 @@ -540,7 +540,7 @@ page = 1 showHumanReadableWarning= bits, U32, 976, [9:9], "false", "true" stftIgnoreErrorMagnitude= bits, U32, 976, [10:10], "false", "true" dcMotorIdleValve = bits, U32, 976, [11:11], "false", "true" - unusedBit_251_12 = bits, U32, 976, [12:12], "false", "true" + enableSoftwareKnock = bits, U32, 976, [12:12], "false", "true" unusedBit_251_13 = bits, U32, 976, [13:13], "false", "true" unusedBit_251_14 = bits, U32, 976, [14:14], "false", "true" unusedBit_251_15 = bits, U32, 976, [15:15], "false", "true" @@ -3654,6 +3654,10 @@ cmd_set_engine_type_default = "Z\x00\x31\x00\x00" field = "Pin mode", malfunctionIndicatorPinMode field = "Warning Period", warningPeriod + dialog = softwareKnock, "Software Knock" + field = "Enable", enableSoftwareKnock + field = "Band Freq override", knockBandCustom, {enableSoftwareKnock} + ; Engine->hip9011 Settings dialog = hipFunction, "HIP9011 Settings (knock decoder)" field = "Enabled", isHip9011Enabled diff --git a/firmware/tunerstudio/generated/rusefi_kinetis.ini b/firmware/tunerstudio/generated/rusefi_kinetis.ini index 8bef434cdb..ee5325ca77 100644 --- a/firmware/tunerstudio/generated/rusefi_kinetis.ini +++ b/firmware/tunerstudio/generated/rusefi_kinetis.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2020.08.27.kin.1786209569" + signature = "rusEFI 2020.08.29.kin.1581350293" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.08.27.kin.1786209569" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.08.29.kin.1581350293" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC @@ -74,7 +74,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Thu Aug 27 04:44:40 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Sat Aug 29 01:15:28 UTC 2020 pageSize = 20000 page = 1 @@ -540,7 +540,7 @@ page = 1 showHumanReadableWarning= bits, U32, 976, [9:9], "false", "true" stftIgnoreErrorMagnitude= bits, U32, 976, [10:10], "false", "true" dcMotorIdleValve = bits, U32, 976, [11:11], "false", "true" - unusedBit_251_12 = bits, U32, 976, [12:12], "false", "true" + enableSoftwareKnock = bits, U32, 976, [12:12], "false", "true" unusedBit_251_13 = bits, U32, 976, [13:13], "false", "true" unusedBit_251_14 = bits, U32, 976, [14:14], "false", "true" unusedBit_251_15 = bits, U32, 976, [15:15], "false", "true" @@ -3655,6 +3655,10 @@ cmd_set_engine_type_default = "Z\x00\x31\x00\x00" field = "Pin mode", malfunctionIndicatorPinMode field = "Warning Period", warningPeriod + dialog = softwareKnock, "Software Knock" + field = "Enable", enableSoftwareKnock + field = "Band Freq override", knockBandCustom, {enableSoftwareKnock} + ; Engine->hip9011 Settings dialog = hipFunction, "HIP9011 Settings (knock decoder)" field = "Enabled", isHip9011Enabled diff --git a/firmware/tunerstudio/generated/rusefi_mre_f4.ini b/firmware/tunerstudio/generated/rusefi_mre_f4.ini index 8e723a98ae..0ec88823fd 100644 --- a/firmware/tunerstudio/generated/rusefi_mre_f4.ini +++ b/firmware/tunerstudio/generated/rusefi_mre_f4.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2020.08.27.mre_f4.3188569562" + signature = "rusEFI 2020.08.29.mre_f4.2319166830" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.08.27.mre_f4.3188569562" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.08.29.mre_f4.2319166830" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC @@ -74,7 +74,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Thu Aug 27 04:44:24 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Aug 29 01:15:19 UTC 2020 pageSize = 20000 page = 1 @@ -540,7 +540,7 @@ page = 1 showHumanReadableWarning= bits, U32, 976, [9:9], "false", "true" stftIgnoreErrorMagnitude= bits, U32, 976, [10:10], "false", "true" dcMotorIdleValve = bits, U32, 976, [11:11], "false", "true" - unusedBit_251_12 = bits, U32, 976, [12:12], "false", "true" + enableSoftwareKnock = bits, U32, 976, [12:12], "false", "true" unusedBit_251_13 = bits, U32, 976, [13:13], "false", "true" unusedBit_251_14 = bits, U32, 976, [14:14], "false", "true" unusedBit_251_15 = bits, U32, 976, [15:15], "false", "true" @@ -3636,6 +3636,10 @@ cmd_set_engine_type_default = "Z\x00\x31\x00\x00" field = "Pin mode", malfunctionIndicatorPinMode field = "Warning Period", warningPeriod + dialog = softwareKnock, "Software Knock" + field = "Enable", enableSoftwareKnock + field = "Band Freq override", knockBandCustom, {enableSoftwareKnock} + ; Engine->hip9011 Settings dialog = hipFunction, "HIP9011 Settings (knock decoder)" field = "Enabled", isHip9011Enabled diff --git a/firmware/tunerstudio/generated/rusefi_mre_f7.ini b/firmware/tunerstudio/generated/rusefi_mre_f7.ini index 6044799fec..3990b98e89 100644 --- a/firmware/tunerstudio/generated/rusefi_mre_f7.ini +++ b/firmware/tunerstudio/generated/rusefi_mre_f7.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2020.08.27.mre_f7.3188569562" + signature = "rusEFI 2020.08.29.mre_f7.2319166830" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.08.27.mre_f7.3188569562" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.08.29.mre_f7.2319166830" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC @@ -74,7 +74,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Thu Aug 27 04:44:23 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Aug 29 01:15:16 UTC 2020 pageSize = 20000 page = 1 @@ -540,7 +540,7 @@ page = 1 showHumanReadableWarning= bits, U32, 976, [9:9], "false", "true" stftIgnoreErrorMagnitude= bits, U32, 976, [10:10], "false", "true" dcMotorIdleValve = bits, U32, 976, [11:11], "false", "true" - unusedBit_251_12 = bits, U32, 976, [12:12], "false", "true" + enableSoftwareKnock = bits, U32, 976, [12:12], "false", "true" unusedBit_251_13 = bits, U32, 976, [13:13], "false", "true" unusedBit_251_14 = bits, U32, 976, [14:14], "false", "true" unusedBit_251_15 = bits, U32, 976, [15:15], "false", "true" @@ -3636,6 +3636,10 @@ cmd_set_engine_type_default = "Z\x00\x31\x00\x00" field = "Pin mode", malfunctionIndicatorPinMode field = "Warning Period", warningPeriod + dialog = softwareKnock, "Software Knock" + field = "Enable", enableSoftwareKnock + field = "Band Freq override", knockBandCustom, {enableSoftwareKnock} + ; Engine->hip9011 Settings dialog = hipFunction, "HIP9011 Settings (knock decoder)" field = "Enabled", isHip9011Enabled diff --git a/firmware/tunerstudio/generated/rusefi_prometheus_405.ini b/firmware/tunerstudio/generated/rusefi_prometheus_405.ini index 2e8946509d..6900d1ad82 100644 --- a/firmware/tunerstudio/generated/rusefi_prometheus_405.ini +++ b/firmware/tunerstudio/generated/rusefi_prometheus_405.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2020.08.27.prometheus_405.1381327167" + signature = "rusEFI 2020.08.29.prometheus_405.1717795211" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.08.27.prometheus_405.1381327167" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.08.29.prometheus_405.1717795211" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC @@ -74,7 +74,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Thu Aug 27 04:44:28 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Aug 29 01:15:23 UTC 2020 pageSize = 20000 page = 1 @@ -540,7 +540,7 @@ page = 1 showHumanReadableWarning= bits, U32, 976, [9:9], "false", "true" stftIgnoreErrorMagnitude= bits, U32, 976, [10:10], "false", "true" dcMotorIdleValve = bits, U32, 976, [11:11], "false", "true" - unusedBit_251_12 = bits, U32, 976, [12:12], "false", "true" + enableSoftwareKnock = bits, U32, 976, [12:12], "false", "true" unusedBit_251_13 = bits, U32, 976, [13:13], "false", "true" unusedBit_251_14 = bits, U32, 976, [14:14], "false", "true" unusedBit_251_15 = bits, U32, 976, [15:15], "false", "true" @@ -3650,6 +3650,10 @@ cmd_set_engine_type_default = "Z\x00\x31\x00\x00" field = "Pin mode", malfunctionIndicatorPinMode field = "Warning Period", warningPeriod + dialog = softwareKnock, "Software Knock" + field = "Enable", enableSoftwareKnock + field = "Band Freq override", knockBandCustom, {enableSoftwareKnock} + ; Engine->hip9011 Settings dialog = hipFunction, "HIP9011 Settings (knock decoder)" field = "Enabled", isHip9011Enabled diff --git a/firmware/tunerstudio/generated/rusefi_prometheus_469.ini b/firmware/tunerstudio/generated/rusefi_prometheus_469.ini index 84f3077edf..e0b3daebdf 100644 --- a/firmware/tunerstudio/generated/rusefi_prometheus_469.ini +++ b/firmware/tunerstudio/generated/rusefi_prometheus_469.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2020.08.27.prometheus_469.1381327167" + signature = "rusEFI 2020.08.29.prometheus_469.1717795211" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.08.27.prometheus_469.1381327167" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.08.29.prometheus_469.1717795211" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC @@ -74,7 +74,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Thu Aug 27 04:44:27 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Aug 29 01:15:22 UTC 2020 pageSize = 20000 page = 1 @@ -540,7 +540,7 @@ page = 1 showHumanReadableWarning= bits, U32, 976, [9:9], "false", "true" stftIgnoreErrorMagnitude= bits, U32, 976, [10:10], "false", "true" dcMotorIdleValve = bits, U32, 976, [11:11], "false", "true" - unusedBit_251_12 = bits, U32, 976, [12:12], "false", "true" + enableSoftwareKnock = bits, U32, 976, [12:12], "false", "true" unusedBit_251_13 = bits, U32, 976, [13:13], "false", "true" unusedBit_251_14 = bits, U32, 976, [14:14], "false", "true" unusedBit_251_15 = bits, U32, 976, [15:15], "false", "true" @@ -3650,6 +3650,10 @@ cmd_set_engine_type_default = "Z\x00\x31\x00\x00" field = "Pin mode", malfunctionIndicatorPinMode field = "Warning Period", warningPeriod + dialog = softwareKnock, "Software Knock" + field = "Enable", enableSoftwareKnock + field = "Band Freq override", knockBandCustom, {enableSoftwareKnock} + ; Engine->hip9011 Settings dialog = hipFunction, "HIP9011 Settings (knock decoder)" field = "Enabled", isHip9011Enabled diff --git a/firmware/tunerstudio/generated/rusefi_proteus_f4.ini b/firmware/tunerstudio/generated/rusefi_proteus_f4.ini index a76ca8326b..2a131e76c2 100644 --- a/firmware/tunerstudio/generated/rusefi_proteus_f4.ini +++ b/firmware/tunerstudio/generated/rusefi_proteus_f4.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2020.08.27.proteus_f4.2751659738" + signature = "rusEFI 2020.08.29.proteus_f4.1154185072" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.08.27.proteus_f4.2751659738" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.08.29.proteus_f4.1154185072" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC @@ -74,7 +74,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Thu Aug 27 04:44:39 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Aug 29 01:15:26 UTC 2020 pageSize = 20000 page = 1 @@ -540,7 +540,7 @@ page = 1 showHumanReadableWarning= bits, U32, 976, [9:9], "false", "true" stftIgnoreErrorMagnitude= bits, U32, 976, [10:10], "false", "true" dcMotorIdleValve = bits, U32, 976, [11:11], "false", "true" - unusedBit_251_12 = bits, U32, 976, [12:12], "false", "true" + enableSoftwareKnock = bits, U32, 976, [12:12], "false", "true" unusedBit_251_13 = bits, U32, 976, [13:13], "false", "true" unusedBit_251_14 = bits, U32, 976, [14:14], "false", "true" unusedBit_251_15 = bits, U32, 976, [15:15], "false", "true" @@ -2683,6 +2683,7 @@ menuDialog = main subMenu = mc33Dialog, "GDI Dreams" subMenu = std_separator + subMenu = softwareKnock, "Software Knock" subMenu = std_separator subMenu = etbDialog, "Electronic throttle body (beta version)" @@ -3628,6 +3629,10 @@ cmd_set_engine_type_default = "Z\x00\x31\x00\x00" field = "Pin mode", malfunctionIndicatorPinMode field = "Warning Period", warningPeriod + dialog = softwareKnock, "Software Knock" + field = "Enable", enableSoftwareKnock + field = "Band Freq override", knockBandCustom, {enableSoftwareKnock} + ; Engine->hip9011 Settings dialog = hipFunction, "HIP9011 Settings (knock decoder)" field = "Enabled", isHip9011Enabled diff --git a/firmware/tunerstudio/generated/rusefi_proteus_f7.ini b/firmware/tunerstudio/generated/rusefi_proteus_f7.ini index 440b526e31..e21b6dd6fa 100644 --- a/firmware/tunerstudio/generated/rusefi_proteus_f7.ini +++ b/firmware/tunerstudio/generated/rusefi_proteus_f7.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2020.08.27.proteus_f7.2751659738" + signature = "rusEFI 2020.08.29.proteus_f7.1154185072" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.08.27.proteus_f7.2751659738" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.08.29.proteus_f7.1154185072" ; signature is expected to be 7 or more characters. [Constants] ; new packet serial format with CRC @@ -74,7 +74,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Thu Aug 27 04:44:30 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Aug 29 01:15:25 UTC 2020 pageSize = 20000 page = 1 @@ -540,7 +540,7 @@ page = 1 showHumanReadableWarning= bits, U32, 976, [9:9], "false", "true" stftIgnoreErrorMagnitude= bits, U32, 976, [10:10], "false", "true" dcMotorIdleValve = bits, U32, 976, [11:11], "false", "true" - unusedBit_251_12 = bits, U32, 976, [12:12], "false", "true" + enableSoftwareKnock = bits, U32, 976, [12:12], "false", "true" unusedBit_251_13 = bits, U32, 976, [13:13], "false", "true" unusedBit_251_14 = bits, U32, 976, [14:14], "false", "true" unusedBit_251_15 = bits, U32, 976, [15:15], "false", "true" @@ -2683,6 +2683,7 @@ menuDialog = main subMenu = mc33Dialog, "GDI Dreams" subMenu = std_separator + subMenu = softwareKnock, "Software Knock" subMenu = std_separator subMenu = etbDialog, "Electronic throttle body (beta version)" @@ -3628,6 +3629,10 @@ cmd_set_engine_type_default = "Z\x00\x31\x00\x00" field = "Pin mode", malfunctionIndicatorPinMode field = "Warning Period", warningPeriod + dialog = softwareKnock, "Software Knock" + field = "Enable", enableSoftwareKnock + field = "Band Freq override", knockBandCustom, {enableSoftwareKnock} + ; Engine->hip9011 Settings dialog = hipFunction, "HIP9011 Settings (knock decoder)" field = "Enabled", isHip9011Enabled diff --git a/java_console/models/src/main/java/com/rusefi/config/generated/Fields.java b/java_console/models/src/main/java/com/rusefi/config/generated/Fields.java index 8c9afb4a0a..577afefb05 100644 --- a/java_console/models/src/main/java/com/rusefi/config/generated/Fields.java +++ b/java_console/models/src/main/java/com/rusefi/config/generated/Fields.java @@ -1,6 +1,6 @@ package com.rusefi.config.generated; -// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Thu Aug 27 04:44:21 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Aug 29 01:15:10 UTC 2020 // by class com.rusefi.output.FileJavaFieldsConsumer import com.rusefi.config.*; @@ -315,6 +315,7 @@ public class Fields { public static final int enableInnovateLC2_offset = 976; public static final int enableLaunchBoost_offset = 976; public static final int enableLaunchRetard_offset = 976; + public static final int enableSoftwareKnock_offset = 976; public static final int enableVerboseCan2Tx_offset = 2116; public static final int enableVerboseCanTx_offset = 744; public static final int engine_configuration_s_size = 6000; @@ -1081,7 +1082,7 @@ public class Fields { public static final int servoOutputPins8_offset = 3147; public static final int showHumanReadableWarning_offset = 976; public static final int showSdCardWarning_offset = 76; - public static final int SIGNATURE_HASH = 1168318593; + public static final int SIGNATURE_HASH = 1905604661; public static final int silentTriggerError_offset = 1464; public static final int slowAdcAlpha_offset = 2088; public static final int sparkDwellRpmBins_offset = 332; @@ -1338,7 +1339,7 @@ public class Fields { public static final char TS_SD_R_COMMAND = 'r'; public static final char TS_SD_W_COMMAND = 'w'; public static final char TS_SET_LOGGER_SWITCH = 'l'; - public static final String TS_SIGNATURE = "rusEFI 2020.08.27.all.1168318593"; + public static final String TS_SIGNATURE = "rusEFI 2020.08.29.all.1905604661"; public static final char TS_SINGLE_WRITE_COMMAND = 'W'; public static final int tunerStudioSerialSpeed_offset = 728; public static final int twoWireBatchIgnition_offset = 1476; @@ -1380,7 +1381,6 @@ public class Fields { public static final int unusedAuxVoltage1_TODO_332_offset = 2713; public static final int unusedAuxVoltage2_TODO_332_offset = 2714; public static final int unusedBit4_1476_offset = 1476; - public static final int unusedBit_251_12_offset = 976; public static final int unusedBit_251_13_offset = 976; public static final int unusedBit_251_14_offset = 976; public static final int unusedBit_251_15_offset = 976; @@ -1954,7 +1954,7 @@ public class Fields { public static final Field SHOWHUMANREADABLEWARNING = Field.create("SHOWHUMANREADABLEWARNING", 976, FieldType.BIT, 9); public static final Field STFTIGNOREERRORMAGNITUDE = Field.create("STFTIGNOREERRORMAGNITUDE", 976, FieldType.BIT, 10); public static final Field DCMOTORIDLEVALVE = Field.create("DCMOTORIDLEVALVE", 976, FieldType.BIT, 11); - public static final Field UNUSEDBIT_251_12 = Field.create("UNUSEDBIT_251_12", 976, FieldType.BIT, 12); + public static final Field ENABLESOFTWAREKNOCK = Field.create("ENABLESOFTWAREKNOCK", 976, FieldType.BIT, 12); public static final Field UNUSEDBIT_251_13 = Field.create("UNUSEDBIT_251_13", 976, FieldType.BIT, 13); public static final Field UNUSEDBIT_251_14 = Field.create("UNUSEDBIT_251_14", 976, FieldType.BIT, 14); public static final Field UNUSEDBIT_251_15 = Field.create("UNUSEDBIT_251_15", 976, FieldType.BIT, 15); @@ -2978,7 +2978,7 @@ public class Fields { SHOWHUMANREADABLEWARNING, STFTIGNOREERRORMAGNITUDE, DCMOTORIDLEVALVE, - UNUSEDBIT_251_12, + ENABLESOFTWAREKNOCK, UNUSEDBIT_251_13, UNUSEDBIT_251_14, UNUSEDBIT_251_15, diff --git a/java_console/rusefi.xml b/java_console/rusefi.xml index dc3c060abb..36c0669393 100644 --- a/java_console/rusefi.xml +++ b/java_console/rusefi.xml @@ -1,6 +1,6 @@ - +