From dc0d3242bf6e2e4b80e43ce1ebe55abed4727c71 Mon Sep 17 00:00:00 2001 From: GitHub build-firmware Action Date: Sun, 22 Nov 2020 05:11:29 +0000 Subject: [PATCH] Auto-generated configs and docs --- ...ngine_configuration_generated_structures.h | 4 ++-- .../controllers/algo/rusefi_generated.h | 9 +++++++-- ...ngine_configuration_generated_structures.h | 4 ++-- .../controllers/algo/rusefi_generated.h | 9 +++++++-- ...ngine_configuration_generated_structures.h | 4 ++-- .../generated/fsio_enums_generated.def | 2 +- .../controllers/generated/fsio_getters.def | 2 +- firmware/controllers/generated/fsio_names.def | 2 +- .../controllers/generated/fsio_strings.def | 2 +- .../controllers/generated/rusefi_generated.h | 9 +++++++-- .../controllers/generated/signature_all.h | 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 964345 -> 964985 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 | 9 +++++++-- java_console/rusefi.xml | 2 +- 33 files changed, 109 insertions(+), 69 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 0c882ac61a..c8109cef17 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 Sun Nov 22 03:00:52 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on hellen_cypress_gen_config.bat integration/rusefi_config.txt Sun Nov 22 05:11:00 UTC 2020 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once @@ -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 Sun Nov 22 03:00:52 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on hellen_cypress_gen_config.bat integration/rusefi_config.txt Sun Nov 22 05:11:00 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 196f93e2f6..007f335b8a 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 @@ -269,6 +269,11 @@ #define CMD_TS_BENCH_CHECK_ENGINE_LIGHT 7 #define CMD_TS_BENCH_FAN_RELAY 4 #define CMD_TS_BENCH_FUEL_PUMP 1 +#define CMD_TS_BENCH_GPPWM1_VALVE 10 +#define CMD_TS_BENCH_GPPWM2_VALVE 11 +#define CMD_TS_BENCH_GPPWM3_VALVE 12 +#define CMD_TS_BENCH_GPPWM4_VALVE 13 +#define CMD_TS_BENCH_HPFP_VALVE 9 #define CMD_TS_BENCH_IDLE_VALVE 8 #define CMD_TS_BENCH_MAIN_RELAY 0 #define CMD_TS_BENCH_STARTER_DISABLE_RELAY 3 @@ -1205,7 +1210,7 @@ #define showSdCardWarning_offset 76 #define SIGNATURE_BOARD hellen_cypress #define SIGNATURE_DATE 2020.11.22 -#define SIGNATURE_HASH 2052026216 +#define SIGNATURE_HASH 1730384411 #define silentTriggerError_offset 1464 #define slowAdcAlpha_offset 2088 #define sparkDwellRpmBins_offset 332 @@ -1535,7 +1540,7 @@ #define ts_show_spi true #define ts_show_trigger_comparator false #define ts_show_tunerstudio_port true -#define TS_SIGNATURE "rusEFI 2020.11.22.hellen_cypress.2052026216" +#define TS_SIGNATURE "rusEFI 2020.11.22.hellen_cypress.1730384411" #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 818f087840..1f7405b3b5 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 Sun Nov 22 03:00:50 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Sun Nov 22 05:10:58 UTC 2020 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once @@ -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 Sun Nov 22 03:00:50 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Sun Nov 22 05:10:58 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 a2d53f9a15..7ec5ae8a82 100644 --- a/firmware/config/boards/kinetis/config/controllers/algo/rusefi_generated.h +++ b/firmware/config/boards/kinetis/config/controllers/algo/rusefi_generated.h @@ -269,6 +269,11 @@ #define CMD_TS_BENCH_CHECK_ENGINE_LIGHT 7 #define CMD_TS_BENCH_FAN_RELAY 4 #define CMD_TS_BENCH_FUEL_PUMP 1 +#define CMD_TS_BENCH_GPPWM1_VALVE 10 +#define CMD_TS_BENCH_GPPWM2_VALVE 11 +#define CMD_TS_BENCH_GPPWM3_VALVE 12 +#define CMD_TS_BENCH_GPPWM4_VALVE 13 +#define CMD_TS_BENCH_HPFP_VALVE 9 #define CMD_TS_BENCH_IDLE_VALVE 8 #define CMD_TS_BENCH_MAIN_RELAY 0 #define CMD_TS_BENCH_STARTER_DISABLE_RELAY 3 @@ -1205,7 +1210,7 @@ #define showSdCardWarning_offset 76 #define SIGNATURE_BOARD kin #define SIGNATURE_DATE 2020.11.22 -#define SIGNATURE_HASH 726881682 +#define SIGNATURE_HASH 910141665 #define silentTriggerError_offset 1464 #define slowAdcAlpha_offset 2088 #define sparkDwellRpmBins_offset 332 @@ -1535,7 +1540,7 @@ #define ts_show_spi true #define ts_show_trigger_comparator true #define ts_show_tunerstudio_port true -#define TS_SIGNATURE "rusEFI 2020.11.22.kin.726881682" +#define TS_SIGNATURE "rusEFI 2020.11.22.kin.910141665" #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 c63374e46c..6f89e35f56 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 Sun Nov 22 03:00:33 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sun Nov 22 05:10:40 UTC 2020 // by class com.rusefi.output.CHeaderConsumer // begin #pragma once @@ -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 Sun Nov 22 03:00:33 UTC 2020 +// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sun Nov 22 05:10:40 UTC 2020 diff --git a/firmware/controllers/generated/fsio_enums_generated.def b/firmware/controllers/generated/fsio_enums_generated.def index c18a9db5c5..70f8a91c58 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 Sun Nov 22 03:00:33 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sun Nov 22 05:10:40 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 3e6b4dd683..d2b5ce8acd 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 Sun Nov 22 03:00:33 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sun Nov 22 05:10:40 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 d9c76e78f1..690dae3516 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 Sun Nov 22 03:00:33 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sun Nov 22 05:10:40 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 f715001de1..f691dd2723 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 Sun Nov 22 03:00:33 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sun Nov 22 05:10:40 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 af25dd2089..f22f3f0802 100644 --- a/firmware/controllers/generated/rusefi_generated.h +++ b/firmware/controllers/generated/rusefi_generated.h @@ -269,6 +269,11 @@ #define CMD_TS_BENCH_CHECK_ENGINE_LIGHT 7 #define CMD_TS_BENCH_FAN_RELAY 4 #define CMD_TS_BENCH_FUEL_PUMP 1 +#define CMD_TS_BENCH_GPPWM1_VALVE 10 +#define CMD_TS_BENCH_GPPWM2_VALVE 11 +#define CMD_TS_BENCH_GPPWM3_VALVE 12 +#define CMD_TS_BENCH_GPPWM4_VALVE 13 +#define CMD_TS_BENCH_HPFP_VALVE 9 #define CMD_TS_BENCH_IDLE_VALVE 8 #define CMD_TS_BENCH_MAIN_RELAY 0 #define CMD_TS_BENCH_STARTER_DISABLE_RELAY 3 @@ -1205,7 +1210,7 @@ #define showSdCardWarning_offset 76 #define SIGNATURE_BOARD all #define SIGNATURE_DATE 2020.11.22 -#define SIGNATURE_HASH 3015625131 +#define SIGNATURE_HASH 2933011672 #define silentTriggerError_offset 1464 #define slowAdcAlpha_offset 2088 #define sparkDwellRpmBins_offset 332 @@ -1535,7 +1540,7 @@ #define ts_show_spi true #define ts_show_trigger_comparator false #define ts_show_tunerstudio_port true -#define TS_SIGNATURE "rusEFI 2020.11.22.all.3015625131" +#define TS_SIGNATURE "rusEFI 2020.11.22.all.2933011672" #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 7deb302d50..1fb3d2cf2f 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.22 -#define SIGNATURE_HASH 3604284676 -#define TS_SIGNATURE "rusEFI 2020.11.22.all.3604284676" +#define SIGNATURE_HASH 2933011672 +#define TS_SIGNATURE "rusEFI 2020.11.22.all.2933011672" diff --git a/firmware/controllers/generated/signature_frankenso_na6.h b/firmware/controllers/generated/signature_frankenso_na6.h index 22e2918c89..abe05c289b 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.22 -#define SIGNATURE_HASH 1084601599 -#define TS_SIGNATURE "rusEFI 2020.11.22.frankenso_na6.1084601599" +#define SIGNATURE_HASH 950175011 +#define TS_SIGNATURE "rusEFI 2020.11.22.frankenso_na6.950175011" diff --git a/firmware/controllers/generated/signature_hellen_cypress.h b/firmware/controllers/generated/signature_hellen_cypress.h index 84c5452f4c..855a56fb17 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.22 -#define SIGNATURE_HASH 522494919 -#define TS_SIGNATURE "rusEFI 2020.11.22.hellen_cypress.522494919" +#define SIGNATURE_HASH 1730384411 +#define TS_SIGNATURE "rusEFI 2020.11.22.hellen_cypress.1730384411" diff --git a/firmware/controllers/generated/signature_kin.h b/firmware/controllers/generated/signature_kin.h index ad17da85ff..695ef31149 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.22 -#define SIGNATURE_HASH 1312332093 -#define TS_SIGNATURE "rusEFI 2020.11.22.kin.1312332093" +#define SIGNATURE_HASH 910141665 +#define TS_SIGNATURE "rusEFI 2020.11.22.kin.910141665" diff --git a/firmware/controllers/generated/signature_mre_f4.h b/firmware/controllers/generated/signature_mre_f4.h index 2f2f054516..1a57e1bede 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.22 -#define SIGNATURE_HASH 3238386557 -#define TS_SIGNATURE "rusEFI 2020.11.22.mre_f4.3238386557" +#define SIGNATURE_HASH 3103976097 +#define TS_SIGNATURE "rusEFI 2020.11.22.mre_f4.3103976097" diff --git a/firmware/controllers/generated/signature_mre_f7.h b/firmware/controllers/generated/signature_mre_f7.h index fe7cf1651d..625f499e73 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.22 -#define SIGNATURE_HASH 3238386557 -#define TS_SIGNATURE "rusEFI 2020.11.22.mre_f7.3238386557" +#define SIGNATURE_HASH 3103976097 +#define TS_SIGNATURE "rusEFI 2020.11.22.mre_f7.3103976097" diff --git a/firmware/controllers/generated/signature_prometheus_405.h b/firmware/controllers/generated/signature_prometheus_405.h index 106e05a1b0..849f5045e5 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.22 -#define SIGNATURE_HASH 2483880789 -#define TS_SIGNATURE "rusEFI 2020.11.22.prometheus_405.2483880789" +#define SIGNATURE_HASH 3960091273 +#define TS_SIGNATURE "rusEFI 2020.11.22.prometheus_405.3960091273" diff --git a/firmware/controllers/generated/signature_prometheus_469.h b/firmware/controllers/generated/signature_prometheus_469.h index d58d3f12d6..242567eee1 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.22 -#define SIGNATURE_HASH 2483880789 -#define TS_SIGNATURE "rusEFI 2020.11.22.prometheus_469.2483880789" +#define SIGNATURE_HASH 3960091273 +#define TS_SIGNATURE "rusEFI 2020.11.22.prometheus_469.3960091273" diff --git a/firmware/controllers/generated/signature_proteus_f4.h b/firmware/controllers/generated/signature_proteus_f4.h index 2aa6fadf7c..f83a837e55 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.22 -#define SIGNATURE_HASH 528437210 -#define TS_SIGNATURE "rusEFI 2020.11.22.proteus_f4.528437210" +#define SIGNATURE_HASH 1735949830 +#define TS_SIGNATURE "rusEFI 2020.11.22.proteus_f4.1735949830" diff --git a/firmware/controllers/generated/signature_proteus_f7.h b/firmware/controllers/generated/signature_proteus_f7.h index 60e08e2c4f..b3012208fe 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.22 -#define SIGNATURE_HASH 528437210 -#define TS_SIGNATURE "rusEFI 2020.11.22.proteus_f7.528437210" +#define SIGNATURE_HASH 1735949830 +#define TS_SIGNATURE "rusEFI 2020.11.22.proteus_f7.1735949830" diff --git a/firmware/tunerstudio/generated/cache.zip b/firmware/tunerstudio/generated/cache.zip index 75c5342d312302b1bb2ab4a8d7a30b9f81e5a26f..b7e92e9446ed304c6c6c0110051b845764620136 100644 GIT binary patch delta 210580 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 delta 210056 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 diff --git a/firmware/tunerstudio/generated/rusefi.ini b/firmware/tunerstudio/generated/rusefi.ini index 9772a4f5ad..fbeb2ac7ba 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.11.22.all.3604284676" + signature = "rusEFI 2020.11.22.all.2933011672" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.11.22.all.3604284676" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.11.22.all.2933011672" ; 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 Sun Nov 22 03:58:17 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sun Nov 22 05:10:40 UTC 2020 pageSize = 20000 page = 1 @@ -2956,6 +2956,7 @@ cmd_test_ac_relay = "Z\x00\x16\x00\x06" cmd_test_radiator_fan = "Z\x00\x16\x00\x04" cmd_test_check_engine_light = "Z\x00\x16\x00\x07" cmd_test_idle_valve = "Z\x00\x16\x00\x08" +cmd_test_hpfp_valve = "Z\x00\x16\x00\x09" cmd_calibrate_tps_1_closed = "Z\x00\x14\x00\x02" @@ -4577,6 +4578,7 @@ cmd_set_engine_type_default = "Z\x00\x31\x00\x00" commandButton = "Radiator Fan", cmd_test_radiator_fan commandButton = "Check Engine", cmd_test_check_engine_light commandButton = "Idle Air Valve", cmd_test_idle_valve + commandButton = "HPFP Valve", cmd_test_hpfp_valve commandButton = "A/C Relay", cmd_test_ac_relay commandButton = "Starter Relay", cmd_test_starter_relay commandButton = "Stop Engine", cmd_stop_engine diff --git a/firmware/tunerstudio/generated/rusefi_frankenso_na6.ini b/firmware/tunerstudio/generated/rusefi_frankenso_na6.ini index 8d032a50e9..0b568753b7 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.11.22.frankenso_na6.1084601599" + signature = "rusEFI 2020.11.22.frankenso_na6.950175011" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.11.22.frankenso_na6.1084601599" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.11.22.frankenso_na6.950175011" ; 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 Sun Nov 22 03:58:23 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sun Nov 22 05:10:47 UTC 2020 pageSize = 20000 page = 1 @@ -2956,6 +2956,7 @@ cmd_test_ac_relay = "Z\x00\x16\x00\x06" cmd_test_radiator_fan = "Z\x00\x16\x00\x04" cmd_test_check_engine_light = "Z\x00\x16\x00\x07" cmd_test_idle_valve = "Z\x00\x16\x00\x08" +cmd_test_hpfp_valve = "Z\x00\x16\x00\x09" cmd_calibrate_tps_1_closed = "Z\x00\x14\x00\x02" @@ -4577,6 +4578,7 @@ cmd_set_engine_type_default = "Z\x00\x31\x00\x00" commandButton = "Radiator Fan", cmd_test_radiator_fan commandButton = "Check Engine", cmd_test_check_engine_light commandButton = "Idle Air Valve", cmd_test_idle_valve + commandButton = "HPFP Valve", cmd_test_hpfp_valve commandButton = "A/C Relay", cmd_test_ac_relay commandButton = "Starter Relay", cmd_test_starter_relay commandButton = "Stop Engine", cmd_stop_engine diff --git a/firmware/tunerstudio/generated/rusefi_hellen_cypress.ini b/firmware/tunerstudio/generated/rusefi_hellen_cypress.ini index 887b11875f..64c572b402 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.11.22.hellen_cypress.522494919" + signature = "rusEFI 2020.11.22.hellen_cypress.1730384411" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.11.22.hellen_cypress.522494919" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.11.22.hellen_cypress.1730384411" ; 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 Sun Nov 22 03:58:33 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on hellen_cypress_gen_config.bat integration/rusefi_config.txt Sun Nov 22 05:11:00 UTC 2020 pageSize = 20000 page = 1 @@ -2956,6 +2956,7 @@ cmd_test_ac_relay = "Z\x00\x16\x00\x06" cmd_test_radiator_fan = "Z\x00\x16\x00\x04" cmd_test_check_engine_light = "Z\x00\x16\x00\x07" cmd_test_idle_valve = "Z\x00\x16\x00\x08" +cmd_test_hpfp_valve = "Z\x00\x16\x00\x09" cmd_calibrate_tps_1_closed = "Z\x00\x14\x00\x02" @@ -4577,6 +4578,7 @@ cmd_set_engine_type_default = "Z\x00\x31\x00\x00" commandButton = "Radiator Fan", cmd_test_radiator_fan commandButton = "Check Engine", cmd_test_check_engine_light commandButton = "Idle Air Valve", cmd_test_idle_valve + commandButton = "HPFP Valve", cmd_test_hpfp_valve commandButton = "A/C Relay", cmd_test_ac_relay commandButton = "Starter Relay", cmd_test_starter_relay commandButton = "Stop Engine", cmd_stop_engine diff --git a/firmware/tunerstudio/generated/rusefi_kinetis.ini b/firmware/tunerstudio/generated/rusefi_kinetis.ini index b7fac06ea0..593965c11c 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.11.22.kin.1312332093" + signature = "rusEFI 2020.11.22.kin.910141665" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.11.22.kin.1312332093" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.11.22.kin.910141665" ; 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 Sun Nov 22 03:58:31 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on kinetis_gen_config.bat integration/rusefi_config.txt Sun Nov 22 05:10:58 UTC 2020 pageSize = 20000 page = 1 @@ -2956,6 +2956,7 @@ cmd_test_ac_relay = "Z\x00\x16\x00\x06" cmd_test_radiator_fan = "Z\x00\x16\x00\x04" cmd_test_check_engine_light = "Z\x00\x16\x00\x07" cmd_test_idle_valve = "Z\x00\x16\x00\x08" +cmd_test_hpfp_valve = "Z\x00\x16\x00\x09" cmd_calibrate_tps_1_closed = "Z\x00\x14\x00\x02" @@ -4578,6 +4579,7 @@ cmd_set_engine_type_default = "Z\x00\x31\x00\x00" commandButton = "Radiator Fan", cmd_test_radiator_fan commandButton = "Check Engine", cmd_test_check_engine_light commandButton = "Idle Air Valve", cmd_test_idle_valve + commandButton = "HPFP Valve", cmd_test_hpfp_valve commandButton = "A/C Relay", cmd_test_ac_relay commandButton = "Starter Relay", cmd_test_starter_relay commandButton = "Stop Engine", cmd_stop_engine diff --git a/firmware/tunerstudio/generated/rusefi_mre_f4.ini b/firmware/tunerstudio/generated/rusefi_mre_f4.ini index 83ce7fab36..8217f95c43 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.11.22.mre_f4.3238386557" + signature = "rusEFI 2020.11.22.mre_f4.3103976097" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.11.22.mre_f4.3238386557" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.11.22.mre_f4.3103976097" ; 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 Sun Nov 22 03:58:21 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sun Nov 22 05:10:43 UTC 2020 pageSize = 20000 page = 1 @@ -2952,6 +2952,7 @@ cmd_test_ac_relay = "Z\x00\x16\x00\x06" cmd_test_radiator_fan = "Z\x00\x16\x00\x04" cmd_test_check_engine_light = "Z\x00\x16\x00\x07" cmd_test_idle_valve = "Z\x00\x16\x00\x08" +cmd_test_hpfp_valve = "Z\x00\x16\x00\x09" cmd_calibrate_tps_1_closed = "Z\x00\x14\x00\x02" @@ -4552,6 +4553,7 @@ cmd_set_engine_type_default = "Z\x00\x31\x00\x00" commandButton = "Radiator Fan", cmd_test_radiator_fan commandButton = "Check Engine", cmd_test_check_engine_light commandButton = "Idle Air Valve", cmd_test_idle_valve + commandButton = "HPFP Valve", cmd_test_hpfp_valve commandButton = "A/C Relay", cmd_test_ac_relay commandButton = "Starter Relay", cmd_test_starter_relay commandButton = "Stop Engine", cmd_stop_engine diff --git a/firmware/tunerstudio/generated/rusefi_mre_f7.ini b/firmware/tunerstudio/generated/rusefi_mre_f7.ini index 4b9d6a85a3..0d80f6078c 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.11.22.mre_f7.3238386557" + signature = "rusEFI 2020.11.22.mre_f7.3103976097" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.11.22.mre_f7.3238386557" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.11.22.mre_f7.3103976097" ; 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 Sun Nov 22 03:58:20 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sun Nov 22 05:10:41 UTC 2020 pageSize = 20000 page = 1 @@ -2952,6 +2952,7 @@ cmd_test_ac_relay = "Z\x00\x16\x00\x06" cmd_test_radiator_fan = "Z\x00\x16\x00\x04" cmd_test_check_engine_light = "Z\x00\x16\x00\x07" cmd_test_idle_valve = "Z\x00\x16\x00\x08" +cmd_test_hpfp_valve = "Z\x00\x16\x00\x09" cmd_calibrate_tps_1_closed = "Z\x00\x14\x00\x02" @@ -4552,6 +4553,7 @@ cmd_set_engine_type_default = "Z\x00\x31\x00\x00" commandButton = "Radiator Fan", cmd_test_radiator_fan commandButton = "Check Engine", cmd_test_check_engine_light commandButton = "Idle Air Valve", cmd_test_idle_valve + commandButton = "HPFP Valve", cmd_test_hpfp_valve commandButton = "A/C Relay", cmd_test_ac_relay commandButton = "Starter Relay", cmd_test_starter_relay commandButton = "Stop Engine", cmd_stop_engine diff --git a/firmware/tunerstudio/generated/rusefi_prometheus_405.ini b/firmware/tunerstudio/generated/rusefi_prometheus_405.ini index 153afd96a9..e87354143a 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.11.22.prometheus_405.2483880789" + signature = "rusEFI 2020.11.22.prometheus_405.3960091273" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.11.22.prometheus_405.2483880789" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.11.22.prometheus_405.3960091273" ; 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 Sun Nov 22 03:58:26 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sun Nov 22 05:10:53 UTC 2020 pageSize = 20000 page = 1 @@ -2952,6 +2952,7 @@ cmd_test_ac_relay = "Z\x00\x16\x00\x06" cmd_test_radiator_fan = "Z\x00\x16\x00\x04" cmd_test_check_engine_light = "Z\x00\x16\x00\x07" cmd_test_idle_valve = "Z\x00\x16\x00\x08" +cmd_test_hpfp_valve = "Z\x00\x16\x00\x09" cmd_calibrate_tps_1_closed = "Z\x00\x14\x00\x02" @@ -4573,6 +4574,7 @@ cmd_set_engine_type_default = "Z\x00\x31\x00\x00" commandButton = "Radiator Fan", cmd_test_radiator_fan commandButton = "Check Engine", cmd_test_check_engine_light commandButton = "Idle Air Valve", cmd_test_idle_valve + commandButton = "HPFP Valve", cmd_test_hpfp_valve commandButton = "A/C Relay", cmd_test_ac_relay commandButton = "Starter Relay", cmd_test_starter_relay commandButton = "Stop Engine", cmd_stop_engine diff --git a/firmware/tunerstudio/generated/rusefi_prometheus_469.ini b/firmware/tunerstudio/generated/rusefi_prometheus_469.ini index 1f8930bbbd..0cd0ca93d2 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.11.22.prometheus_469.2483880789" + signature = "rusEFI 2020.11.22.prometheus_469.3960091273" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.11.22.prometheus_469.2483880789" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.11.22.prometheus_469.3960091273" ; 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 Sun Nov 22 03:58:25 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sun Nov 22 05:10:52 UTC 2020 pageSize = 20000 page = 1 @@ -2952,6 +2952,7 @@ cmd_test_ac_relay = "Z\x00\x16\x00\x06" cmd_test_radiator_fan = "Z\x00\x16\x00\x04" cmd_test_check_engine_light = "Z\x00\x16\x00\x07" cmd_test_idle_valve = "Z\x00\x16\x00\x08" +cmd_test_hpfp_valve = "Z\x00\x16\x00\x09" cmd_calibrate_tps_1_closed = "Z\x00\x14\x00\x02" @@ -4573,6 +4574,7 @@ cmd_set_engine_type_default = "Z\x00\x31\x00\x00" commandButton = "Radiator Fan", cmd_test_radiator_fan commandButton = "Check Engine", cmd_test_check_engine_light commandButton = "Idle Air Valve", cmd_test_idle_valve + commandButton = "HPFP Valve", cmd_test_hpfp_valve commandButton = "A/C Relay", cmd_test_ac_relay commandButton = "Starter Relay", cmd_test_starter_relay commandButton = "Stop Engine", cmd_stop_engine diff --git a/firmware/tunerstudio/generated/rusefi_proteus_f4.ini b/firmware/tunerstudio/generated/rusefi_proteus_f4.ini index 2051b313a2..96bac00910 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.11.22.proteus_f4.528437210" + signature = "rusEFI 2020.11.22.proteus_f4.1735949830" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.11.22.proteus_f4.528437210" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.11.22.proteus_f4.1735949830" ; 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 Sun Nov 22 03:58:30 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sun Nov 22 05:10:57 UTC 2020 pageSize = 20000 page = 1 @@ -2948,6 +2948,7 @@ cmd_test_ac_relay = "Z\x00\x16\x00\x06" cmd_test_radiator_fan = "Z\x00\x16\x00\x04" cmd_test_check_engine_light = "Z\x00\x16\x00\x07" cmd_test_idle_valve = "Z\x00\x16\x00\x08" +cmd_test_hpfp_valve = "Z\x00\x16\x00\x09" cmd_calibrate_tps_1_closed = "Z\x00\x14\x00\x02" @@ -4544,6 +4545,7 @@ cmd_set_engine_type_default = "Z\x00\x31\x00\x00" commandButton = "Radiator Fan", cmd_test_radiator_fan commandButton = "Check Engine", cmd_test_check_engine_light commandButton = "Idle Air Valve", cmd_test_idle_valve + commandButton = "HPFP Valve", cmd_test_hpfp_valve commandButton = "A/C Relay", cmd_test_ac_relay commandButton = "Starter Relay", cmd_test_starter_relay commandButton = "Stop Engine", cmd_stop_engine diff --git a/firmware/tunerstudio/generated/rusefi_proteus_f7.ini b/firmware/tunerstudio/generated/rusefi_proteus_f7.ini index 62d838bfec..ecbc2574ca 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.11.22.proteus_f7.528437210" + signature = "rusEFI 2020.11.22.proteus_f7.1735949830" [TunerStudio] queryCommand = "S" versionInfo = "V" ; firmwave version for title bar. - signature = "rusEFI 2020.11.22.proteus_f7.528437210" ; signature is expected to be 7 or more characters. + signature = "rusEFI 2020.11.22.proteus_f7.1735949830" ; 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 Sun Nov 22 03:58:28 UTC 2020 +; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sun Nov 22 05:10:55 UTC 2020 pageSize = 20000 page = 1 @@ -2948,6 +2948,7 @@ cmd_test_ac_relay = "Z\x00\x16\x00\x06" cmd_test_radiator_fan = "Z\x00\x16\x00\x04" cmd_test_check_engine_light = "Z\x00\x16\x00\x07" cmd_test_idle_valve = "Z\x00\x16\x00\x08" +cmd_test_hpfp_valve = "Z\x00\x16\x00\x09" cmd_calibrate_tps_1_closed = "Z\x00\x14\x00\x02" @@ -4544,6 +4545,7 @@ cmd_set_engine_type_default = "Z\x00\x31\x00\x00" commandButton = "Radiator Fan", cmd_test_radiator_fan commandButton = "Check Engine", cmd_test_check_engine_light commandButton = "Idle Air Valve", cmd_test_idle_valve + commandButton = "HPFP Valve", cmd_test_hpfp_valve commandButton = "A/C Relay", cmd_test_ac_relay commandButton = "Starter Relay", cmd_test_starter_relay commandButton = "Stop Engine", cmd_stop_engine 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 a1d471a3e7..39b4c4a278 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 Sun Nov 22 03:00:33 UTC 2020 +// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on gen_config.sh integration/rusefi_config.txt Sun Nov 22 05:10:40 UTC 2020 // by class com.rusefi.output.FileJavaFieldsConsumer import com.rusefi.config.*; @@ -259,6 +259,11 @@ public class Fields { public static final int CMD_TS_BENCH_CHECK_ENGINE_LIGHT = 7; public static final int CMD_TS_BENCH_FAN_RELAY = 4; public static final int CMD_TS_BENCH_FUEL_PUMP = 1; + public static final int CMD_TS_BENCH_GPPWM1_VALVE = 10; + public static final int CMD_TS_BENCH_GPPWM2_VALVE = 11; + public static final int CMD_TS_BENCH_GPPWM3_VALVE = 12; + public static final int CMD_TS_BENCH_GPPWM4_VALVE = 13; + public static final int CMD_TS_BENCH_HPFP_VALVE = 9; public static final int CMD_TS_BENCH_IDLE_VALVE = 8; public static final int CMD_TS_BENCH_MAIN_RELAY = 0; public static final int CMD_TS_BENCH_STARTER_DISABLE_RELAY = 3; @@ -1438,7 +1443,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.22.all.3015625131"; + public static final String TS_SIGNATURE = "rusEFI 2020.11.22.all.2933011672"; 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 d56e1391d1..60a9de50c1 100644 --- a/java_console/rusefi.xml +++ b/java_console/rusefi.xml @@ -1,6 +1,6 @@ - +