diff --git a/firmware/controllers/algo/engine_configuration_generated_structures.h b/firmware/controllers/algo/engine_configuration_generated_structures.h index 8c977556f8b..a2e41a5d7fd 100644 --- a/firmware/controllers/algo/engine_configuration_generated_structures.h +++ b/firmware/controllers/algo/engine_configuration_generated_structures.h @@ -1,4 +1,4 @@ -// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Thu Nov 29 23:21:24 EST 2018 +// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun Dec 09 10:18:27 EST 2018 // begin #ifndef ENGINE_CONFIGURATION_GENERATED_H_ #define ENGINE_CONFIGURATION_GENERATED_H_ @@ -2181,9 +2181,19 @@ typedef struct { */ tChargeMode_e tChargeMode; /** + * target TPS value, 0 to 100% * offset 4116 */ - int unusedEnd[591]; + uint8_t etbBiasBins[ETB_BIAS_CURVE_LENGTH]; + /** + * PWM bias, 0 to 100% + * offset 4124 + */ + float etbBiasValues[ETB_BIAS_CURVE_LENGTH]; + /** + * offset 4156 + */ + int unusedEnd[581]; /** total size 6480*/ } engine_configuration_s; @@ -2429,4 +2439,4 @@ typedef struct { #endif // end -// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Thu Nov 29 23:21:24 EST 2018 +// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun Dec 09 10:18:27 EST 2018 diff --git a/firmware/controllers/algo/rusefi_generated.h b/firmware/controllers/algo/rusefi_generated.h index f6c149f938f..a93f6e3198c 100644 --- a/firmware/controllers/algo/rusefi_generated.h +++ b/firmware/controllers/algo/rusefi_generated.h @@ -17,6 +17,7 @@ #define BLOCKING_FACTOR 400 #define FSIO_ANALOG_INPUT_COUNT 4 #define SERVO_COUNT 8 +#define ETB_BIAS_CURVE_LENGTH 8 #define TS_OUTPUT_SIZE 356 #define TS_FILE_VERSION 20171101 #define WARMUP_TARGET_AFR_SIZE 4 @@ -1586,8 +1587,12 @@ #define tChargeAirDecrLimit_offset_hex 100c #define tChargeMode_offset 4112 #define tChargeMode_offset_hex 1010 -#define unusedEnd_offset 4116 -#define unusedEnd_offset_hex 1014 +#define etbBiasBins_offset 4116 +#define etbBiasBins_offset_hex 1014 +#define etbBiasValues_offset 4124 +#define etbBiasValues_offset_hex 101c +#define unusedEnd_offset 4156 +#define unusedEnd_offset_hex 103c #define cltCrankingCorrBins_offset 6480 #define cltCrankingCorrBins_offset_hex 1950 #define cltCrankingCorr_offset 6512 diff --git a/firmware/integration/rusefi_config.txt b/firmware/integration/rusefi_config.txt index 691dff3223c..6a8375e129b 100644 --- a/firmware/integration/rusefi_config.txt +++ b/firmware/integration/rusefi_config.txt @@ -53,6 +53,8 @@ struct_no_prefix engine_configuration_s #define SERVO_COUNT 8 +#define ETB_BIAS_CURVE_LENGTH 8 + ! this is here so that rusEfi console can access it, too #define TS_OUTPUT_SIZE 356 @@ -924,7 +926,11 @@ float tChargeAirDecrLimit;;"tChange Decrement Limit, deg/sec", 1, 0, custom tChargeMode_e 4 bits, U32, @OFFSET@, [0:0], @@tChargeMode_e_enum@@ tChargeMode_e tChargeMode; - int[591] unusedEnd; + + uint8_t[ETB_BIAS_CURVE_LENGTH] etbBiasBins;target TPS value, 0 to 100%;"target TPS position", 1, 0.0, 0, 100.0, 0 + float[ETB_BIAS_CURVE_LENGTH] etbBiasValues;PWM bias, 0 to 100%;"ETB duty cycle bias", 1, 0.0, 0, 100.0, 2 + + int[581] unusedEnd; end_struct diff --git a/firmware/tunerstudio/rusefi.ini b/firmware/tunerstudio/rusefi.ini index 1c97db3904f..9ccd36d1834 100644 --- a/firmware/tunerstudio/rusefi.ini +++ b/firmware/tunerstudio/rusefi.ini @@ -63,7 +63,7 @@ enable2ndByteCanID = false ; see PAGE_0_SIZE in C source code ; CONFIG_DEFINITION_START -; this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Thu Nov 29 23:22:22 EST 2018 +; this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun Dec 09 10:18:27 EST 2018 pageSize = 20000 page = 1 @@ -795,7 +795,9 @@ page = 1 tChargeAirIncrLimit = scalar, F32, 4104, "tChange Increment Limit, deg/sec", 1, 0, 0.0, 100.0, 1 tChargeAirDecrLimit = scalar, F32, 4108, "tChange Decrement Limit, deg/sec", 1, 0, 0.0, 100.0, 1 tChargeMode = bits, U32, 4112, [0:0], "RPM+TPS (Default)", "Air Mass Interpolation" -;no TS info - skipping unusedEnd offset 4116 + etbBiasBins = array, U8, 4116, [8], "target TPS position", 1, 0.0, 0, 100.0, 0 + etbBiasValues = array, F32, 4124, [8], "ETB duty cycle bias", 1, 0.0, 0, 100.0, 2 +;no TS info - skipping unusedEnd offset 4156 cltCrankingCorrBins = array, F32, 6480, [8], "C", 1, 0, -100.0, 250.0, 2 cltCrankingCorr = array, F32, 6512, [8], "%", 1, 0, 0.0, 500.0, 2 idleAdvanceBins = array, F32, 6544, [8], "RPM", 1, 0, 0.0, 18000, 2 diff --git a/java_console/models/src/com/rusefi/config/Fields.java b/java_console/models/src/com/rusefi/config/Fields.java index 4e2a7efb991..596f1966c92 100644 --- a/java_console/models/src/com/rusefi/config/Fields.java +++ b/java_console/models/src/com/rusefi/config/Fields.java @@ -1,11 +1,12 @@ package com.rusefi.config; -// this file was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Thu Nov 29 23:22:22 EST 2018 +// this file was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun Dec 09 10:18:27 EST 2018 public class Fields { public static final int LE_COMMAND_LENGTH = 200; public static final int BLOCKING_FACTOR = 400; public static final int FSIO_ANALOG_INPUT_COUNT = 4; public static final int SERVO_COUNT = 8; + public static final int ETB_BIAS_CURVE_LENGTH = 8; public static final int TS_OUTPUT_SIZE = 356; public static final int TS_FILE_VERSION = 20171101; public static final int WARMUP_TARGET_AFR_SIZE = 4; @@ -1049,8 +1050,10 @@ public class Fields { public static final int tChargeAirDecrLimit_offset = 4108; public static final int tChargeMode_offset = 4112; public static final int tChargeMode_offset_hex = 1010; - public static final int unusedEnd_offset = 4116; - public static final int unusedEnd_offset_hex = 1014; + public static final int etbBiasBins_offset = 4116; + public static final int etbBiasBins_offset_hex = 1014; + public static final int etbBiasValues_offset = 4124; + public static final int unusedEnd_offset = 4156; public static final int cltCrankingCorrBins_offset = 6480; public static final int cltCrankingCorrBins_offset_hex = 1950; public static final int cltCrankingCorr_offset = 6512; diff --git a/java_tools/ConfigDefinition.jar b/java_tools/ConfigDefinition.jar index 7bfb01b0a23..78664eea519 100644 Binary files a/java_tools/ConfigDefinition.jar and b/java_tools/ConfigDefinition.jar differ diff --git a/java_tools/configuration_definition/src/com/rusefi/TypesHelper.java b/java_tools/configuration_definition/src/com/rusefi/TypesHelper.java index 0124b15547e..ae1b1b53c61 100644 --- a/java_tools/configuration_definition/src/com/rusefi/TypesHelper.java +++ b/java_tools/configuration_definition/src/com/rusefi/TypesHelper.java @@ -1,5 +1,9 @@ package com.rusefi; +import static com.rusefi.ConfigStructure.INT_16_T; +import static com.rusefi.ConfigStructure.UINT8_T; +import static com.rusefi.ConfigStructure.UINT_16_T; + /** * 1/22/15 */ @@ -12,9 +16,9 @@ public static int getElementSize(String type) { return ConfigDefinition.structures.get(type).totalSize; if (ConfigDefinition.tsCustomSize.containsKey(type)) return ConfigDefinition.tsCustomSize.get(type); - if (type.equals(ConfigStructure.UINT8_T)) + if (type.equals(UINT8_T)) return 1; - if (type.equals(ConfigStructure.INT_16_T) || type.equals(ConfigStructure.UINT_16_T)) { + if (type.equals(INT_16_T) || type.equals(UINT_16_T)) { return 2; } return 4; @@ -27,10 +31,13 @@ static String convertToTs(String type) { return "U32"; if ("int32_t".equals(type) || "int".equals(type)) return "S32"; - if ("int16_t".equals(type)) + if (INT_16_T.equals(type)) return "S16"; - if ("uint16_t".equals(type)) + if (UINT_16_T.equals(type)) return "U16"; + if (UINT8_T.equals(type)) + return "U8"; + System.out.println("No TS type convesion for " + type); return type; }