From 4a0f9bebf68420dfde255f25a50e34af9dbdba70 Mon Sep 17 00:00:00 2001 From: GitHub build-firmware Action Date: Sat, 17 Jul 2021 04:49:13 +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 ++-- .../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_f429-discovery.h | 4 ++-- .../generated/signature_frankenso_na6.h | 4 ++-- .../generated/signature_hellen121nissan.h | 4 ++-- .../generated/signature_hellen121vag.h | 4 ++-- .../generated/signature_hellen128.h | 4 ++-- .../generated/signature_hellen72.h | 4 ++-- .../generated/signature_hellenNA6.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 ++-- .../generated/signature_subaru_eg33_f7.h | 4 ++-- firmware/tunerstudio/generated/cache.zip | Bin 1605631 -> 1605444 bytes firmware/tunerstudio/generated/rusefi.ini | 6 +++--- .../generated/rusefi_f429-discovery.ini | 6 +++--- .../generated/rusefi_frankenso_na6.ini | 6 +++--- .../generated/rusefi_hellen121nissan.ini | 6 +++--- .../generated/rusefi_hellen121vag.ini | 6 +++--- .../generated/rusefi_hellen128.ini | 6 +++--- .../tunerstudio/generated/rusefi_hellen72.ini | 6 +++--- .../generated/rusefi_hellenNA6.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 +++--- .../generated/rusefi_subaru_eg33_f7.ini | 6 +++--- .../com/rusefi/config/generated/Fields.java | 7 ++----- java_console/rusefi.xml | 2 +- 49 files changed, 112 insertions(+), 123 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 d54b37c0a0..d968ecc20f 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 Sat Jul 17 03:19:36 UTC 2021 +// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on hellen_cypress_gen_config.bat integration/rusefi_config.txt Sat Jul 17 04:48:27 UTC 2021 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once @@ -4274,4 +4274,4 @@ struct 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 Sat Jul 17 03:19:36 UTC 2021 +// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on hellen_cypress_gen_config.bat integration/rusefi_config.txt Sat Jul 17 04:48:27 UTC 2021 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 15ae8527d0..3d98bebc76 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 @@ -1318,7 +1318,7 @@ #define showSdCardWarning_offset 76 #define SIGNATURE_BOARD hellen_cypress #define SIGNATURE_DATE 2021.07.17 -#define SIGNATURE_HASH 666494073 +#define SIGNATURE_HASH 2163249889 #define silentTriggerError_offset 1464 #define slowAdcAlpha_offset 2088 #define sparkDwellRpmBins_offset 332 @@ -1531,7 +1531,7 @@ #define TRIGGER_SIMULATOR_PIN_COUNT 3 #define trigger_todoRemoveMeOneDay0_offset 528 #define trigger_todoRemoveMeOneDay1_offset 528 -#define trigger_type_e_auto_enum "TT_TOOTHED_WHEEL", "TT_FORD_ASPIRE", "TT_DODGE_NEON_1995", "TT_MAZDA_MIATA_NA", "TT_MAZDA_MIATA_NB1", "TT_GM_7X", "TT_DAIHATSU", "TT_MAZDA_SOHC_4", "TT_TOOTHED_WHEEL_60_2", "TT_TOOTHED_WHEEL_36_1", "TT_HONDA_4_24_1", "TT_MITSUBISHI", "TT_HONDA_4_24", "TT_HONDA_1_4_24", "TT_DODGE_NEON_2003_CAM", "TT_MAZDA_DOHC_1_4", "TT_ONE_PLUS_ONE", "TT_VVT_JZ", "TT_ONE", "TT_DODGE_RAM", "TT_60_2_VW", "TT_HONDA_1_24", "TT_DODGE_STRATUS", "TT_36_2_2_2", "TT_NISSAN_SR20VE", "TT_2JZ_3_34", "TT_ROVER_K", "TT_GM_LS_24", "TT_HONDA_CBR_600", "TT_2JZ_1_12", "TT_CHRYSLER_NGC_36_2_2", "TT_3_1_CAM", "TT_DODGE_NEON_2003_CRANK", "TT_MIATA_VVT", "TT_HONDA_ACCORD_1_24_SHIFTED", "TT_MAZDA_MIATA_VVT_TEST", "TT_SUBARU_7_6", "TT_JEEP_18_2_2_2", "TT_NISSAN_SR20VE_360", "TT_DODGE_NEON_1995_ONLY_CRANK", "TT_JEEP_4_CYL", "TT_FIAT_IAW_P8", "TT_FORD_ST170", "TT_VVT_MIATA_NB2", "TT_RENIX_44_2_2", "TT_RENIX_66_2_2_2", "TT_HONDA_K_12_1", "TT_VVT_BOSCH_QUICK_START", "TT_TOOTHED_WHEEL_36_2", "TT_SUBARU_SVX", "TT_1_16", "TT_SUBARU_7_WITHOUT_6", "TT_52", "TT_TRI_TACH", "TT_GM_60_2_2_2", "TT_SKODA_FAVORIT", "TT_VVT_BARRA_3_PLUS_1", "TT_KAWA_KX450F", "TT_NISSAN_VQ", "TT_VVT_NISSAN_VQ", "TT_UNUSED" +#define trigger_type_e_auto_enum "TT_TOOTHED_WHEEL", "TT_FORD_ASPIRE", "TT_DODGE_NEON_1995", "TT_MAZDA_MIATA_NA", "TT_MAZDA_MIATA_NB1", "TT_GM_7X", "TT_DAIHATSU", "TT_MAZDA_SOHC_4", "TT_TOOTHED_WHEEL_60_2", "TT_TOOTHED_WHEEL_36_1", "TT_HONDA_4_24_1", "TT_MITSUBISHI", "TT_HONDA_4_24", "TT_HONDA_1_4_24", "TT_DODGE_NEON_2003_CAM", "TT_MAZDA_DOHC_1_4", "TT_ONE_PLUS_ONE", "TT_VVT_JZ", "TT_ONE", "TT_DODGE_RAM", "TT_60_2_VW", "TT_HONDA_1_24", "TT_DODGE_STRATUS", "TT_36_2_2_2", "TT_NISSAN_SR20VE", "TT_2JZ_3_34", "TT_ROVER_K", "TT_GM_LS_24", "TT_HONDA_CBR_600", "TT_2JZ_1_12", "TT_CHRYSLER_NGC_36_2_2", "TT_3_1_CAM", "TT_DODGE_NEON_2003_CRANK", "TT_MIATA_VVT", "TT_HONDA_ACCORD_1_24_SHIFTED", "TT_MAZDA_MIATA_VVT_TEST", "TT_SUBARU_7_6", "TT_JEEP_18_2_2_2", "TT_NISSAN_SR20VE_360", "TT_DODGE_NEON_1995_ONLY_CRANK", "TT_JEEP_4_CYL", "TT_FIAT_IAW_P8", "TT_FORD_ST170", "TT_VVT_MIATA_NB2", "TT_RENIX_44_2_2", "TT_RENIX_66_2_2_2", "TT_HONDA_K_12_1", "TT_VVT_BOSCH_QUICK_START", "TT_TOOTHED_WHEEL_36_2", "TT_SUBARU_SVX", "TT_1_16", "TT_SUBARU_7_WITHOUT_6", "TT_52", "TT_TRI_TACH", "TT_GM_60_2_2_2", "TT_SKODA_FAVORIT", "TT_VVT_BARRA_3_PLUS_1", "TT_KAWA_KX450F", "TT_NISSAN_VQ35", "TT_VVT_NISSAN_VQ35", "TT_NISSAN_VQ30", "TT_UNUSED" #define trigger_type_e_enum "custom toothed wheel", "Ford Aspire", "Dodge Neon 1995", "Miata NA", "Miata NB", "GM_7X", "Cooper R50", "Mazda SOHC 4", "60/2", "36/1", "Honda 4+24+1", "Mitsubishi", "Honda 4+24", "Honda 1+4+24", "Dodge Neon 2003", "Mazda DOHC 1+4", "1+1", "INVALID", "Single Tooth", "Dodge Ram 1+16", "60/2 VW", "Honda 1+24", "Dodge Stratus", "36_2_2_2", "Nissan Primera", "dev 2JZ 3/34 simulator", "Rover K", "GM LS 24", "Honda CBR 600", "2JZ_1_12", "Honda CBR 600 custom", "3/1 skipped", "Dodge Neon 2003 crank", "Miata VVT", "trg34", "trg35", "Subaru 7+6", "Jeep 18-2-2-2", "WIP", "Dodge Neon 1995 crank only", "Jeep XJ 4 cyl", "FiatIAQ_P8", "Mazda Z5", "trg43", "Renix 44-2-2", "Renix 66-2-2-2", "Honda K 12+1", "trg47", "36/2", "Subaru SVX", "1+16", "Subaru 7 without 6", "trg52", "TriTach", "GM 60/2/2/2", "Skoda Favorit", "Barra 3+1 Cam", "Kawa KX450F", "trg58", "trg59", "trg60", "INVALID" #define trigger_type_offset 524 #define trigger_unusedBit_4_10_offset 528 @@ -1687,7 +1687,7 @@ #define ts_show_spi true #define ts_show_trigger_comparator false #define ts_show_tunerstudio_port true -#define TS_SIGNATURE "rusEFI 2021.07.17.hellen_cypress.666494073" +#define TS_SIGNATURE "rusEFI 2021.07.17.hellen_cypress.2163249889" #define TS_SINGLE_WRITE_COMMAND 'W' #define TS_SINGLE_WRITE_COMMAND_char W #define TS_TEST_COMMAND 't' @@ -1719,7 +1719,6 @@ #define TT_TT_MAZDA_MIATA_NB1 4 #define TT_TT_MAZDA_SOHC_4 7 #define TT_TT_MIATA_VVT 33 -#define TT_TT_NISSAN_VQ 58 #define TT_TT_NISSAN_VQ30 60 #define TT_TT_NISSAN_VQ35 58 #define TT_TT_ONE 18 @@ -1739,7 +1738,6 @@ #define TT_TT_VVT_BOSCH_QUICK_START 47 #define TT_TT_VVT_JZ 17 #define TT_TT_VVT_MIATA_NB2 43 -#define TT_TT_VVT_NISSAN_VQ 59 #define TT_TT_VVT_NISSAN_VQ35 59 #define tunerStudioSerialSpeed_offset 728 #define twoWireBatchIgnition_offset 1476 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 25089b24f3..9c62f1b29a 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 Sat Jul 17 03:19:34 UTC 2021 +// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Sat Jul 17 04:48:25 UTC 2021 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once @@ -4268,4 +4268,4 @@ struct persistent_config_s { }; // end -// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Sat Jul 17 03:19:34 UTC 2021 +// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Sat Jul 17 04:48:25 UTC 2021 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 36ab864248..ffd5df0c04 100644 --- a/firmware/config/boards/kinetis/config/controllers/algo/rusefi_generated.h +++ b/firmware/config/boards/kinetis/config/controllers/algo/rusefi_generated.h @@ -1299,7 +1299,7 @@ #define showSdCardWarning_offset 76 #define SIGNATURE_BOARD kin #define SIGNATURE_DATE 2021.07.17 -#define SIGNATURE_HASH 3625724037 +#define SIGNATURE_HASH 2136301085 #define silentTriggerError_offset 1464 #define slowAdcAlpha_offset 2088 #define sparkDwellRpmBins_offset 332 @@ -1512,7 +1512,7 @@ #define TRIGGER_SIMULATOR_PIN_COUNT 3 #define trigger_todoRemoveMeOneDay0_offset 528 #define trigger_todoRemoveMeOneDay1_offset 528 -#define trigger_type_e_auto_enum "TT_TOOTHED_WHEEL", "TT_FORD_ASPIRE", "TT_DODGE_NEON_1995", "TT_MAZDA_MIATA_NA", "TT_MAZDA_MIATA_NB1", "TT_GM_7X", "TT_DAIHATSU", "TT_MAZDA_SOHC_4", "TT_TOOTHED_WHEEL_60_2", "TT_TOOTHED_WHEEL_36_1", "TT_HONDA_4_24_1", "TT_MITSUBISHI", "TT_HONDA_4_24", "TT_HONDA_1_4_24", "TT_DODGE_NEON_2003_CAM", "TT_MAZDA_DOHC_1_4", "TT_ONE_PLUS_ONE", "TT_VVT_JZ", "TT_ONE", "TT_DODGE_RAM", "TT_60_2_VW", "TT_HONDA_1_24", "TT_DODGE_STRATUS", "TT_36_2_2_2", "TT_NISSAN_SR20VE", "TT_2JZ_3_34", "TT_ROVER_K", "TT_GM_LS_24", "TT_HONDA_CBR_600", "TT_2JZ_1_12", "TT_CHRYSLER_NGC_36_2_2", "TT_3_1_CAM", "TT_DODGE_NEON_2003_CRANK", "TT_MIATA_VVT", "TT_HONDA_ACCORD_1_24_SHIFTED", "TT_MAZDA_MIATA_VVT_TEST", "TT_SUBARU_7_6", "TT_JEEP_18_2_2_2", "TT_NISSAN_SR20VE_360", "TT_DODGE_NEON_1995_ONLY_CRANK", "TT_JEEP_4_CYL", "TT_FIAT_IAW_P8", "TT_FORD_ST170", "TT_VVT_MIATA_NB2", "TT_RENIX_44_2_2", "TT_RENIX_66_2_2_2", "TT_HONDA_K_12_1", "TT_VVT_BOSCH_QUICK_START", "TT_TOOTHED_WHEEL_36_2", "TT_SUBARU_SVX", "TT_1_16", "TT_SUBARU_7_WITHOUT_6", "TT_52", "TT_TRI_TACH", "TT_GM_60_2_2_2", "TT_SKODA_FAVORIT", "TT_VVT_BARRA_3_PLUS_1", "TT_KAWA_KX450F", "TT_NISSAN_VQ", "TT_VVT_NISSAN_VQ", "TT_UNUSED" +#define trigger_type_e_auto_enum "TT_TOOTHED_WHEEL", "TT_FORD_ASPIRE", "TT_DODGE_NEON_1995", "TT_MAZDA_MIATA_NA", "TT_MAZDA_MIATA_NB1", "TT_GM_7X", "TT_DAIHATSU", "TT_MAZDA_SOHC_4", "TT_TOOTHED_WHEEL_60_2", "TT_TOOTHED_WHEEL_36_1", "TT_HONDA_4_24_1", "TT_MITSUBISHI", "TT_HONDA_4_24", "TT_HONDA_1_4_24", "TT_DODGE_NEON_2003_CAM", "TT_MAZDA_DOHC_1_4", "TT_ONE_PLUS_ONE", "TT_VVT_JZ", "TT_ONE", "TT_DODGE_RAM", "TT_60_2_VW", "TT_HONDA_1_24", "TT_DODGE_STRATUS", "TT_36_2_2_2", "TT_NISSAN_SR20VE", "TT_2JZ_3_34", "TT_ROVER_K", "TT_GM_LS_24", "TT_HONDA_CBR_600", "TT_2JZ_1_12", "TT_CHRYSLER_NGC_36_2_2", "TT_3_1_CAM", "TT_DODGE_NEON_2003_CRANK", "TT_MIATA_VVT", "TT_HONDA_ACCORD_1_24_SHIFTED", "TT_MAZDA_MIATA_VVT_TEST", "TT_SUBARU_7_6", "TT_JEEP_18_2_2_2", "TT_NISSAN_SR20VE_360", "TT_DODGE_NEON_1995_ONLY_CRANK", "TT_JEEP_4_CYL", "TT_FIAT_IAW_P8", "TT_FORD_ST170", "TT_VVT_MIATA_NB2", "TT_RENIX_44_2_2", "TT_RENIX_66_2_2_2", "TT_HONDA_K_12_1", "TT_VVT_BOSCH_QUICK_START", "TT_TOOTHED_WHEEL_36_2", "TT_SUBARU_SVX", "TT_1_16", "TT_SUBARU_7_WITHOUT_6", "TT_52", "TT_TRI_TACH", "TT_GM_60_2_2_2", "TT_SKODA_FAVORIT", "TT_VVT_BARRA_3_PLUS_1", "TT_KAWA_KX450F", "TT_NISSAN_VQ35", "TT_VVT_NISSAN_VQ35", "TT_NISSAN_VQ30", "TT_UNUSED" #define trigger_type_e_enum "custom toothed wheel", "Ford Aspire", "Dodge Neon 1995", "Miata NA", "Miata NB", "GM_7X", "Cooper R50", "Mazda SOHC 4", "60/2", "36/1", "Honda 4+24+1", "Mitsubishi", "Honda 4+24", "Honda 1+4+24", "Dodge Neon 2003", "Mazda DOHC 1+4", "1+1", "INVALID", "Single Tooth", "Dodge Ram 1+16", "60/2 VW", "Honda 1+24", "Dodge Stratus", "36_2_2_2", "Nissan Primera", "dev 2JZ 3/34 simulator", "Rover K", "GM LS 24", "Honda CBR 600", "2JZ_1_12", "Honda CBR 600 custom", "3/1 skipped", "Dodge Neon 2003 crank", "Miata VVT", "trg34", "trg35", "Subaru 7+6", "Jeep 18-2-2-2", "WIP", "Dodge Neon 1995 crank only", "Jeep XJ 4 cyl", "FiatIAQ_P8", "Mazda Z5", "trg43", "Renix 44-2-2", "Renix 66-2-2-2", "Honda K 12+1", "trg47", "36/2", "Subaru SVX", "1+16", "Subaru 7 without 6", "trg52", "TriTach", "GM 60/2/2/2", "Skoda Favorit", "Barra 3+1 Cam", "Kawa KX450F", "trg58", "trg59", "trg60", "INVALID" #define trigger_type_offset 524 #define trigger_unusedBit_4_10_offset 528 @@ -1668,7 +1668,7 @@ #define ts_show_spi true #define ts_show_trigger_comparator true #define ts_show_tunerstudio_port true -#define TS_SIGNATURE "rusEFI 2021.07.17.kin.3625724037" +#define TS_SIGNATURE "rusEFI 2021.07.17.kin.2136301085" #define TS_SINGLE_WRITE_COMMAND 'W' #define TS_SINGLE_WRITE_COMMAND_char W #define TS_TEST_COMMAND 't' @@ -1700,7 +1700,6 @@ #define TT_TT_MAZDA_MIATA_NB1 4 #define TT_TT_MAZDA_SOHC_4 7 #define TT_TT_MIATA_VVT 33 -#define TT_TT_NISSAN_VQ 58 #define TT_TT_NISSAN_VQ30 60 #define TT_TT_NISSAN_VQ35 58 #define TT_TT_ONE 18 @@ -1720,7 +1719,6 @@ #define TT_TT_VVT_BOSCH_QUICK_START 47 #define TT_TT_VVT_JZ 17 #define TT_TT_VVT_MIATA_NB2 43 -#define TT_TT_VVT_NISSAN_VQ 59 #define TT_TT_VVT_NISSAN_VQ35 59 #define tunerStudioSerialSpeed_offset 728 #define twoWireBatchIgnition_offset 1476 diff --git a/firmware/config/boards/subaru_eg33/config/controllers/algo/engine_configuration_generated_structures.h b/firmware/config/boards/subaru_eg33/config/controllers/algo/engine_configuration_generated_structures.h index edf1e685db..043dd9597d 100644 --- a/firmware/config/boards/subaru_eg33/config/controllers/algo/engine_configuration_generated_structures.h +++ b/firmware/config/boards/subaru_eg33/config/controllers/algo/engine_configuration_generated_structures.h @@ -1,4 +1,4 @@ -// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on config/boards/subaru_eg33/config/gen_config.sh integration/rusefi_config.txt Sat Jul 17 03:19:38 UTC 2021 +// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on config/boards/subaru_eg33/config/gen_config.sh integration/rusefi_config.txt Sat Jul 17 04:48:29 UTC 2021 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once @@ -4274,4 +4274,4 @@ struct persistent_config_s { }; // end -// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on config/boards/subaru_eg33/config/gen_config.sh integration/rusefi_config.txt Sat Jul 17 03:19:38 UTC 2021 +// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on config/boards/subaru_eg33/config/gen_config.sh integration/rusefi_config.txt Sat Jul 17 04:48:29 UTC 2021 diff --git a/firmware/config/boards/subaru_eg33/config/controllers/algo/rusefi_generated.h b/firmware/config/boards/subaru_eg33/config/controllers/algo/rusefi_generated.h index e3dc839c21..9778244d73 100644 --- a/firmware/config/boards/subaru_eg33/config/controllers/algo/rusefi_generated.h +++ b/firmware/config/boards/subaru_eg33/config/controllers/algo/rusefi_generated.h @@ -1318,7 +1318,7 @@ #define showSdCardWarning_offset 76 #define SIGNATURE_BOARD subaru_eg33_f7 #define SIGNATURE_DATE 2021.07.17 -#define SIGNATURE_HASH 3365482943 +#define SIGNATURE_HASH 1875920679 #define silentTriggerError_offset 1464 #define slowAdcAlpha_offset 2088 #define sparkDwellRpmBins_offset 332 @@ -1531,7 +1531,7 @@ #define TRIGGER_SIMULATOR_PIN_COUNT 3 #define trigger_todoRemoveMeOneDay0_offset 528 #define trigger_todoRemoveMeOneDay1_offset 528 -#define trigger_type_e_auto_enum "TT_TOOTHED_WHEEL", "TT_FORD_ASPIRE", "TT_DODGE_NEON_1995", "TT_MAZDA_MIATA_NA", "TT_MAZDA_MIATA_NB1", "TT_GM_7X", "TT_DAIHATSU", "TT_MAZDA_SOHC_4", "TT_TOOTHED_WHEEL_60_2", "TT_TOOTHED_WHEEL_36_1", "TT_HONDA_4_24_1", "TT_MITSUBISHI", "TT_HONDA_4_24", "TT_HONDA_1_4_24", "TT_DODGE_NEON_2003_CAM", "TT_MAZDA_DOHC_1_4", "TT_ONE_PLUS_ONE", "TT_VVT_JZ", "TT_ONE", "TT_DODGE_RAM", "TT_60_2_VW", "TT_HONDA_1_24", "TT_DODGE_STRATUS", "TT_36_2_2_2", "TT_NISSAN_SR20VE", "TT_2JZ_3_34", "TT_ROVER_K", "TT_GM_LS_24", "TT_HONDA_CBR_600", "TT_2JZ_1_12", "TT_CHRYSLER_NGC_36_2_2", "TT_3_1_CAM", "TT_DODGE_NEON_2003_CRANK", "TT_MIATA_VVT", "TT_HONDA_ACCORD_1_24_SHIFTED", "TT_MAZDA_MIATA_VVT_TEST", "TT_SUBARU_7_6", "TT_JEEP_18_2_2_2", "TT_NISSAN_SR20VE_360", "TT_DODGE_NEON_1995_ONLY_CRANK", "TT_JEEP_4_CYL", "TT_FIAT_IAW_P8", "TT_FORD_ST170", "TT_VVT_MIATA_NB2", "TT_RENIX_44_2_2", "TT_RENIX_66_2_2_2", "TT_HONDA_K_12_1", "TT_VVT_BOSCH_QUICK_START", "TT_TOOTHED_WHEEL_36_2", "TT_SUBARU_SVX", "TT_1_16", "TT_SUBARU_7_WITHOUT_6", "TT_52", "TT_TRI_TACH", "TT_GM_60_2_2_2", "TT_SKODA_FAVORIT", "TT_VVT_BARRA_3_PLUS_1", "TT_KAWA_KX450F", "TT_NISSAN_VQ", "TT_VVT_NISSAN_VQ", "TT_UNUSED" +#define trigger_type_e_auto_enum "TT_TOOTHED_WHEEL", "TT_FORD_ASPIRE", "TT_DODGE_NEON_1995", "TT_MAZDA_MIATA_NA", "TT_MAZDA_MIATA_NB1", "TT_GM_7X", "TT_DAIHATSU", "TT_MAZDA_SOHC_4", "TT_TOOTHED_WHEEL_60_2", "TT_TOOTHED_WHEEL_36_1", "TT_HONDA_4_24_1", "TT_MITSUBISHI", "TT_HONDA_4_24", "TT_HONDA_1_4_24", "TT_DODGE_NEON_2003_CAM", "TT_MAZDA_DOHC_1_4", "TT_ONE_PLUS_ONE", "TT_VVT_JZ", "TT_ONE", "TT_DODGE_RAM", "TT_60_2_VW", "TT_HONDA_1_24", "TT_DODGE_STRATUS", "TT_36_2_2_2", "TT_NISSAN_SR20VE", "TT_2JZ_3_34", "TT_ROVER_K", "TT_GM_LS_24", "TT_HONDA_CBR_600", "TT_2JZ_1_12", "TT_CHRYSLER_NGC_36_2_2", "TT_3_1_CAM", "TT_DODGE_NEON_2003_CRANK", "TT_MIATA_VVT", "TT_HONDA_ACCORD_1_24_SHIFTED", "TT_MAZDA_MIATA_VVT_TEST", "TT_SUBARU_7_6", "TT_JEEP_18_2_2_2", "TT_NISSAN_SR20VE_360", "TT_DODGE_NEON_1995_ONLY_CRANK", "TT_JEEP_4_CYL", "TT_FIAT_IAW_P8", "TT_FORD_ST170", "TT_VVT_MIATA_NB2", "TT_RENIX_44_2_2", "TT_RENIX_66_2_2_2", "TT_HONDA_K_12_1", "TT_VVT_BOSCH_QUICK_START", "TT_TOOTHED_WHEEL_36_2", "TT_SUBARU_SVX", "TT_1_16", "TT_SUBARU_7_WITHOUT_6", "TT_52", "TT_TRI_TACH", "TT_GM_60_2_2_2", "TT_SKODA_FAVORIT", "TT_VVT_BARRA_3_PLUS_1", "TT_KAWA_KX450F", "TT_NISSAN_VQ35", "TT_VVT_NISSAN_VQ35", "TT_NISSAN_VQ30", "TT_UNUSED" #define trigger_type_e_enum "custom toothed wheel", "Ford Aspire", "Dodge Neon 1995", "Miata NA", "Miata NB", "GM_7X", "Cooper R50", "Mazda SOHC 4", "60/2", "36/1", "Honda 4+24+1", "Mitsubishi", "Honda 4+24", "Honda 1+4+24", "Dodge Neon 2003", "Mazda DOHC 1+4", "1+1", "INVALID", "Single Tooth", "Dodge Ram 1+16", "60/2 VW", "Honda 1+24", "Dodge Stratus", "36_2_2_2", "Nissan Primera", "dev 2JZ 3/34 simulator", "Rover K", "GM LS 24", "Honda CBR 600", "2JZ_1_12", "Honda CBR 600 custom", "3/1 skipped", "Dodge Neon 2003 crank", "Miata VVT", "trg34", "trg35", "Subaru 7+6", "Jeep 18-2-2-2", "WIP", "Dodge Neon 1995 crank only", "Jeep XJ 4 cyl", "FiatIAQ_P8", "Mazda Z5", "trg43", "Renix 44-2-2", "Renix 66-2-2-2", "Honda K 12+1", "trg47", "36/2", "Subaru SVX", "1+16", "Subaru 7 without 6", "trg52", "TriTach", "GM 60/2/2/2", "Skoda Favorit", "Barra 3+1 Cam", "Kawa KX450F", "trg58", "trg59", "trg60", "INVALID" #define trigger_type_offset 524 #define trigger_unusedBit_4_10_offset 528 @@ -1687,7 +1687,7 @@ #define ts_show_spi true #define ts_show_trigger_comparator false #define ts_show_tunerstudio_port false -#define TS_SIGNATURE "rusEFI 2021.07.17.subaru_eg33_f7.3365482943" +#define TS_SIGNATURE "rusEFI 2021.07.17.subaru_eg33_f7.1875920679" #define TS_SINGLE_WRITE_COMMAND 'W' #define TS_SINGLE_WRITE_COMMAND_char W #define TS_TEST_COMMAND 't' @@ -1719,7 +1719,6 @@ #define TT_TT_MAZDA_MIATA_NB1 4 #define TT_TT_MAZDA_SOHC_4 7 #define TT_TT_MIATA_VVT 33 -#define TT_TT_NISSAN_VQ 58 #define TT_TT_NISSAN_VQ30 60 #define TT_TT_NISSAN_VQ35 58 #define TT_TT_ONE 18 @@ -1739,7 +1738,6 @@ #define TT_TT_VVT_BOSCH_QUICK_START 47 #define TT_TT_VVT_JZ 17 #define TT_TT_VVT_MIATA_NB2 43 -#define TT_TT_VVT_NISSAN_VQ 59 #define TT_TT_VVT_NISSAN_VQ35 59 #define tunerStudioSerialSpeed_offset 728 #define twoWireBatchIgnition_offset 1476 diff --git a/firmware/controllers/generated/engine_configuration_generated_structures.h b/firmware/controllers/generated/engine_configuration_generated_structures.h index b72dac73b7..cbeacce8fa 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 Sat Jul 17 03:18:59 UTC 2021 +// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Jul 17 04:47:49 UTC 2021 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once @@ -4274,4 +4274,4 @@ struct persistent_config_s { }; // end -// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Jul 17 03:18:59 UTC 2021 +// this section was generated automatically by rusEFI tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Jul 17 04:47:49 UTC 2021 diff --git a/firmware/controllers/generated/fsio_enums_generated.def b/firmware/controllers/generated/fsio_enums_generated.def index 36b5ae447d..46cf7e2c20 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 Sat Jul 17 03:18:59 UTC 2021 +// this file was generated automatically by rusEFI tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Jul 17 04:47:49 UTC 2021 // by class com.rusefi.output.FileFsioSettingsConsumer FSIO_SETTING_ACIDLEEXTRAOFFSET = 1000, diff --git a/firmware/controllers/generated/fsio_getters.def b/firmware/controllers/generated/fsio_getters.def index a5ae0876b7..9f6159e1e8 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 Sat Jul 17 03:18:59 UTC 2021 +// this file was generated automatically by rusEFI tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Jul 17 04:47:49 UTC 2021 // by class com.rusefi.output.FileFsioSettingsConsumer case FSIO_SETTING_ACIDLEEXTRAOFFSET: diff --git a/firmware/controllers/generated/fsio_names.def b/firmware/controllers/generated/fsio_names.def index 79bb761b61..7d0601a902 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 Sat Jul 17 03:18:59 UTC 2021 +// this file was generated automatically by rusEFI tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Jul 17 04:47:49 UTC 2021 // by class com.rusefi.output.FileFsioSettingsConsumer static LENameOrdinalPair leacIdleExtraOffset(FSIO_SETTING_ACIDLEEXTRAOFFSET, "cfg_acIdleExtraOffset"); diff --git a/firmware/controllers/generated/fsio_strings.def b/firmware/controllers/generated/fsio_strings.def index c6cdef9941..e76ea4971a 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 Sat Jul 17 03:18:59 UTC 2021 +// this file was generated automatically by rusEFI tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sat Jul 17 04:47:49 UTC 2021 // by class com.rusefi.output.FileFsioSettingsConsumer case FSIO_SETTING_ACIDLEEXTRAOFFSET: diff --git a/firmware/controllers/generated/rusefi_generated.h b/firmware/controllers/generated/rusefi_generated.h index 678cc152ad..905aba59fb 100644 --- a/firmware/controllers/generated/rusefi_generated.h +++ b/firmware/controllers/generated/rusefi_generated.h @@ -1315,7 +1315,7 @@ #define showSdCardWarning_offset 76 #define SIGNATURE_BOARD all #define SIGNATURE_DATE 2021.07.17 -#define SIGNATURE_HASH 1707425705 +#define SIGNATURE_HASH 3263973681 #define silentTriggerError_offset 1464 #define slowAdcAlpha_offset 2088 #define sparkDwellRpmBins_offset 332 @@ -1528,7 +1528,7 @@ #define TRIGGER_SIMULATOR_PIN_COUNT 3 #define trigger_todoRemoveMeOneDay0_offset 528 #define trigger_todoRemoveMeOneDay1_offset 528 -#define trigger_type_e_auto_enum "TT_TOOTHED_WHEEL", "TT_FORD_ASPIRE", "TT_DODGE_NEON_1995", "TT_MAZDA_MIATA_NA", "TT_MAZDA_MIATA_NB1", "TT_GM_7X", "TT_DAIHATSU", "TT_MAZDA_SOHC_4", "TT_TOOTHED_WHEEL_60_2", "TT_TOOTHED_WHEEL_36_1", "TT_HONDA_4_24_1", "TT_MITSUBISHI", "TT_HONDA_4_24", "TT_HONDA_1_4_24", "TT_DODGE_NEON_2003_CAM", "TT_MAZDA_DOHC_1_4", "TT_ONE_PLUS_ONE", "TT_VVT_JZ", "TT_ONE", "TT_DODGE_RAM", "TT_60_2_VW", "TT_HONDA_1_24", "TT_DODGE_STRATUS", "TT_36_2_2_2", "TT_NISSAN_SR20VE", "TT_2JZ_3_34", "TT_ROVER_K", "TT_GM_LS_24", "TT_HONDA_CBR_600", "TT_2JZ_1_12", "TT_CHRYSLER_NGC_36_2_2", "TT_3_1_CAM", "TT_DODGE_NEON_2003_CRANK", "TT_MIATA_VVT", "TT_HONDA_ACCORD_1_24_SHIFTED", "TT_MAZDA_MIATA_VVT_TEST", "TT_SUBARU_7_6", "TT_JEEP_18_2_2_2", "TT_NISSAN_SR20VE_360", "TT_DODGE_NEON_1995_ONLY_CRANK", "TT_JEEP_4_CYL", "TT_FIAT_IAW_P8", "TT_FORD_ST170", "TT_VVT_MIATA_NB2", "TT_RENIX_44_2_2", "TT_RENIX_66_2_2_2", "TT_HONDA_K_12_1", "TT_VVT_BOSCH_QUICK_START", "TT_TOOTHED_WHEEL_36_2", "TT_SUBARU_SVX", "TT_1_16", "TT_SUBARU_7_WITHOUT_6", "TT_52", "TT_TRI_TACH", "TT_GM_60_2_2_2", "TT_SKODA_FAVORIT", "TT_VVT_BARRA_3_PLUS_1", "TT_KAWA_KX450F", "TT_NISSAN_VQ", "TT_VVT_NISSAN_VQ", "TT_UNUSED" +#define trigger_type_e_auto_enum "TT_TOOTHED_WHEEL", "TT_FORD_ASPIRE", "TT_DODGE_NEON_1995", "TT_MAZDA_MIATA_NA", "TT_MAZDA_MIATA_NB1", "TT_GM_7X", "TT_DAIHATSU", "TT_MAZDA_SOHC_4", "TT_TOOTHED_WHEEL_60_2", "TT_TOOTHED_WHEEL_36_1", "TT_HONDA_4_24_1", "TT_MITSUBISHI", "TT_HONDA_4_24", "TT_HONDA_1_4_24", "TT_DODGE_NEON_2003_CAM", "TT_MAZDA_DOHC_1_4", "TT_ONE_PLUS_ONE", "TT_VVT_JZ", "TT_ONE", "TT_DODGE_RAM", "TT_60_2_VW", "TT_HONDA_1_24", "TT_DODGE_STRATUS", "TT_36_2_2_2", "TT_NISSAN_SR20VE", "TT_2JZ_3_34", "TT_ROVER_K", "TT_GM_LS_24", "TT_HONDA_CBR_600", "TT_2JZ_1_12", "TT_CHRYSLER_NGC_36_2_2", "TT_3_1_CAM", "TT_DODGE_NEON_2003_CRANK", "TT_MIATA_VVT", "TT_HONDA_ACCORD_1_24_SHIFTED", "TT_MAZDA_MIATA_VVT_TEST", "TT_SUBARU_7_6", "TT_JEEP_18_2_2_2", "TT_NISSAN_SR20VE_360", "TT_DODGE_NEON_1995_ONLY_CRANK", "TT_JEEP_4_CYL", "TT_FIAT_IAW_P8", "TT_FORD_ST170", "TT_VVT_MIATA_NB2", "TT_RENIX_44_2_2", "TT_RENIX_66_2_2_2", "TT_HONDA_K_12_1", "TT_VVT_BOSCH_QUICK_START", "TT_TOOTHED_WHEEL_36_2", "TT_SUBARU_SVX", "TT_1_16", "TT_SUBARU_7_WITHOUT_6", "TT_52", "TT_TRI_TACH", "TT_GM_60_2_2_2", "TT_SKODA_FAVORIT", "TT_VVT_BARRA_3_PLUS_1", "TT_KAWA_KX450F", "TT_NISSAN_VQ35", "TT_VVT_NISSAN_VQ35", "TT_NISSAN_VQ30", "TT_UNUSED" #define trigger_type_e_enum "custom toothed wheel", "Ford Aspire", "Dodge Neon 1995", "Miata NA", "Miata NB", "GM_7X", "Cooper R50", "Mazda SOHC 4", "60/2", "36/1", "Honda 4+24+1", "Mitsubishi", "Honda 4+24", "Honda 1+4+24", "Dodge Neon 2003", "Mazda DOHC 1+4", "1+1", "INVALID", "Single Tooth", "Dodge Ram 1+16", "60/2 VW", "Honda 1+24", "Dodge Stratus", "36_2_2_2", "Nissan Primera", "dev 2JZ 3/34 simulator", "Rover K", "GM LS 24", "Honda CBR 600", "2JZ_1_12", "Honda CBR 600 custom", "3/1 skipped", "Dodge Neon 2003 crank", "Miata VVT", "trg34", "trg35", "Subaru 7+6", "Jeep 18-2-2-2", "WIP", "Dodge Neon 1995 crank only", "Jeep XJ 4 cyl", "FiatIAQ_P8", "Mazda Z5", "trg43", "Renix 44-2-2", "Renix 66-2-2-2", "Honda K 12+1", "trg47", "36/2", "Subaru SVX", "1+16", "Subaru 7 without 6", "trg52", "TriTach", "GM 60/2/2/2", "Skoda Favorit", "Barra 3+1 Cam", "Kawa KX450F", "trg58", "trg59", "trg60", "INVALID" #define trigger_type_offset 524 #define trigger_unusedBit_4_10_offset 528 @@ -1684,7 +1684,7 @@ #define ts_show_spi true #define ts_show_trigger_comparator false #define ts_show_tunerstudio_port true -#define TS_SIGNATURE "rusEFI 2021.07.17.all.1707425705" +#define TS_SIGNATURE "rusEFI 2021.07.17.all.3263973681" #define TS_SINGLE_WRITE_COMMAND 'W' #define TS_SINGLE_WRITE_COMMAND_char W #define TS_TEST_COMMAND 't' @@ -1716,7 +1716,6 @@ #define TT_TT_MAZDA_MIATA_NB1 4 #define TT_TT_MAZDA_SOHC_4 7 #define TT_TT_MIATA_VVT 33 -#define TT_TT_NISSAN_VQ 58 #define TT_TT_NISSAN_VQ30 60 #define TT_TT_NISSAN_VQ35 58 #define TT_TT_ONE 18 @@ -1736,7 +1735,6 @@ #define TT_TT_VVT_BOSCH_QUICK_START 47 #define TT_TT_VVT_JZ 17 #define TT_TT_VVT_MIATA_NB2 43 -#define TT_TT_VVT_NISSAN_VQ 59 #define TT_TT_VVT_NISSAN_VQ35 59 #define tunerStudioSerialSpeed_offset 728 #define twoWireBatchIgnition_offset 1476 diff --git a/firmware/controllers/generated/signature_all.h b/firmware/controllers/generated/signature_all.h index d99a17b588..c918215bba 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 2021.07.17 -#define SIGNATURE_HASH 1707425705 -#define TS_SIGNATURE "rusEFI 2021.07.17.all.1707425705" +#define SIGNATURE_HASH 3263973681 +#define TS_SIGNATURE "rusEFI 2021.07.17.all.3263973681" diff --git a/firmware/controllers/generated/signature_f429-discovery.h b/firmware/controllers/generated/signature_f429-discovery.h index 35c2d5129d..80b634c785 100644 --- a/firmware/controllers/generated/signature_f429-discovery.h +++ b/firmware/controllers/generated/signature_f429-discovery.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD f429-discovery #define SIGNATURE_DATE 2021.07.17 -#define SIGNATURE_HASH 666494073 -#define TS_SIGNATURE "rusEFI 2021.07.17.f429-discovery.666494073" +#define SIGNATURE_HASH 2163249889 +#define TS_SIGNATURE "rusEFI 2021.07.17.f429-discovery.2163249889" diff --git a/firmware/controllers/generated/signature_frankenso_na6.h b/firmware/controllers/generated/signature_frankenso_na6.h index 1dc1732020..166092b83d 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 2021.07.17 -#define SIGNATURE_HASH 1569436048 -#define TS_SIGNATURE "rusEFI 2021.07.17.frankenso_na6.1569436048" +#define SIGNATURE_HASH 4207068936 +#define TS_SIGNATURE "rusEFI 2021.07.17.frankenso_na6.4207068936" diff --git a/firmware/controllers/generated/signature_hellen121nissan.h b/firmware/controllers/generated/signature_hellen121nissan.h index 87b1a71714..02891e7c58 100644 --- a/firmware/controllers/generated/signature_hellen121nissan.h +++ b/firmware/controllers/generated/signature_hellen121nissan.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD hellen121nissan #define SIGNATURE_DATE 2021.07.17 -#define SIGNATURE_HASH 267826951 -#define TS_SIGNATURE "rusEFI 2021.07.17.hellen121nissan.267826951" +#define SIGNATURE_HASH 2831139231 +#define TS_SIGNATURE "rusEFI 2021.07.17.hellen121nissan.2831139231" diff --git a/firmware/controllers/generated/signature_hellen121vag.h b/firmware/controllers/generated/signature_hellen121vag.h index f68c65f764..8a81dc47cf 100644 --- a/firmware/controllers/generated/signature_hellen121vag.h +++ b/firmware/controllers/generated/signature_hellen121vag.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD hellen121vag #define SIGNATURE_DATE 2021.07.17 -#define SIGNATURE_HASH 2304485592 -#define TS_SIGNATURE "rusEFI 2021.07.17.hellen121vag.2304485592" +#define SIGNATURE_HASH 772988480 +#define TS_SIGNATURE "rusEFI 2021.07.17.hellen121vag.772988480" diff --git a/firmware/controllers/generated/signature_hellen128.h b/firmware/controllers/generated/signature_hellen128.h index 4566c7b2f7..5a6aa9407f 100644 --- a/firmware/controllers/generated/signature_hellen128.h +++ b/firmware/controllers/generated/signature_hellen128.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD hellen128 #define SIGNATURE_DATE 2021.07.17 -#define SIGNATURE_HASH 4244252283 -#define TS_SIGNATURE "rusEFI 2021.07.17.hellen128.4244252283" +#define SIGNATURE_HASH 1538478307 +#define TS_SIGNATURE "rusEFI 2021.07.17.hellen128.1538478307" diff --git a/firmware/controllers/generated/signature_hellen72.h b/firmware/controllers/generated/signature_hellen72.h index 42c778fe4d..5f1d9d098c 100644 --- a/firmware/controllers/generated/signature_hellen72.h +++ b/firmware/controllers/generated/signature_hellen72.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD hellen72 #define SIGNATURE_DATE 2021.07.17 -#define SIGNATURE_HASH 907380631 -#define TS_SIGNATURE "rusEFI 2021.07.17.hellen72.907380631" +#define SIGNATURE_HASH 2438787343 +#define TS_SIGNATURE "rusEFI 2021.07.17.hellen72.2438787343" diff --git a/firmware/controllers/generated/signature_hellenNA6.h b/firmware/controllers/generated/signature_hellenNA6.h index cd35282093..2988bbfce1 100644 --- a/firmware/controllers/generated/signature_hellenNA6.h +++ b/firmware/controllers/generated/signature_hellenNA6.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD hellenNA6 #define SIGNATURE_DATE 2021.07.17 -#define SIGNATURE_HASH 1776776404 -#define TS_SIGNATURE "rusEFI 2021.07.17.hellenNA6.1776776404" +#define SIGNATURE_HASH 3467510348 +#define TS_SIGNATURE "rusEFI 2021.07.17.hellenNA6.3467510348" diff --git a/firmware/controllers/generated/signature_hellen_cypress.h b/firmware/controllers/generated/signature_hellen_cypress.h index 435208a4b1..a2ac01ba5b 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 2021.07.17 -#define SIGNATURE_HASH 666494073 -#define TS_SIGNATURE "rusEFI 2021.07.17.hellen_cypress.666494073" +#define SIGNATURE_HASH 2163249889 +#define TS_SIGNATURE "rusEFI 2021.07.17.hellen_cypress.2163249889" diff --git a/firmware/controllers/generated/signature_kin.h b/firmware/controllers/generated/signature_kin.h index 0514786389..3250f5d5c1 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 2021.07.17 -#define SIGNATURE_HASH 3625724037 -#define TS_SIGNATURE "rusEFI 2021.07.17.kin.3625724037" +#define SIGNATURE_HASH 2136301085 +#define TS_SIGNATURE "rusEFI 2021.07.17.kin.2136301085" diff --git a/firmware/controllers/generated/signature_mre_f4.h b/firmware/controllers/generated/signature_mre_f4.h index 3fae9a421e..5533f0b09e 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 2021.07.17 -#define SIGNATURE_HASH 2161970429 -#define TS_SIGNATURE "rusEFI 2021.07.17.mre_f4.2161970429" +#define SIGNATURE_HASH 664042085 +#define TS_SIGNATURE "rusEFI 2021.07.17.mre_f4.664042085" diff --git a/firmware/controllers/generated/signature_mre_f7.h b/firmware/controllers/generated/signature_mre_f7.h index 14dfa0bcfd..9fa723f1b4 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 2021.07.17 -#define SIGNATURE_HASH 2161970429 -#define TS_SIGNATURE "rusEFI 2021.07.17.mre_f7.2161970429" +#define SIGNATURE_HASH 664042085 +#define TS_SIGNATURE "rusEFI 2021.07.17.mre_f7.664042085" diff --git a/firmware/controllers/generated/signature_prometheus_405.h b/firmware/controllers/generated/signature_prometheus_405.h index 51f56f2f73..b57a9a9a7c 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 2021.07.17 -#define SIGNATURE_HASH 2001943967 -#define TS_SIGNATURE "rusEFI 2021.07.17.prometheus_405.2001943967" +#define SIGNATURE_HASH 3491384071 +#define TS_SIGNATURE "rusEFI 2021.07.17.prometheus_405.3491384071" diff --git a/firmware/controllers/generated/signature_prometheus_469.h b/firmware/controllers/generated/signature_prometheus_469.h index 8ef6d58884..22878dff5b 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 2021.07.17 -#define SIGNATURE_HASH 2001943967 -#define TS_SIGNATURE "rusEFI 2021.07.17.prometheus_469.2001943967" +#define SIGNATURE_HASH 3491384071 +#define TS_SIGNATURE "rusEFI 2021.07.17.prometheus_469.3491384071" diff --git a/firmware/controllers/generated/signature_proteus_f4.h b/firmware/controllers/generated/signature_proteus_f4.h index 7fd44924ae..7985ef0f85 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 2021.07.17 -#define SIGNATURE_HASH 208896690 -#define TS_SIGNATURE "rusEFI 2021.07.17.proteus_f4.208896690" +#define SIGNATURE_HASH 2872767530 +#define TS_SIGNATURE "rusEFI 2021.07.17.proteus_f4.2872767530" diff --git a/firmware/controllers/generated/signature_proteus_f7.h b/firmware/controllers/generated/signature_proteus_f7.h index fb5409842c..93dedf790f 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 2021.07.17 -#define SIGNATURE_HASH 208896690 -#define TS_SIGNATURE "rusEFI 2021.07.17.proteus_f7.208896690" +#define SIGNATURE_HASH 2872767530 +#define TS_SIGNATURE "rusEFI 2021.07.17.proteus_f7.2872767530" diff --git a/firmware/controllers/generated/signature_subaru_eg33_f7.h b/firmware/controllers/generated/signature_subaru_eg33_f7.h index 01e650fb98..aba112c6eb 100644 --- a/firmware/controllers/generated/signature_subaru_eg33_f7.h +++ b/firmware/controllers/generated/signature_subaru_eg33_f7.h @@ -4,5 +4,5 @@ #define SIGNATURE_BOARD subaru_eg33_f7 #define SIGNATURE_DATE 2021.07.17 -#define SIGNATURE_HASH 3365482943 -#define TS_SIGNATURE "rusEFI 2021.07.17.subaru_eg33_f7.3365482943" +#define SIGNATURE_HASH 1875920679 +#define TS_SIGNATURE "rusEFI 2021.07.17.subaru_eg33_f7.1875920679" diff --git a/firmware/tunerstudio/generated/cache.zip b/firmware/tunerstudio/generated/cache.zip index dc13b9d6b2fb289e6079192114fa121da9245786..74a50d4c4d8c213840e32ddc8da4e9dcf3ed7a87 100644 GIT binary patch delta 384729 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�VS97&|@Jk|(Gn@mCkB`+f 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 delta 385619 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

4=MMyZz`X36Wc2|TBGUO8H%K?e<_Lr%4$$P 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

9F=aUB_4OopBezoQC{ZwU;<9tq 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 Q;mC0%f - +