From b6089a83ee6b6f4a15229d3a43d3769fd85ab86c Mon Sep 17 00:00:00 2001 From: GitHub build-firmware Action Date: Tue, 15 Dec 2020 04:18:45 +0000 Subject: [PATCH] Auto-generated configs and docs --- ...ngine_configuration_generated_structures.h | 4 ++-- .../controllers/algo/rusefi_generated.h | 9 ++++++--- ...ngine_configuration_generated_structures.h | 4 ++-- .../controllers/algo/rusefi_generated.h | 9 ++++++--- ...ngine_configuration_generated_structures.h | 4 ++-- .../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 +++--- .../generated/signature_hellen_cypress.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 977675 -> 977895 bytes firmware/tunerstudio/generated/rusefi.ini | 6 +++--- .../generated/rusefi_frankenso_na6.ini | 6 +++--- .../generated/rusefi_hellen_cypress.ini | 6 +++--- .../tunerstudio/generated/rusefi_kinetis.ini | 6 +++--- .../tunerstudio/generated/rusefi_mre_f4.ini | 6 +++--- .../tunerstudio/generated/rusefi_mre_f7.ini | 6 +++--- .../generated/rusefi_prometheus_405.ini | 6 +++--- .../generated/rusefi_prometheus_469.ini | 6 +++--- .../generated/rusefi_proteus_f4.ini | 6 +++--- .../generated/rusefi_proteus_f7.ini | 6 +++--- .../com/rusefi/config/generated/Fields.java | 7 +++++-- java_console/rusefi.xml | 2 +- 33 files changed, 94 insertions(+), 82 deletions(-) diff --git a/firmware/config/boards/hellen/cypress/config/controllers/algo/engine_configuration_generated_structures.h b/firmware/config/boards/hellen/cypress/config/controllers/algo/engine_configuration_generated_structures.h index 28926c4e74..0273523d17 100644 --- a/firmware/config/boards/hellen/cypress/config/controllers/algo/engine_configuration_generated_structures.h +++ b/firmware/config/boards/hellen/cypress/config/controllers/algo/engine_configuration_generated_structures.h @@ -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 Mon Dec 14 13:31:06 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on hellen_cypress_gen_config.bat integration/rusefi_config.txt Tue Dec 15 04:18:21 UTC 2020 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once @@ -3782,4 +3782,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 hellen_cypress_gen_config.bat integration/rusefi_config.txt Mon Dec 14 13:31:06 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on hellen_cypress_gen_config.bat integration/rusefi_config.txt Tue Dec 15 04:18:21 UTC 2020 diff --git a/firmware/config/boards/hellen/cypress/config/controllers/algo/rusefi_generated.h b/firmware/config/boards/hellen/cypress/config/controllers/algo/rusefi_generated.h index 2ffd01c8bb..b8850f2f87 100644 --- a/firmware/config/boards/hellen/cypress/config/controllers/algo/rusefi_generated.h +++ b/firmware/config/boards/hellen/cypress/config/controllers/algo/rusefi_generated.h @@ -412,6 +412,7 @@ #define ET_MIATA_TCU_PROTEUS 1 #define ET_MRE_BODY_CONTROL 23 #define ET_MRE_DEFAULTS 60 +#define ET_MRE_M111 68 #define ET_MRE_MIATA_94_MAP 20 #define ET_MRE_MIATA_NA6_MAP 66 #define ET_MRE_MIATA_NA6_VAF 12 @@ -420,6 +421,8 @@ #define ET_MRE_NEW_TEST_BOARD 31 #define ET_MRE_OLD_TEST_BOARD 30 #define ET_MRE_SUBARU_EJ18 37 +#define ET_PROTEUS_BMW_M73 63 +#define ET_PROTEUS_MIATA_NB2 67 #define ET_ROVER_V8 10 #define ET_SACHS 29 #define ET_VW_ABA 32 @@ -1225,8 +1228,8 @@ #define showHumanReadableWarning_offset 976 #define showSdCardWarning_offset 76 #define SIGNATURE_BOARD hellen_cypress -#define SIGNATURE_DATE 2020.12.14 -#define SIGNATURE_HASH 1468277235 +#define SIGNATURE_DATE 2020.12.15 +#define SIGNATURE_HASH 1155756160 #define silentTriggerError_offset 1464 #define slowAdcAlpha_offset 2088 #define sparkDwellRpmBins_offset 332 @@ -1557,7 +1560,7 @@ #define ts_show_spi true #define ts_show_trigger_comparator false #define ts_show_tunerstudio_port true -#define TS_SIGNATURE "rusEFI 2020.12.14.hellen_cypress.1468277235" +#define TS_SIGNATURE "rusEFI 2020.12.15.hellen_cypress.1155756160" #define TS_SINGLE_WRITE_COMMAND 'W' #define TS_SINGLE_WRITE_COMMAND_char W #define TS_TEST_COMMAND 't' // 0x74 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 7433ccbe72..56249be082 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 Mon Dec 14 13:31:04 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Tue Dec 15 04:18:20 UTC 2020 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once @@ -3782,4 +3782,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 Mon Dec 14 13:31:04 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Tue Dec 15 04:18:20 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 622206718d..ba6dc8d023 100644 --- a/firmware/config/boards/kinetis/config/controllers/algo/rusefi_generated.h +++ b/firmware/config/boards/kinetis/config/controllers/algo/rusefi_generated.h @@ -412,6 +412,7 @@ #define ET_MIATA_TCU_PROTEUS 1 #define ET_MRE_BODY_CONTROL 23 #define ET_MRE_DEFAULTS 60 +#define ET_MRE_M111 68 #define ET_MRE_MIATA_94_MAP 20 #define ET_MRE_MIATA_NA6_MAP 66 #define ET_MRE_MIATA_NA6_VAF 12 @@ -420,6 +421,8 @@ #define ET_MRE_NEW_TEST_BOARD 31 #define ET_MRE_OLD_TEST_BOARD 30 #define ET_MRE_SUBARU_EJ18 37 +#define ET_PROTEUS_BMW_M73 63 +#define ET_PROTEUS_MIATA_NB2 67 #define ET_ROVER_V8 10 #define ET_SACHS 29 #define ET_VW_ABA 32 @@ -1225,8 +1228,8 @@ #define showHumanReadableWarning_offset 976 #define showSdCardWarning_offset 76 #define SIGNATURE_BOARD kin -#define SIGNATURE_DATE 2020.12.14 -#define SIGNATURE_HASH 110631689 +#define SIGNATURE_DATE 2020.12.15 +#define SIGNATURE_HASH 369052282 #define silentTriggerError_offset 1464 #define slowAdcAlpha_offset 2088 #define sparkDwellRpmBins_offset 332 @@ -1557,7 +1560,7 @@ #define ts_show_spi true #define ts_show_trigger_comparator true #define ts_show_tunerstudio_port true -#define TS_SIGNATURE "rusEFI 2020.12.14.kin.110631689" +#define TS_SIGNATURE "rusEFI 2020.12.15.kin.369052282" #define TS_SINGLE_WRITE_COMMAND 'W' #define TS_SINGLE_WRITE_COMMAND_char W #define TS_TEST_COMMAND 't' // 0x74 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures.h b/firmware/controllers/generated/engine_configuration_generated_structures.h index bec38c0c3c..d46324a836 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 Mon Dec 14 13:30:48 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Dec 15 04:18:06 UTC 2020 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once @@ -3782,4 +3782,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 Mon Dec 14 13:30:48 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Dec 15 04:18:06 UTC 2020 diff --git a/firmware/controllers/generated/fsio_enums_generated.def b/firmware/controllers/generated/fsio_enums_generated.def index 5cac9687e1..d14249c718 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 Mon Dec 14 13:30:48 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Dec 15 04:18:06 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 41802ca555..ba5ab8bf74 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 Mon Dec 14 13:30:48 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Dec 15 04:18:06 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 dd3c4f3368..4c18f65f29 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 Mon Dec 14 13:30:48 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Dec 15 04:18:06 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 bf0a1c189d..e2744c1637 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 Mon Dec 14 13:30:48 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Dec 15 04:18:06 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 5c09c52fd7..90815e4a0e 100644 --- a/firmware/controllers/generated/rusefi_generated.h +++ b/firmware/controllers/generated/rusefi_generated.h @@ -412,6 +412,7 @@ #define ET_MIATA_TCU_PROTEUS 1 #define ET_MRE_BODY_CONTROL 23 #define ET_MRE_DEFAULTS 60 +#define ET_MRE_M111 68 #define ET_MRE_MIATA_94_MAP 20 #define ET_MRE_MIATA_NA6_MAP 66 #define ET_MRE_MIATA_NA6_VAF 12 @@ -420,6 +421,8 @@ #define ET_MRE_NEW_TEST_BOARD 31 #define ET_MRE_OLD_TEST_BOARD 30 #define ET_MRE_SUBARU_EJ18 37 +#define ET_PROTEUS_BMW_M73 63 +#define ET_PROTEUS_MIATA_NB2 67 #define ET_ROVER_V8 10 #define ET_SACHS 29 #define ET_VW_ABA 32 @@ -1225,8 +1228,8 @@ #define showHumanReadableWarning_offset 976 #define showSdCardWarning_offset 76 #define SIGNATURE_BOARD all -#define SIGNATURE_DATE 2020.12.14 -#define SIGNATURE_HASH 2658502448 +#define SIGNATURE_DATE 2020.12.15 +#define SIGNATURE_HASH 2366821955 #define silentTriggerError_offset 1464 #define slowAdcAlpha_offset 2088 #define sparkDwellRpmBins_offset 332 @@ -1557,7 +1560,7 @@ #define ts_show_spi true #define ts_show_trigger_comparator false #define ts_show_tunerstudio_port true -#define TS_SIGNATURE "rusEFI 2020.12.14.all.2658502448" +#define TS_SIGNATURE "rusEFI 2020.12.15.all.2366821955" #define TS_SINGLE_WRITE_COMMAND 'W' #define TS_SINGLE_WRITE_COMMAND_char W #define TS_TEST_COMMAND 't' // 0x74 diff --git a/firmware/controllers/generated/signature_all.h b/firmware/controllers/generated/signature_all.h index 82d678fbc1..63c493fcd6 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.12.14 -#define SIGNATURE_HASH 2658502448 -#define TS_SIGNATURE "rusEFI 2020.12.14.all.2658502448" +#define SIGNATURE_DATE 2020.12.15 +#define SIGNATURE_HASH 2366821955 +#define TS_SIGNATURE "rusEFI 2020.12.15.all.2366821955" diff --git a/firmware/controllers/generated/signature_frankenso_na6.h b/firmware/controllers/generated/signature_frankenso_na6.h index 5cb9b2c48b..a56510d614 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.12.14 -#define SIGNATURE_HASH 134559435 -#define TS_SIGNATURE "rusEFI 2020.12.14.frankenso_na6.134559435" +#define SIGNATURE_DATE 2020.12.15 +#define SIGNATURE_HASH 459433912 +#define TS_SIGNATURE "rusEFI 2020.12.15.frankenso_na6.459433912" diff --git a/firmware/controllers/generated/signature_hellen_cypress.h b/firmware/controllers/generated/signature_hellen_cypress.h index f4b6a8266d..eaf5be1998 100644 --- a/firmware/controllers/generated/signature_hellen_cypress.h +++ b/firmware/controllers/generated/signature_hellen_cypress.h @@ -3,6 +3,6 @@ // #define SIGNATURE_BOARD hellen_cypress -#define SIGNATURE_DATE 2020.12.14 -#define SIGNATURE_HASH 1468277235 -#define TS_SIGNATURE "rusEFI 2020.12.14.hellen_cypress.1468277235" +#define SIGNATURE_DATE 2020.12.15 +#define SIGNATURE_HASH 1155756160 +#define TS_SIGNATURE "rusEFI 2020.12.15.hellen_cypress.1155756160" diff --git a/firmware/controllers/generated/signature_kin.h b/firmware/controllers/generated/signature_kin.h index f94b4c4065..e01bc3bbfc 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.12.14 -#define SIGNATURE_HASH 110631689 -#define TS_SIGNATURE "rusEFI 2020.12.14.kin.110631689" +#define SIGNATURE_DATE 2020.12.15 +#define SIGNATURE_HASH 369052282 +#define TS_SIGNATURE "rusEFI 2020.12.15.kin.369052282" diff --git a/firmware/controllers/generated/signature_mre_f4.h b/firmware/controllers/generated/signature_mre_f4.h index 318c389a7b..98ef510345 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.12.14 -#define SIGNATURE_HASH 2309314889 -#define TS_SIGNATURE "rusEFI 2020.12.14.mre_f4.2309314889" +#define SIGNATURE_DATE 2020.12.15 +#define SIGNATURE_HASH 2596407354 +#define TS_SIGNATURE "rusEFI 2020.12.15.mre_f4.2596407354" diff --git a/firmware/controllers/generated/signature_mre_f7.h b/firmware/controllers/generated/signature_mre_f7.h index ba4ced394b..1fc21430d9 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.12.14 -#define SIGNATURE_HASH 2309314889 -#define TS_SIGNATURE "rusEFI 2020.12.14.mre_f7.2309314889" +#define SIGNATURE_DATE 2020.12.15 +#define SIGNATURE_HASH 2596407354 +#define TS_SIGNATURE "rusEFI 2020.12.15.mre_f7.2596407354" diff --git a/firmware/controllers/generated/signature_prometheus_405.h b/firmware/controllers/generated/signature_prometheus_405.h index 1327319170..2fd1913a1e 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.12.14 -#define SIGNATURE_HASH 3702358369 -#define TS_SIGNATURE "rusEFI 2020.12.14.prometheus_405.3702358369" +#define SIGNATURE_DATE 2020.12.15 +#define SIGNATURE_HASH 3486175250 +#define TS_SIGNATURE "rusEFI 2020.12.15.prometheus_405.3486175250" diff --git a/firmware/controllers/generated/signature_prometheus_469.h b/firmware/controllers/generated/signature_prometheus_469.h index 61f223eece..ebc19a70e1 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.12.14 -#define SIGNATURE_HASH 3702358369 -#define TS_SIGNATURE "rusEFI 2020.12.14.prometheus_469.3702358369" +#define SIGNATURE_DATE 2020.12.15 +#define SIGNATURE_HASH 3486175250 +#define TS_SIGNATURE "rusEFI 2020.12.15.prometheus_469.3486175250" diff --git a/firmware/controllers/generated/signature_proteus_f4.h b/firmware/controllers/generated/signature_proteus_f4.h index ca5a6f78b3..c008fe89d6 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.12.14 -#define SIGNATURE_HASH 1474285038 -#define TS_SIGNATURE "rusEFI 2020.12.14.proteus_f4.1474285038" +#define SIGNATURE_DATE 2020.12.15 +#define SIGNATURE_HASH 1152949405 +#define TS_SIGNATURE "rusEFI 2020.12.15.proteus_f4.1152949405" diff --git a/firmware/controllers/generated/signature_proteus_f7.h b/firmware/controllers/generated/signature_proteus_f7.h index aafffa6d6e..0843aee114 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.12.14 -#define SIGNATURE_HASH 1474285038 -#define TS_SIGNATURE "rusEFI 2020.12.14.proteus_f7.1474285038" +#define SIGNATURE_DATE 2020.12.15 +#define SIGNATURE_HASH 1152949405 +#define TS_SIGNATURE "rusEFI 2020.12.15.proteus_f7.1152949405" diff --git a/firmware/tunerstudio/generated/cache.zip b/firmware/tunerstudio/generated/cache.zip index 27be084aa841a583cff6fe437beb29562df675b9..965823dbb6c67ccbd27e3f2992ddb14f622279a2 100644 GIT binary patch delta 217294 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 delta 217310 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 abEgtmSZT);shalva1Dv1n@XYm>wf@bGlSd! diff --git a/firmware/tunerstudio/generated/rusefi.ini b/firmware/tunerstudio/generated/rusefi.ini index 0f44855739..320d2b8bb4 100644 --- a/firmware/tunerstudio/generated/rusefi.ini +++ b/firmware/tunerstudio/generated/rusefi.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2020.12.14.all.2658502448" + signature = "rusEFI 2020.12.15.all.2366821955" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.14.all.2658502448" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.15.all.2366821955" ; 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 Mon Dec 14 13:30:48 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Dec 15 04:18:06 UTC 2020 pageSize = 20000 page = 1 diff --git a/firmware/tunerstudio/generated/rusefi_frankenso_na6.ini b/firmware/tunerstudio/generated/rusefi_frankenso_na6.ini index f137cf1cd8..e34bda6268 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.12.14.frankenso_na6.134559435" + signature = "rusEFI 2020.12.15.frankenso_na6.459433912" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.14.frankenso_na6.134559435" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.15.frankenso_na6.459433912" ; 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 Mon Dec 14 13:30:54 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Dec 15 04:18:11 UTC 2020 pageSize = 20000 page = 1 diff --git a/firmware/tunerstudio/generated/rusefi_hellen_cypress.ini b/firmware/tunerstudio/generated/rusefi_hellen_cypress.ini index 7331fb00a9..1db3529e47 100644 --- a/firmware/tunerstudio/generated/rusefi_hellen_cypress.ini +++ b/firmware/tunerstudio/generated/rusefi_hellen_cypress.ini @@ -33,12 +33,12 @@ enable2ndByteCanID = false [MegaTune] ; https://rusefi.com/forum/viewtopic.php?p=36201#p36201 - signature = "rusEFI 2020.12.14.hellen_cypress.1468277235" + signature = "rusEFI 2020.12.15.hellen_cypress.1155756160" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.14.hellen_cypress.1468277235" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.15.hellen_cypress.1155756160" ; 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 hellen_cypress_gen_config.bat integration/rusefi_config.txt Mon Dec 14 13:31:06 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on hellen_cypress_gen_config.bat integration/rusefi_config.txt Tue Dec 15 04:18:21 UTC 2020 pageSize = 20000 page = 1 diff --git a/firmware/tunerstudio/generated/rusefi_kinetis.ini b/firmware/tunerstudio/generated/rusefi_kinetis.ini index ebd52a60a7..0e4f8ce185 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.12.14.kin.110631689" + signature = "rusEFI 2020.12.15.kin.369052282" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.14.kin.110631689" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.15.kin.369052282" ; 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 Mon Dec 14 13:31:04 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Tue Dec 15 04:18:20 UTC 2020 pageSize = 20000 page = 1 diff --git a/firmware/tunerstudio/generated/rusefi_mre_f4.ini b/firmware/tunerstudio/generated/rusefi_mre_f4.ini index 51879baf06..d5387a108c 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.12.14.mre_f4.2309314889" + signature = "rusEFI 2020.12.15.mre_f4.2596407354" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.14.mre_f4.2309314889" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.15.mre_f4.2596407354" ; 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 Mon Dec 14 13:30:52 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Dec 15 04:18:09 UTC 2020 pageSize = 20000 page = 1 diff --git a/firmware/tunerstudio/generated/rusefi_mre_f7.ini b/firmware/tunerstudio/generated/rusefi_mre_f7.ini index c66de87aee..f7180d0e6e 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.12.14.mre_f7.2309314889" + signature = "rusEFI 2020.12.15.mre_f7.2596407354" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.14.mre_f7.2309314889" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.15.mre_f7.2596407354" ; 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 Mon Dec 14 13:30:50 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Dec 15 04:18:08 UTC 2020 pageSize = 20000 page = 1 diff --git a/firmware/tunerstudio/generated/rusefi_prometheus_405.ini b/firmware/tunerstudio/generated/rusefi_prometheus_405.ini index 4f43394bda..892421e935 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.12.14.prometheus_405.3702358369" + signature = "rusEFI 2020.12.15.prometheus_405.3486175250" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.14.prometheus_405.3702358369" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.15.prometheus_405.3486175250" ; 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 Mon Dec 14 13:30:58 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Dec 15 04:18:15 UTC 2020 pageSize = 20000 page = 1 diff --git a/firmware/tunerstudio/generated/rusefi_prometheus_469.ini b/firmware/tunerstudio/generated/rusefi_prometheus_469.ini index 372a68cc82..4d1cad7d77 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.12.14.prometheus_469.3702358369" + signature = "rusEFI 2020.12.15.prometheus_469.3486175250" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.14.prometheus_469.3702358369" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.15.prometheus_469.3486175250" ; 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 Mon Dec 14 13:30:56 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Dec 15 04:18:13 UTC 2020 pageSize = 20000 page = 1 diff --git a/firmware/tunerstudio/generated/rusefi_proteus_f4.ini b/firmware/tunerstudio/generated/rusefi_proteus_f4.ini index b81da8fdcb..78d7b9d8ab 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.12.14.proteus_f4.1474285038" + signature = "rusEFI 2020.12.15.proteus_f4.1152949405" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.14.proteus_f4.1474285038" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.15.proteus_f4.1152949405" ; 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 Mon Dec 14 13:31:02 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Dec 15 04:18:18 UTC 2020 pageSize = 20000 page = 1 diff --git a/firmware/tunerstudio/generated/rusefi_proteus_f7.ini b/firmware/tunerstudio/generated/rusefi_proteus_f7.ini index d3c48f08ca..607b51aa4c 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.12.14.proteus_f7.1474285038" + signature = "rusEFI 2020.12.15.proteus_f7.1152949405" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.14.proteus_f7.1474285038" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.15.proteus_f7.1152949405" ; 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 Mon Dec 14 13:31:00 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Dec 15 04:18:16 UTC 2020 pageSize = 20000 page = 1 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 a58fde8818..8d4e76eaaf 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 Mon Dec 14 13:30:48 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Dec 15 04:18:06 UTC 2020 // by class com.rusefi.output.FileJavaFieldsConsumer import com.rusefi.config.*; @@ -394,6 +394,7 @@ public class Fields { public static final int ET_MIATA_TCU_PROTEUS = 1; public static final int ET_MRE_BODY_CONTROL = 23; public static final int ET_MRE_DEFAULTS = 60; + public static final int ET_MRE_M111 = 68; public static final int ET_MRE_MIATA_94_MAP = 20; public static final int ET_MRE_MIATA_NA6_MAP = 66; public static final int ET_MRE_MIATA_NA6_VAF = 12; @@ -402,6 +403,8 @@ public class Fields { public static final int ET_MRE_NEW_TEST_BOARD = 31; public static final int ET_MRE_OLD_TEST_BOARD = 30; public static final int ET_MRE_SUBARU_EJ18 = 37; + public static final int ET_PROTEUS_BMW_M73 = 63; + public static final int ET_PROTEUS_MIATA_NB2 = 67; public static final int ET_ROVER_V8 = 10; public static final int ET_SACHS = 29; public static final int ET_VW_ABA = 32; @@ -1460,7 +1463,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.12.14.all.2658502448"; + public static final String TS_SIGNATURE = "rusEFI 2020.12.15.all.2366821955"; public static final char TS_SINGLE_WRITE_COMMAND = 'W'; public static final int TT_TT_1_16 = 50; public static final int TT_TT_2JZ_1_12 = 29; diff --git a/java_console/rusefi.xml b/java_console/rusefi.xml index 09b630deff..1796931700 100644 --- a/java_console/rusefi.xml +++ b/java_console/rusefi.xml @@ -1,6 +1,6 @@ - +