From 177328e736ad39b93243d337fc278b734c190b1b Mon Sep 17 00:00:00 2001 From: GitHub build-firmware Action Date: Wed, 2 Dec 2020 18:40:45 +0000 Subject: [PATCH] Auto-generated configs and docs --- ...ngine_configuration_generated_structures.h | 4 ++-- .../controllers/algo/rusefi_generated.h | 8 ++++---- ...ngine_configuration_generated_structures.h | 4 ++-- .../controllers/algo/rusefi_generated.h | 8 ++++---- ...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 | 8 ++++---- .../controllers/generated/signature_all.h | 4 ++-- .../generated/signature_frankenso_na6.h | 4 ++-- .../generated/signature_hellen_cypress.h | 4 ++-- .../controllers/generated/signature_kin.h | 4 ++-- .../controllers/generated/signature_mre_f4.h | 4 ++-- .../controllers/generated/signature_mre_f7.h | 4 ++-- .../generated/signature_prometheus_405.h | 4 ++-- .../generated/signature_prometheus_469.h | 4 ++-- .../generated/signature_proteus_f4.h | 4 ++-- .../generated/signature_proteus_f7.h | 4 ++-- firmware/tunerstudio/generated/cache.zip | Bin 968665 -> 968655 bytes firmware/tunerstudio/generated/rusefi.ini | 8 ++++---- .../generated/rusefi_frankenso_na6.ini | 8 ++++---- .../generated/rusefi_hellen_cypress.ini | 8 ++++---- .../tunerstudio/generated/rusefi_kinetis.ini | 8 ++++---- .../tunerstudio/generated/rusefi_mre_f4.ini | 8 ++++---- .../tunerstudio/generated/rusefi_mre_f7.ini | 8 ++++---- .../generated/rusefi_prometheus_405.ini | 8 ++++---- .../generated/rusefi_prometheus_469.ini | 8 ++++---- .../generated/rusefi_proteus_f4.ini | 8 ++++---- .../generated/rusefi_proteus_f7.ini | 8 ++++---- .../com/rusefi/config/generated/Fields.java | 7 +++---- java_console/rusefi.xml | 2 +- 33 files changed, 86 insertions(+), 87 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 7eaad7906e..dea78d57f5 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 Nov 30 05:13:50 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on hellen_cypress_gen_config.bat integration/rusefi_config.txt Wed Dec 02 18:40:21 UTC 2020 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once @@ -3778,4 +3778,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 Nov 30 05:13:50 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on hellen_cypress_gen_config.bat integration/rusefi_config.txt Wed Dec 02 18:40: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 09366a2d43..060efbd68b 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 @@ -1212,8 +1212,8 @@ #define showHumanReadableWarning_offset 976 #define showSdCardWarning_offset 76 #define SIGNATURE_BOARD hellen_cypress -#define SIGNATURE_DATE 2020.11.30 -#define SIGNATURE_HASH 2755964311 +#define SIGNATURE_DATE 2020.12.02 +#define SIGNATURE_HASH 144284067 #define silentTriggerError_offset 1464 #define slowAdcAlpha_offset 2088 #define sparkDwellRpmBins_offset 332 @@ -1492,7 +1492,7 @@ #define TS_ONLINE_PROTOCOL_char z #define TS_OUTPUT_COMMAND 'O' #define TS_OUTPUT_COMMAND_char O -#define TS_OUTPUT_SIZE 288 +#define TS_OUTPUT_SIZE 340 #define TS_PAGE_COMMAND 'P' #define TS_PAGE_COMMAND_char P #define TS_PERF_TRACE_BEGIN '_' @@ -1543,7 +1543,7 @@ #define ts_show_spi true #define ts_show_trigger_comparator false #define ts_show_tunerstudio_port true -#define TS_SIGNATURE "rusEFI 2020.11.30.hellen_cypress.2755964311" +#define TS_SIGNATURE "rusEFI 2020.12.02.hellen_cypress.144284067" #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 ccc6398cd7..fe372d84a3 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 Nov 30 05:13:48 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Wed Dec 02 18:40:19 UTC 2020 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once @@ -3778,4 +3778,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 Nov 30 05:13:48 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Wed Dec 02 18:40:19 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 34e2a754b9..e6f41a8cc0 100644 --- a/firmware/config/boards/kinetis/config/controllers/algo/rusefi_generated.h +++ b/firmware/config/boards/kinetis/config/controllers/algo/rusefi_generated.h @@ -1212,8 +1212,8 @@ #define showHumanReadableWarning_offset 976 #define showSdCardWarning_offset 76 #define SIGNATURE_BOARD kin -#define SIGNATURE_DATE 2020.11.30 -#define SIGNATURE_HASH 4116223853 +#define SIGNATURE_DATE 2020.12.02 +#define SIGNATURE_HASH 1501930329 #define silentTriggerError_offset 1464 #define slowAdcAlpha_offset 2088 #define sparkDwellRpmBins_offset 332 @@ -1492,7 +1492,7 @@ #define TS_ONLINE_PROTOCOL_char z #define TS_OUTPUT_COMMAND 'O' #define TS_OUTPUT_COMMAND_char O -#define TS_OUTPUT_SIZE 288 +#define TS_OUTPUT_SIZE 340 #define TS_PAGE_COMMAND 'P' #define TS_PAGE_COMMAND_char P #define TS_PERF_TRACE_BEGIN '_' @@ -1543,7 +1543,7 @@ #define ts_show_spi true #define ts_show_trigger_comparator true #define ts_show_tunerstudio_port true -#define TS_SIGNATURE "rusEFI 2020.11.30.kin.4116223853" +#define TS_SIGNATURE "rusEFI 2020.12.02.kin.1501930329" #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 3d3ddbd81e..57a0ef7b60 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 Nov 30 05:13:27 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Wed Dec 02 18:39:56 UTC 2020 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once @@ -3778,4 +3778,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 Nov 30 05:13:27 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Wed Dec 02 18:39:56 UTC 2020 diff --git a/firmware/controllers/generated/fsio_enums_generated.def b/firmware/controllers/generated/fsio_enums_generated.def index d2426af17b..7cdd299421 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 Nov 30 05:13:27 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Wed Dec 02 18:39:56 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 41ee584b76..912c19cf43 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 Nov 30 05:13:27 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Wed Dec 02 18:39:56 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 325b2971e5..f87df2b4f5 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 Nov 30 05:13:27 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Wed Dec 02 18:39:56 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 72f2d712e6..8ce1d40480 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 Nov 30 05:13:27 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Wed Dec 02 18:39:56 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 3bad9db78a..8b29ffec35 100644 --- a/firmware/controllers/generated/rusefi_generated.h +++ b/firmware/controllers/generated/rusefi_generated.h @@ -1212,8 +1212,8 @@ #define showHumanReadableWarning_offset 976 #define showSdCardWarning_offset 76 #define SIGNATURE_BOARD all -#define SIGNATURE_DATE 2020.11.30 -#define SIGNATURE_HASH 1840581460 +#define SIGNATURE_DATE 2020.12.02 +#define SIGNATURE_HASH 3244834656 #define silentTriggerError_offset 1464 #define slowAdcAlpha_offset 2088 #define sparkDwellRpmBins_offset 332 @@ -1492,7 +1492,7 @@ #define TS_ONLINE_PROTOCOL_char z #define TS_OUTPUT_COMMAND 'O' #define TS_OUTPUT_COMMAND_char O -#define TS_OUTPUT_SIZE 288 +#define TS_OUTPUT_SIZE 340 #define TS_PAGE_COMMAND 'P' #define TS_PAGE_COMMAND_char P #define TS_PERF_TRACE_BEGIN '_' @@ -1543,7 +1543,7 @@ #define ts_show_spi true #define ts_show_trigger_comparator false #define ts_show_tunerstudio_port true -#define TS_SIGNATURE "rusEFI 2020.11.30.all.1840581460" +#define TS_SIGNATURE "rusEFI 2020.12.02.all.3244834656" #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 3e3a2d28b6..213c758deb 100644 --- a/firmware/controllers/generated/signature_all.h +++ b/firmware/controllers/generated/signature_all.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD all #define SIGNATURE_DATE 2020.12.02 -#define SIGNATURE_HASH 2942479568 -#define TS_SIGNATURE "rusEFI 2020.12.02.all.2942479568" +#define SIGNATURE_HASH 3244834656 +#define TS_SIGNATURE "rusEFI 2020.12.02.all.3244834656" diff --git a/firmware/controllers/generated/signature_frankenso_na6.h b/firmware/controllers/generated/signature_frankenso_na6.h index 1fc7021c5b..21868d10f1 100644 --- a/firmware/controllers/generated/signature_frankenso_na6.h +++ b/firmware/controllers/generated/signature_frankenso_na6.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD frankenso_na6 #define SIGNATURE_DATE 2020.12.02 -#define SIGNATURE_HASH 957488427 -#define TS_SIGNATURE "rusEFI 2020.12.02.frankenso_na6.957488427" +#define SIGNATURE_HASH 1461227163 +#define TS_SIGNATURE "rusEFI 2020.12.02.frankenso_na6.1461227163" diff --git a/firmware/controllers/generated/signature_hellen_cypress.h b/firmware/controllers/generated/signature_hellen_cypress.h index 6f27be9a60..3f1dc16cb9 100644 --- a/firmware/controllers/generated/signature_hellen_cypress.h +++ b/firmware/controllers/generated/signature_hellen_cypress.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD hellen_cypress #define SIGNATURE_DATE 2020.12.02 -#define SIGNATURE_HASH 1720912403 -#define TS_SIGNATURE "rusEFI 2020.12.02.hellen_cypress.1720912403" +#define SIGNATURE_HASH 144284067 +#define TS_SIGNATURE "rusEFI 2020.12.02.hellen_cypress.144284067" diff --git a/firmware/controllers/generated/signature_kin.h b/firmware/controllers/generated/signature_kin.h index 8d020d6b71..96c829058b 100644 --- a/firmware/controllers/generated/signature_kin.h +++ b/firmware/controllers/generated/signature_kin.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD kin #define SIGNATURE_DATE 2020.12.02 -#define SIGNATURE_HASH 932131049 -#define TS_SIGNATURE "rusEFI 2020.12.02.kin.932131049" +#define SIGNATURE_HASH 1501930329 +#define TS_SIGNATURE "rusEFI 2020.12.02.kin.1501930329" diff --git a/firmware/controllers/generated/signature_mre_f4.h b/firmware/controllers/generated/signature_mre_f4.h index 4b315a75f4..d20b0ccf39 100644 --- a/firmware/controllers/generated/signature_mre_f4.h +++ b/firmware/controllers/generated/signature_mre_f4.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD mre_f4 #define SIGNATURE_DATE 2020.12.02 -#define SIGNATURE_HASH 3098702505 -#define TS_SIGNATURE "rusEFI 2020.12.02.mre_f4.3098702505" +#define SIGNATURE_HASH 3602440473 +#define TS_SIGNATURE "rusEFI 2020.12.02.mre_f4.3602440473" diff --git a/firmware/controllers/generated/signature_mre_f7.h b/firmware/controllers/generated/signature_mre_f7.h index ff5dd8c5f5..2a9b9a2e51 100644 --- a/firmware/controllers/generated/signature_mre_f7.h +++ b/firmware/controllers/generated/signature_mre_f7.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD mre_f7 #define SIGNATURE_DATE 2020.12.02 -#define SIGNATURE_HASH 3098702505 -#define TS_SIGNATURE "rusEFI 2020.12.02.mre_f7.3098702505" +#define SIGNATURE_HASH 3602440473 +#define TS_SIGNATURE "rusEFI 2020.12.02.mre_f7.3602440473" diff --git a/firmware/controllers/generated/signature_prometheus_405.h b/firmware/controllers/generated/signature_prometheus_405.h index b12c1d1d95..45c3df0e5a 100644 --- a/firmware/controllers/generated/signature_prometheus_405.h +++ b/firmware/controllers/generated/signature_prometheus_405.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD prometheus_405 #define SIGNATURE_DATE 2020.12.02 -#define SIGNATURE_HASH 3988433537 -#define TS_SIGNATURE "rusEFI 2020.12.02.prometheus_405.3988433537" +#define SIGNATURE_HASH 2209364273 +#define TS_SIGNATURE "rusEFI 2020.12.02.prometheus_405.2209364273" diff --git a/firmware/controllers/generated/signature_prometheus_469.h b/firmware/controllers/generated/signature_prometheus_469.h index f5fe3a8dea..1613e60677 100644 --- a/firmware/controllers/generated/signature_prometheus_469.h +++ b/firmware/controllers/generated/signature_prometheus_469.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD prometheus_469 #define SIGNATURE_DATE 2020.12.02 -#define SIGNATURE_HASH 3988433537 -#define TS_SIGNATURE "rusEFI 2020.12.02.prometheus_469.3988433537" +#define SIGNATURE_HASH 2209364273 +#define TS_SIGNATURE "rusEFI 2020.12.02.prometheus_469.2209364273" diff --git a/firmware/controllers/generated/signature_proteus_f4.h b/firmware/controllers/generated/signature_proteus_f4.h index 2831266598..542c435634 100644 --- a/firmware/controllers/generated/signature_proteus_f4.h +++ b/firmware/controllers/generated/signature_proteus_f4.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD proteus_f4 #define SIGNATURE_DATE 2020.12.02 -#define SIGNATURE_HASH 1724442126 -#define TS_SIGNATURE "rusEFI 2020.12.02.proteus_f4.1724442126" +#define SIGNATURE_HASH 146961854 +#define TS_SIGNATURE "rusEFI 2020.12.02.proteus_f4.146961854" diff --git a/firmware/controllers/generated/signature_proteus_f7.h b/firmware/controllers/generated/signature_proteus_f7.h index dbcb3be431..42fd52241a 100644 --- a/firmware/controllers/generated/signature_proteus_f7.h +++ b/firmware/controllers/generated/signature_proteus_f7.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD proteus_f7 #define SIGNATURE_DATE 2020.12.02 -#define SIGNATURE_HASH 1724442126 -#define TS_SIGNATURE "rusEFI 2020.12.02.proteus_f7.1724442126" +#define SIGNATURE_HASH 146961854 +#define TS_SIGNATURE "rusEFI 2020.12.02.proteus_f7.146961854" diff --git a/firmware/tunerstudio/generated/cache.zip b/firmware/tunerstudio/generated/cache.zip index 0667f7d7d76246834015b1fdc28d9710cb5ccf57..1c5c471109a7801464cd2eea804c71e7679febea 100644 GIT binary patch delta 281303 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 Q455ElE1-WsBG7;QKTk-ZvH$=8 delta 281435 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 diff --git a/firmware/tunerstudio/generated/rusefi.ini b/firmware/tunerstudio/generated/rusefi.ini index 51961d0f5d..631c213907 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.02.all.2942479568" + signature = "rusEFI 2020.12.02.all.3244834656" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.02.all.2942479568" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.02.all.3244834656" ; 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 Wed Dec 02 16:13:32 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Wed Dec 02 18:39:56 UTC 2020 pageSize = 20000 page = 1 @@ -1552,7 +1552,7 @@ page = 1 ochGetCommand = "O%2o%2c" ; see TS_OUTPUT_SIZE in console source code - ochBlockSize = 288 + ochBlockSize = 340 ; ; see TunerStudioOutputChannels struct diff --git a/firmware/tunerstudio/generated/rusefi_frankenso_na6.ini b/firmware/tunerstudio/generated/rusefi_frankenso_na6.ini index 4f1d35d132..01b61e1f18 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.02.frankenso_na6.957488427" + signature = "rusEFI 2020.12.02.frankenso_na6.1461227163" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.02.frankenso_na6.957488427" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.02.frankenso_na6.1461227163" ; 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 Wed Dec 02 16:13:45 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Wed Dec 02 18:40:03 UTC 2020 pageSize = 20000 page = 1 @@ -1552,7 +1552,7 @@ page = 1 ochGetCommand = "O%2o%2c" ; see TS_OUTPUT_SIZE in console source code - ochBlockSize = 288 + ochBlockSize = 340 ; ; see TunerStudioOutputChannels struct diff --git a/firmware/tunerstudio/generated/rusefi_hellen_cypress.ini b/firmware/tunerstudio/generated/rusefi_hellen_cypress.ini index ff44c08913..bc4ad9a7dd 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.02.hellen_cypress.1720912403" + signature = "rusEFI 2020.12.02.hellen_cypress.144284067" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.02.hellen_cypress.1720912403" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.02.hellen_cypress.144284067" ; 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 Wed Dec 02 16:13:59 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on hellen_cypress_gen_config.bat integration/rusefi_config.txt Wed Dec 02 18:40:21 UTC 2020 pageSize = 20000 page = 1 @@ -1552,7 +1552,7 @@ page = 1 ochGetCommand = "O%2o%2c" ; see TS_OUTPUT_SIZE in console source code - ochBlockSize = 288 + ochBlockSize = 340 ; ; see TunerStudioOutputChannels struct diff --git a/firmware/tunerstudio/generated/rusefi_kinetis.ini b/firmware/tunerstudio/generated/rusefi_kinetis.ini index 6a6d46a121..12424d19aa 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.02.kin.932131049" + signature = "rusEFI 2020.12.02.kin.1501930329" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.02.kin.932131049" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.02.kin.1501930329" ; 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 Wed Dec 02 16:13:57 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Wed Dec 02 18:40:19 UTC 2020 pageSize = 20000 page = 1 @@ -1552,7 +1552,7 @@ page = 1 ochGetCommand = "O%2o%2c" ; see TS_OUTPUT_SIZE in console source code - ochBlockSize = 288 + ochBlockSize = 340 ; ; see TunerStudioOutputChannels struct diff --git a/firmware/tunerstudio/generated/rusefi_mre_f4.ini b/firmware/tunerstudio/generated/rusefi_mre_f4.ini index 71316261fe..7e9677d837 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.02.mre_f4.3098702505" + signature = "rusEFI 2020.12.02.mre_f4.3602440473" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.02.mre_f4.3098702505" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.02.mre_f4.3602440473" ; 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 Wed Dec 02 16:13:43 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Wed Dec 02 18:40:01 UTC 2020 pageSize = 20000 page = 1 @@ -1552,7 +1552,7 @@ page = 1 ochGetCommand = "O%2o%2c" ; see TS_OUTPUT_SIZE in console source code - ochBlockSize = 288 + ochBlockSize = 340 ; ; see TunerStudioOutputChannels struct diff --git a/firmware/tunerstudio/generated/rusefi_mre_f7.ini b/firmware/tunerstudio/generated/rusefi_mre_f7.ini index d64a89a311..9bc85579b4 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.02.mre_f7.3098702505" + signature = "rusEFI 2020.12.02.mre_f7.3602440473" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.02.mre_f7.3098702505" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.02.mre_f7.3602440473" ; 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 Wed Dec 02 16:13:38 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Wed Dec 02 18:39:59 UTC 2020 pageSize = 20000 page = 1 @@ -1552,7 +1552,7 @@ page = 1 ochGetCommand = "O%2o%2c" ; see TS_OUTPUT_SIZE in console source code - ochBlockSize = 288 + ochBlockSize = 340 ; ; see TunerStudioOutputChannels struct diff --git a/firmware/tunerstudio/generated/rusefi_prometheus_405.ini b/firmware/tunerstudio/generated/rusefi_prometheus_405.ini index 6af73acf61..7d3bb286c9 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.02.prometheus_405.3988433537" + signature = "rusEFI 2020.12.02.prometheus_405.2209364273" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.02.prometheus_405.3988433537" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.02.prometheus_405.2209364273" ; 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 Wed Dec 02 16:13:50 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Wed Dec 02 18:40:13 UTC 2020 pageSize = 20000 page = 1 @@ -1552,7 +1552,7 @@ page = 1 ochGetCommand = "O%2o%2c" ; see TS_OUTPUT_SIZE in console source code - ochBlockSize = 288 + ochBlockSize = 340 ; ; see TunerStudioOutputChannels struct diff --git a/firmware/tunerstudio/generated/rusefi_prometheus_469.ini b/firmware/tunerstudio/generated/rusefi_prometheus_469.ini index 097b5cd351..caeec898e8 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.02.prometheus_469.3988433537" + signature = "rusEFI 2020.12.02.prometheus_469.2209364273" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.02.prometheus_469.3988433537" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.02.prometheus_469.2209364273" ; 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 Wed Dec 02 16:13:47 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Wed Dec 02 18:40:07 UTC 2020 pageSize = 20000 page = 1 @@ -1552,7 +1552,7 @@ page = 1 ochGetCommand = "O%2o%2c" ; see TS_OUTPUT_SIZE in console source code - ochBlockSize = 288 + ochBlockSize = 340 ; ; see TunerStudioOutputChannels struct diff --git a/firmware/tunerstudio/generated/rusefi_proteus_f4.ini b/firmware/tunerstudio/generated/rusefi_proteus_f4.ini index 272c0511e5..4194777fa2 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.02.proteus_f4.1724442126" + signature = "rusEFI 2020.12.02.proteus_f4.146961854" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.02.proteus_f4.1724442126" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.02.proteus_f4.146961854" ; 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 Wed Dec 02 16:13:55 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Wed Dec 02 18:40:17 UTC 2020 pageSize = 20000 page = 1 @@ -1552,7 +1552,7 @@ page = 1 ochGetCommand = "O%2o%2c" ; see TS_OUTPUT_SIZE in console source code - ochBlockSize = 288 + ochBlockSize = 340 ; ; see TunerStudioOutputChannels struct diff --git a/firmware/tunerstudio/generated/rusefi_proteus_f7.ini b/firmware/tunerstudio/generated/rusefi_proteus_f7.ini index abefff4ed9..3b118c4b09 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.02.proteus_f7.1724442126" + signature = "rusEFI 2020.12.02.proteus_f7.146961854" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.12.02.proteus_f7.1724442126" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.12.02.proteus_f7.146961854" ; 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 Wed Dec 02 16:13:52 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Wed Dec 02 18:40:15 UTC 2020 pageSize = 20000 page = 1 @@ -1552,7 +1552,7 @@ page = 1 ochGetCommand = "O%2o%2c" ; see TS_OUTPUT_SIZE in console source code - ochBlockSize = 288 + ochBlockSize = 340 ; ; see TunerStudioOutputChannels struct 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 f317b131b4..4629807d12 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 Nov 30 05:13:27 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Wed Dec 02 18:39:56 UTC 2020 // by class com.rusefi.output.FileJavaFieldsConsumer import com.rusefi.config.*; @@ -1167,7 +1167,6 @@ 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 = 1840581460; public static final int silentTriggerError_offset = 1464; public static final int slowAdcAlpha_offset = 2088; public static final int sparkDwellRpmBins_offset = 332; @@ -1423,7 +1422,7 @@ public class Fields { public static final char TS_IO_TEST_COMMAND = 'Z'; public static final char TS_ONLINE_PROTOCOL = 'z'; public static final char TS_OUTPUT_COMMAND = 'O'; - public static final int TS_OUTPUT_SIZE = 288; + public static final int TS_OUTPUT_SIZE = 340; public static final char TS_PAGE_COMMAND = 'P'; public static final char TS_PERF_TRACE_BEGIN = '_'; public static final char TS_PERF_TRACE_GET_BUFFER = 'b'; @@ -1447,7 +1446,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.11.30.all.1840581460"; + public static final String TS_SIGNATURE = "rusEFI 2020.12.02.all.3244834656"; public static final char TS_SINGLE_WRITE_COMMAND = 'W'; public static final int TT_TT_60_2_VW = 20; public static final int TT_TT_ONE = 18; diff --git a/java_console/rusefi.xml b/java_console/rusefi.xml index 48c1253dd2..3d502bfdc7 100644 --- a/java_console/rusefi.xml +++ b/java_console/rusefi.xml @@ -1,6 +1,6 @@ - +