From e39133fef10b92fec3e20bec91488dc388621828 Mon Sep 17 00:00:00 2001 From: GitHub build-firmware Action Date: Tue, 17 Nov 2020 00:54:02 +0000 Subject: [PATCH] Auto-generated configs and docs --- ...ngine_configuration_generated_structures.h | 6 +- .../controllers/algo/rusefi_generated.h | 24 ++++---- ...ngine_configuration_generated_structures.h | 6 +- .../controllers/algo/rusefi_generated.h | 24 ++++---- ...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 | 24 ++++---- .../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 963965 -> 963995 bytes firmware/tunerstudio/generated/rusefi.ini | 22 +++---- .../generated/rusefi_frankenso_na6.ini | 22 +++---- .../generated/rusefi_hellen_cypress.ini | 22 +++---- .../tunerstudio/generated/rusefi_kinetis.ini | 22 +++---- .../tunerstudio/generated/rusefi_mre_f4.ini | 22 +++---- .../tunerstudio/generated/rusefi_mre_f7.ini | 22 +++---- .../generated/rusefi_prometheus_405.ini | 22 +++---- .../generated/rusefi_prometheus_469.ini | 22 +++---- .../generated/rusefi_proteus_f4.ini | 22 +++---- .../generated/rusefi_proteus_f7.ini | 22 +++---- .../com/rusefi/config/generated/Fields.java | 57 +++++++++--------- java_console/rusefi.xml | 2 +- 33 files changed, 208 insertions(+), 209 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 ba46dc7603..39ca4f8d16 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 Tue Nov 17 00:45:14 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on hellen_cypress_gen_config.bat integration/rusefi_config.txt Tue Nov 17 00:53:37 UTC 2020 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once @@ -1947,7 +1947,7 @@ struct engine_configuration_s { /** * offset 1088 */ - dc_io etbIo2[DC_PER_STEPPER]; + dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online @@ -3769,4 +3769,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 Tue Nov 17 00:45:14 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on hellen_cypress_gen_config.bat integration/rusefi_config.txt Tue Nov 17 00:53:37 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 ef5a38044f..129232ec4f 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 @@ -433,16 +433,6 @@ #define etbIo1_directionPin2_offset 981 #define etbIo1_disablePin_offset 983 #define etbIo1_offset 980 -#define etbIo21_controlPin1_offset 1090 -#define etbIo21_directionPin1_offset 1088 -#define etbIo21_directionPin2_offset 1089 -#define etbIo21_disablePin_offset 1091 -#define etbIo21_offset 1088 -#define etbIo22_controlPin1_offset 1094 -#define etbIo22_directionPin1_offset 1092 -#define etbIo22_directionPin2_offset 1093 -#define etbIo22_disablePin_offset 1095 -#define etbIo22_offset 1092 #define etbIo2_controlPin1_offset 986 #define etbIo2_directionPin1_offset 984 #define etbIo2_directionPin2_offset 985 @@ -1213,7 +1203,7 @@ #define showSdCardWarning_offset 76 #define SIGNATURE_BOARD hellen_cypress #define SIGNATURE_DATE 2020.11.17 -#define SIGNATURE_HASH 3173308190 +#define SIGNATURE_HASH 1751570025 #define silentTriggerError_offset 1464 #define slowAdcAlpha_offset 2088 #define sparkDwellRpmBins_offset 332 @@ -1249,6 +1239,16 @@ #define startStopButtonMode_offset 1773 #define startStopButtonPin_offset 811 #define startUpFuelPumpDuration_offset 1892 +#define stepperDcIo1_controlPin1_offset 1090 +#define stepperDcIo1_directionPin1_offset 1088 +#define stepperDcIo1_directionPin2_offset 1089 +#define stepperDcIo1_disablePin_offset 1091 +#define stepperDcIo1_offset 1088 +#define stepperDcIo2_controlPin1_offset 1094 +#define stepperDcIo2_directionPin1_offset 1092 +#define stepperDcIo2_directionPin2_offset 1093 +#define stepperDcIo2_disablePin_offset 1095 +#define stepperDcIo2_offset 1092 #define stepperDirectionPinMode_offset 3102 #define stepperEnablePin_offset 3104 #define stepperEnablePinMode_offset 2605 @@ -1533,7 +1533,7 @@ #define ts_show_spi true #define ts_show_trigger_comparator false #define ts_show_tunerstudio_port true -#define TS_SIGNATURE "rusEFI 2020.11.17.hellen_cypress.3173308190" +#define TS_SIGNATURE "rusEFI 2020.11.17.hellen_cypress.1751570025" #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 392aa9fedc..c23fc462c1 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 Tue Nov 17 00:45:12 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Tue Nov 17 00:53:33 UTC 2020 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once @@ -1947,7 +1947,7 @@ struct engine_configuration_s { /** * offset 1088 */ - dc_io etbIo2[DC_PER_STEPPER]; + dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online @@ -3769,4 +3769,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 Tue Nov 17 00:45:12 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Tue Nov 17 00:53:33 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 aaa0e3ff4b..a5ef1feb7e 100644 --- a/firmware/config/boards/kinetis/config/controllers/algo/rusefi_generated.h +++ b/firmware/config/boards/kinetis/config/controllers/algo/rusefi_generated.h @@ -433,16 +433,6 @@ #define etbIo1_directionPin2_offset 981 #define etbIo1_disablePin_offset 983 #define etbIo1_offset 980 -#define etbIo21_controlPin1_offset 1090 -#define etbIo21_directionPin1_offset 1088 -#define etbIo21_directionPin2_offset 1089 -#define etbIo21_disablePin_offset 1091 -#define etbIo21_offset 1088 -#define etbIo22_controlPin1_offset 1094 -#define etbIo22_directionPin1_offset 1092 -#define etbIo22_directionPin2_offset 1093 -#define etbIo22_disablePin_offset 1095 -#define etbIo22_offset 1092 #define etbIo2_controlPin1_offset 986 #define etbIo2_directionPin1_offset 984 #define etbIo2_directionPin2_offset 985 @@ -1213,7 +1203,7 @@ #define showSdCardWarning_offset 76 #define SIGNATURE_BOARD kin #define SIGNATURE_DATE 2020.11.17 -#define SIGNATURE_HASH 3963153892 +#define SIGNATURE_HASH 964357267 #define silentTriggerError_offset 1464 #define slowAdcAlpha_offset 2088 #define sparkDwellRpmBins_offset 332 @@ -1249,6 +1239,16 @@ #define startStopButtonMode_offset 1773 #define startStopButtonPin_offset 811 #define startUpFuelPumpDuration_offset 1892 +#define stepperDcIo1_controlPin1_offset 1090 +#define stepperDcIo1_directionPin1_offset 1088 +#define stepperDcIo1_directionPin2_offset 1089 +#define stepperDcIo1_disablePin_offset 1091 +#define stepperDcIo1_offset 1088 +#define stepperDcIo2_controlPin1_offset 1094 +#define stepperDcIo2_directionPin1_offset 1092 +#define stepperDcIo2_directionPin2_offset 1093 +#define stepperDcIo2_disablePin_offset 1095 +#define stepperDcIo2_offset 1092 #define stepperDirectionPinMode_offset 3102 #define stepperEnablePin_offset 3104 #define stepperEnablePinMode_offset 2605 @@ -1533,7 +1533,7 @@ #define ts_show_spi true #define ts_show_trigger_comparator true #define ts_show_tunerstudio_port true -#define TS_SIGNATURE "rusEFI 2020.11.17.kin.3963153892" +#define TS_SIGNATURE "rusEFI 2020.11.17.kin.964357267" #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 44d37e87bd..907cfd0b00 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 Tue Nov 17 00:44:54 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Nov 17 00:53:17 UTC 2020 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once @@ -1947,7 +1947,7 @@ struct engine_configuration_s { /** * offset 1088 */ - dc_io etbIo2[DC_PER_STEPPER]; + dc_io stepperDcIo[DC_PER_STEPPER]; /** * For example, BMW, GM or Chevrolet * REQUIRED for rusEFI Online @@ -3769,4 +3769,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 Tue Nov 17 00:44:54 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Nov 17 00:53:17 UTC 2020 diff --git a/firmware/controllers/generated/fsio_enums_generated.def b/firmware/controllers/generated/fsio_enums_generated.def index 9907d5226a..a3c51b1ae4 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 Tue Nov 17 00:44:54 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Nov 17 00:53:17 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 424b648e69..fe54803611 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 Tue Nov 17 00:44:54 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Nov 17 00:53:17 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 19c4ac3e9c..6733932e88 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 Tue Nov 17 00:44:54 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Nov 17 00:53:17 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 53783554eb..ab57dcba4d 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 Tue Nov 17 00:44:54 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Tue Nov 17 00:53:17 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 7e6ff82c5a..0485090721 100644 --- a/firmware/controllers/generated/rusefi_generated.h +++ b/firmware/controllers/generated/rusefi_generated.h @@ -433,16 +433,6 @@ #define etbIo1_directionPin2_offset 981 #define etbIo1_disablePin_offset 983 #define etbIo1_offset 980 -#define etbIo21_controlPin1_offset 1090 -#define etbIo21_directionPin1_offset 1088 -#define etbIo21_directionPin2_offset 1089 -#define etbIo21_disablePin_offset 1091 -#define etbIo21_offset 1088 -#define etbIo22_controlPin1_offset 1094 -#define etbIo22_directionPin1_offset 1092 -#define etbIo22_directionPin2_offset 1093 -#define etbIo22_disablePin_offset 1095 -#define etbIo22_offset 1092 #define etbIo2_controlPin1_offset 986 #define etbIo2_directionPin1_offset 984 #define etbIo2_directionPin2_offset 985 @@ -1213,7 +1203,7 @@ #define showSdCardWarning_offset 76 #define SIGNATURE_BOARD all #define SIGNATURE_DATE 2020.11.17 -#define SIGNATURE_HASH 1960145373 +#define SIGNATURE_HASH 2711056554 #define silentTriggerError_offset 1464 #define slowAdcAlpha_offset 2088 #define sparkDwellRpmBins_offset 332 @@ -1249,6 +1239,16 @@ #define startStopButtonMode_offset 1773 #define startStopButtonPin_offset 811 #define startUpFuelPumpDuration_offset 1892 +#define stepperDcIo1_controlPin1_offset 1090 +#define stepperDcIo1_directionPin1_offset 1088 +#define stepperDcIo1_directionPin2_offset 1089 +#define stepperDcIo1_disablePin_offset 1091 +#define stepperDcIo1_offset 1088 +#define stepperDcIo2_controlPin1_offset 1094 +#define stepperDcIo2_directionPin1_offset 1092 +#define stepperDcIo2_directionPin2_offset 1093 +#define stepperDcIo2_disablePin_offset 1095 +#define stepperDcIo2_offset 1092 #define stepperDirectionPinMode_offset 3102 #define stepperEnablePin_offset 3104 #define stepperEnablePinMode_offset 2605 @@ -1533,7 +1533,7 @@ #define ts_show_spi true #define ts_show_trigger_comparator false #define ts_show_tunerstudio_port true -#define TS_SIGNATURE "rusEFI 2020.11.17.all.1960145373" +#define TS_SIGNATURE "rusEFI 2020.11.17.all.2711056554" #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 bbcb32afde..58a6c123ce 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.11.17 -#define SIGNATURE_HASH 1960145373 -#define TS_SIGNATURE "rusEFI 2020.11.17.all.1960145373" +#define SIGNATURE_HASH 2711056554 +#define TS_SIGNATURE "rusEFI 2020.11.17.all.2711056554" diff --git a/firmware/controllers/generated/signature_frankenso_na6.h b/firmware/controllers/generated/signature_frankenso_na6.h index ff3bc0273b..b8dc981d39 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.11.17 -#define SIGNATURE_HASH 3802513446 -#define TS_SIGNATURE "rusEFI 2020.11.17.frankenso_na6.3802513446" +#define SIGNATURE_HASH 937935185 +#define TS_SIGNATURE "rusEFI 2020.11.17.frankenso_na6.937935185" diff --git a/firmware/controllers/generated/signature_hellen_cypress.h b/firmware/controllers/generated/signature_hellen_cypress.h index e6461d4472..808f29df7e 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.11.17 -#define SIGNATURE_HASH 3173308190 -#define TS_SIGNATURE "rusEFI 2020.11.17.hellen_cypress.3173308190" +#define SIGNATURE_HASH 1751570025 +#define TS_SIGNATURE "rusEFI 2020.11.17.hellen_cypress.1751570025" diff --git a/firmware/controllers/generated/signature_kin.h b/firmware/controllers/generated/signature_kin.h index 4e04c276bf..18be3fc5bf 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.11.17 -#define SIGNATURE_HASH 3963153892 -#define TS_SIGNATURE "rusEFI 2020.11.17.kin.3963153892" +#define SIGNATURE_HASH 964357267 +#define TS_SIGNATURE "rusEFI 2020.11.17.kin.964357267" diff --git a/firmware/controllers/generated/signature_mre_f4.h b/firmware/controllers/generated/signature_mre_f4.h index 42b3bf9511..9f532992d0 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.11.17 -#define SIGNATURE_HASH 1661317028 -#define TS_SIGNATURE "rusEFI 2020.11.17.mre_f4.1661317028" +#define SIGNATURE_HASH 3058151123 +#define TS_SIGNATURE "rusEFI 2020.11.17.mre_f4.3058151123" diff --git a/firmware/controllers/generated/signature_mre_f7.h b/firmware/controllers/generated/signature_mre_f7.h index 73f4e94037..9c64e8c681 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.11.17 -#define SIGNATURE_HASH 1661317028 -#define TS_SIGNATURE "rusEFI 2020.11.17.mre_f7.1661317028" +#define SIGNATURE_HASH 3058151123 +#define TS_SIGNATURE "rusEFI 2020.11.17.mre_f7.3058151123" diff --git a/firmware/controllers/generated/signature_prometheus_405.h b/firmware/controllers/generated/signature_prometheus_405.h index 7aa3584a56..da36ad1f22 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.11.17 -#define SIGNATURE_HASH 906852236 -#define TS_SIGNATURE "rusEFI 2020.11.17.prometheus_405.906852236" +#define SIGNATURE_HASH 3813635835 +#define TS_SIGNATURE "rusEFI 2020.11.17.prometheus_405.3813635835" diff --git a/firmware/controllers/generated/signature_prometheus_469.h b/firmware/controllers/generated/signature_prometheus_469.h index 48f9b109be..fe417a5243 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.11.17 -#define SIGNATURE_HASH 906852236 -#define TS_SIGNATURE "rusEFI 2020.11.17.prometheus_469.906852236" +#define SIGNATURE_HASH 3813635835 +#define TS_SIGNATURE "rusEFI 2020.11.17.prometheus_469.3813635835" diff --git a/firmware/controllers/generated/signature_proteus_f4.h b/firmware/controllers/generated/signature_proteus_f4.h index 352838c963..fba09bbb35 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.11.17 -#define SIGNATURE_HASH 3179232003 -#define TS_SIGNATURE "rusEFI 2020.11.17.proteus_f4.3179232003" +#define SIGNATURE_HASH 1748843124 +#define TS_SIGNATURE "rusEFI 2020.11.17.proteus_f4.1748843124" diff --git a/firmware/controllers/generated/signature_proteus_f7.h b/firmware/controllers/generated/signature_proteus_f7.h index dcd3f34697..ad7075e2d7 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.11.17 -#define SIGNATURE_HASH 3179232003 -#define TS_SIGNATURE "rusEFI 2020.11.17.proteus_f7.3179232003" +#define SIGNATURE_HASH 1748843124 +#define TS_SIGNATURE "rusEFI 2020.11.17.proteus_f7.1748843124" diff --git a/firmware/tunerstudio/generated/cache.zip b/firmware/tunerstudio/generated/cache.zip index 7f49a9479a7ceca034d7bbbd394c49fa19f5ec86..be9e24ddc66ae284425a3b60eef5c684979587fb 100644 GIT binary patch delta 111948 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 - +