diff --git a/firmware/controllers/algo/engine_configuration_generated_structures.h b/firmware/controllers/algo/engine_configuration_generated_structures.h
index a7abc4ec4e..a5b66a48ff 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 Tue Mar 01 22:57:52 EST 2016
+// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Thu Mar 03 21:43:13 EST 2016
// begin
#ifndef ENGINE_CONFIGURATION_GENERATED_H_
#define ENGINE_CONFIGURATION_GENERATED_H_
@@ -1643,9 +1643,35 @@ typedef struct {
* offset 16024
*/
float afrRpmBins[FUEL_RPM_COUNT];
- /** total size 16088*/
+ /**
+ * offset 16088
+ */
+ fsio_table_8x8_t fsioTable1;
+ /**
+ * offset 16344
+ */
+ float fsioTable1LoadBins[FSIO_TABLE_8];
+ /**
+ * RPM is float and not integer in order to use unified methods for interpolation
+ * offset 16376
+ */
+ float fsioTable1RpmBins[FSIO_TABLE_8];
+ /**
+ * offset 16408
+ */
+ fsio_table_8x8_t fsioTable2;
+ /**
+ * offset 16664
+ */
+ float fsioTable2LoadBins[FSIO_TABLE_8];
+ /**
+ * RPM is float and not integer in order to use unified methods for interpolation
+ * offset 16696
+ */
+ float fsioTable2RpmBins[FSIO_TABLE_8];
+ /** total size 16728*/
} persistent_config_s;
#endif
// end
-// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Tue Mar 01 22:57:52 EST 2016
+// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Thu Mar 03 21:43:13 EST 2016
diff --git a/firmware/controllers/algo/rusefi_generated.h b/firmware/controllers/algo/rusefi_generated.h
index 8a22e5d95d..94600490d1 100644
--- a/firmware/controllers/algo/rusefi_generated.h
+++ b/firmware/controllers/algo/rusefi_generated.h
@@ -810,4 +810,14 @@
#define afrTable_offset 14936
#define afrLoadBins_offset 15960
#define afrRpmBins_offset 16024
-#define TOTAL_CONFIG_SIZE 16088
+#define fsioTable1_offset 16088
+#define fsioTable1LoadBins_offset 16344
+#define fsioTable1RpmBins_offset 16376
+#define fsioTable2_offset 16408
+#define fsioTable2_offset_hex 4018
+#define fsioTable2LoadBins_offset 16664
+#define fsioTable2LoadBins_offset_hex 4118
+#define fsioTable2RpmBins_offset 16696
+#define fsioTable2RpmBins_offset_hex 4138
+#define TOTAL_CONFIG_SIZE 16728
+#define TOTAL_CONFIG_SIZE_hex 4158
diff --git a/firmware/rusefi.cpp b/firmware/rusefi.cpp
index c358648a51..f467e4d333 100644
--- a/firmware/rusefi.cpp
+++ b/firmware/rusefi.cpp
@@ -275,5 +275,5 @@ int getRusEfiVersion(void) {
return 123; // this is here to make the compiler happy about the unused array
if (UNUSED_CCM_SIZE[0] * 0 != 0)
return 3211; // this is here to make the compiler happy about the unused array
- return 20160302;
+ return 20160303;
}
diff --git a/firmware/tunerstudio/rusefi.ini b/firmware/tunerstudio/rusefi.ini
index d15286c36f..e072e0bc8f 100644
--- a/firmware/tunerstudio/rusefi.ini
+++ b/firmware/tunerstudio/rusefi.ini
@@ -41,9 +41,9 @@ 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 Tue Mar 01 22:57:52 EST 2016
+; this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Thu Mar 03 21:43:13 EST 2016
-pageSize = 16088
+pageSize = 16728
page = 1
engineType = bits, S32, 0, [0:2], "AUDI_AAN", "DODGE_NEON_1995", "FORD_ASPIRE_1996", "FORD_FIESTA", "NISSAN_PRIMERA", "HONDA_ACCORD", "FORD_INLINE_6_1995", "GY6_139QMB"
engineSnifferRpmThreshold = scalar, S32, 4, "RPM", 1, 0, 0,30000, 0
@@ -66,8 +66,8 @@ page = 1
map_samplingAngle = array, F32, 144, [8], "deg", 1, 0, 0.0, 90, 2
map_samplingWindowBins = array, F32, 176, [8], "RPM", 1, 0, 0.0, 18000, 2
map_samplingWindow = array, F32, 208, [8], "deg", 1, 0, 0.0, 90, 2
- map_sensor_valueAt0 = scalar, F32, 240, "kpa", 1, 0, 0, 450, 2
- map_sensor_valueAt5 = scalar, F32, 244, "kpa", 1, 0, 0, 450, 2
+ map_sensor_valueAt0 = scalar, F32, 240, "kpa", 1, 0, -400, 800, 2
+ map_sensor_valueAt5 = scalar, F32, 244, "kpa", 1, 0, -400, 800, 2
map_sensor_type = bits, U32, 248, [0:2] "Custom", "DENSO183", "MPX4250", "HONDA3BAR", "NEON_2003", "22012AA090", "3 Bar", "INVALID"
map_sensor_hwChannel = bits, U32, 252, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID"
clt_tempC_1 = scalar, F32, 256, "*C", 1, 0, -40, 200, 1
@@ -147,8 +147,8 @@ page = 1
afr_v2 = scalar, F32, 596, "volts", 1, 0.0, 0, 10.0, 2
afr_value2 = scalar, F32, 600, "AFR", 1, 0.0, 0, 1000.0, 2
pedalPositionChannel = bits, U32, 604, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID"
- baroSensor_valueAt0 = scalar, F32, 608, "kpa", 1, 0, 0, 450, 2
- baroSensor_valueAt5 = scalar, F32, 612, "kpa", 1, 0, 0, 450, 2
+ baroSensor_valueAt0 = scalar, F32, 608, "kpa", 1, 0, -400, 800, 2
+ baroSensor_valueAt5 = scalar, F32, 612, "kpa", 1, 0, -400, 800, 2
baroSensor_type = bits, U32, 616, [0:2] "Custom", "DENSO183", "MPX4250", "HONDA3BAR", "NEON_2003", "22012AA090", "3 Bar", "INVALID"
baroSensor_hwChannel = bits, U32, 620, [0:4] "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PB0", "PB1", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "Disabled", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID"
idle_solenoidPin = bits, U32, 624, [0:6], "PA0", "PA1", "PA2", "PA3", "PA4", "PA5", "PA6", "PA7", "PA8", "PA9", "PA10", "PA11", "PA12", "PA13", "PA14", "PA15", "PB0", "PB1", "PB2", "PB3", "PB4", "PB5", "PB6", "PB7", "PB8", "PB9", "PB10", "PB11", "PB12", "PB13", "PB14", "PB15", "PC0", "PC1", "PC2", "PC3", "PC4", "PC5", "PC6", "PC7", "PC8", "PC9", "PC10", "PC11", "PC12", "PC13", "PC14", "PC15", "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", "PE0", "PE1", "PE2", "PE3", "PE4", "PE5", "PE6", "PE7", "PE8", "PE9", "PE10", "PE11", "PE12", "PE13", "PE14", "PE15", "NONE", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID"
@@ -581,7 +581,13 @@ page = 1
afrTable = array, F32, 14936, [16x16],"deg", 1, 0, 0, 25.0, 2
afrLoadBins = array, F32, 15960, [16], "%", 1, 0.0, 0, 300.0, 2
afrRpmBins = array, F32, 16024, [16], "RPM", 1, 0.0, 0, 18000.0, 2
-; total TS size = 16088
+ fsioTable1 = array, F32, 16088, [8x8],"value", 1, 0, 0.0, 30000.0, 2
+ fsioTable1LoadBins = array, F32, 16344, [8], "L", 1, 0, 0.0, 30000.0, 2
+ fsioTable1RpmBins = array, F32, 16376, [8], "RPM", 1, 0, 0.0, 25500.0, 2
+ fsioTable2 = array, F32, 16408, [8x8],"value", 1, 0, 0.0, 30000.0, 2
+ fsioTable2LoadBins = array, F32, 16664, [8], "L", 1, 0, 0.0, 30000.0, 2
+ fsioTable2RpmBins = array, F32, 16696, [8], "RPM", 1, 0, 0.0, 25500.0, 2
+; total TS size = 16728
; CONFIG_DEFINITION_END
diff --git a/java_console/io/src/com/rusefi/TsPageSize.java b/java_console/io/src/com/rusefi/TsPageSize.java
index 701eaf7f19..4346c9915e 100644
--- a/java_console/io/src/com/rusefi/TsPageSize.java
+++ b/java_console/io/src/com/rusefi/TsPageSize.java
@@ -1,5 +1,5 @@
package com.rusefi;
public interface TsPageSize {
- int IMAGE_SIZE = 16088;
+ int IMAGE_SIZE = 16728;
}
diff --git a/java_console/models/src/com/rusefi/config/Fields.java b/java_console/models/src/com/rusefi/config/Fields.java
index 128f06cbad..74b513ab6b 100644
--- a/java_console/models/src/com/rusefi/config/Fields.java
+++ b/java_console/models/src/com/rusefi/config/Fields.java
@@ -1,6 +1,6 @@
package com.rusefi.config;
-// this file was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sun Feb 28 00:56:56 EST 2016
+// this file was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Thu Mar 03 21:43:13 EST 2016
public class Fields {
public static final int LE_COMMAND_LENGTH = 200;
public static final int TS_FILE_VERSION = 20160122;
@@ -26,6 +26,7 @@ public class Fields {
public static final int LE_COMMAND_COUNT = 16;
public static final int FUEL_RPM_COUNT = 16;
public static final int FUEL_LOAD_COUNT = 16;
+ public static final int FSIO_TABLE_8 = 8;
public static final int BARO_CORR_SIZE = 4;
public static final int MAF_DECODING_COUNT = 256;
public static final int engineConfiguration_offset = 0;
@@ -813,7 +814,17 @@ public class Fields {
public static final int afrTable_offset = 14936;
public static final int afrLoadBins_offset = 15960;
public static final int afrRpmBins_offset = 16024;
- public static final int TOTAL_CONFIG_SIZE = 16088;
+ public static final int fsioTable1_offset = 16088;
+ public static final int fsioTable1LoadBins_offset = 16344;
+ public static final int fsioTable1RpmBins_offset = 16376;
+ public static final int fsioTable2_offset = 16408;
+ public static final int fsioTable2_offset_hex = 4018;
+ public static final int fsioTable2LoadBins_offset = 16664;
+ public static final int fsioTable2LoadBins_offset_hex = 4118;
+ public static final int fsioTable2RpmBins_offset = 16696;
+ public static final int fsioTable2RpmBins_offset_hex = 4138;
+ public static final int TOTAL_CONFIG_SIZE = 16728;
+ public static final int TOTAL_CONFIG_SIZE_hex = 4158;
public static final Field ENGINETYPE = Field.create("ENGINETYPE", 0, FieldType.INT);
public static final Field ENGINESNIFFERRPMTHRESHOLD = Field.create("ENGINESNIFFERRPMTHRESHOLD", 4, FieldType.INT);
public static final Field INJECTOR_FLOW = Field.create("INJECTOR_FLOW", 8, FieldType.FLOAT);
@@ -1311,4 +1322,6 @@ public class Fields {
public static final Field IGNITIONTABLE = Field.create("IGNITIONTABLE", 12632, FieldType.INT);
public static final Field VETABLE = Field.create("VETABLE", 13784, FieldType.INT);
public static final Field AFRTABLE = Field.create("AFRTABLE", 14936, FieldType.INT);
+ public static final Field FSIOTABLE1 = Field.create("FSIOTABLE1", 16088, FieldType.INT);
+ public static final Field FSIOTABLE2 = Field.create("FSIOTABLE2", 16408, FieldType.INT);
}
diff --git a/java_console/rusefi.xml b/java_console/rusefi.xml
index d5bab17dfd..3bb73a6770 100644
--- a/java_console/rusefi.xml
+++ b/java_console/rusefi.xml
@@ -7,7 +7,7 @@