From 8bbd5c0514c2f4abb7a0fdf0c2156a46d93fda84 Mon Sep 17 00:00:00 2001 From: rusefi Date: Thu, 2 May 2019 22:12:43 -0400 Subject: [PATCH] idle using ETB #783 configuration fields --- .../controllers/actuators/idle_thread.cpp | 2 +- ...ngine_configuration_generated_structures.h | 26 +++++++++++-------- firmware/controllers/algo/rusefi_generated.h | 26 ++++++++++--------- firmware/integration/rusefi_config.txt | 8 +++--- firmware/tunerstudio/rusefi.ini | 22 +++++++++------- firmware/tunerstudio/rusefi.input | 4 ++- .../models/src/com/rusefi/config/Fields.java | 26 ++++++++++--------- 7 files changed, 64 insertions(+), 50 deletions(-) diff --git a/firmware/controllers/actuators/idle_thread.cpp b/firmware/controllers/actuators/idle_thread.cpp index f8f0645e8e..bc0f485251 100644 --- a/firmware/controllers/actuators/idle_thread.cpp +++ b/firmware/controllers/actuators/idle_thread.cpp @@ -3,7 +3,7 @@ * @brief Idle Air Control valve thread. * * This thread looks at current RPM and decides if it should increase or decrease IAC duty cycle. - * This file is has the hardware & scheduling logic, desired idle level lives separately + * This file has the hardware & scheduling logic, desired idle level lives separately. * * * @date May 23, 2013 diff --git a/firmware/controllers/algo/engine_configuration_generated_structures.h b/firmware/controllers/algo/engine_configuration_generated_structures.h index 0156182991..a13b6847d8 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 May 02 18:19:27 EDT 2019 +// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Thu May 02 22:11:03 EDT 2019 // begin #ifndef ENGINE_CONFIGURATION_GENERATED_H_ #define ENGINE_CONFIGURATION_GENERATED_H_ @@ -545,22 +545,22 @@ typedef struct { */ uint8_t unusedEtbM; /** - * Digital Potentiometer is used by stock ECU stimulation code * offset 76 */ + uint8_t unusedSpiPadding9; + /** + * Digital Potentiometer is used by stock ECU stimulation code + * offset 77 + */ spi_device_e digitalPotentiometerSpiDevice; /** - * offset 77 + * offset 78 */ brain_pin_e mc33972_cs; - /** - * offset 78 - */ - pin_output_mode_e mc33972_csPinMode; /** * offset 79 */ - uint8_t unusedSpiPadding9; + pin_output_mode_e mc33972_csPinMode; /** * offset 80 */ @@ -757,7 +757,7 @@ typedef struct { bool alignEngineSnifferAtTDC : 1; /** offset 144 bit 29 */ - bool unused_board_984_29 : 1; + bool useETBforIdleControl : 1; /** offset 144 bit 30 */ bool unused_board_984_30 : 1; @@ -967,7 +967,11 @@ typedef struct { /** * offset 372 */ - int unusedAtBoardConfigurationEnd[123]; + float etbIdleRange; + /** + * offset 376 + */ + int unusedAtBoardConfigurationEnd[122]; /** total size 864*/ } board_configuration_s; @@ -2719,4 +2723,4 @@ typedef struct { #endif // end -// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Thu May 02 18:19:27 EDT 2019 +// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Thu May 02 22:11:03 EDT 2019 diff --git a/firmware/controllers/algo/rusefi_generated.h b/firmware/controllers/algo/rusefi_generated.h index eae20f4464..2389972183 100644 --- a/firmware/controllers/algo/rusefi_generated.h +++ b/firmware/controllers/algo/rusefi_generated.h @@ -430,8 +430,8 @@ #define digitalPotentiometerChipSelect3_offset_hex 29e #define digitalPotentiometerChipSelect4_offset 671 #define digitalPotentiometerChipSelect4_offset_hex 29f -#define digitalPotentiometerSpiDevice_offset 676 -#define digitalPotentiometerSpiDevice_offset_hex 2a4 +#define digitalPotentiometerSpiDevice_offset 677 +#define digitalPotentiometerSpiDevice_offset_hex 2a5 #define directSelfStimulation_offset 76 #define directSelfStimulation_offset_hex 4c #define displacement_offset 396 @@ -524,6 +524,8 @@ #define etbDeadband_offset_hex f90 #define etbFreq_offset 2538 #define etbFreq_offset_hex 9ea +#define etbIdleRange_offset 972 +#define etbIdleRange_offset_hex 3cc #define externalKnockSenseAdc_offset 3127 #define externalKnockSenseAdc_offset_hex c37 #define extraInjectionOffset_offset 432 @@ -1400,10 +1402,10 @@ #define max31855spiDevice_offset_hex 324 #define maxKnockSubDeg_offset 552 #define maxKnockSubDeg_offset_hex 228 -#define mc33972_cs_offset 677 -#define mc33972_cs_offset_hex 2a5 -#define mc33972_csPinMode_offset 678 -#define mc33972_csPinMode_offset_hex 2a6 +#define mc33972_cs_offset 678 +#define mc33972_cs_offset_hex 2a6 +#define mc33972_csPinMode_offset 679 +#define mc33972_csPinMode_offset_hex 2a7 #define mc33972spiDevice_offset 4032 #define mc33972spiDevice_offset_hex fc0 #define measureMapOnlyInOneCylinder_offset 744 @@ -1752,8 +1754,6 @@ #define unused_bit_1472_29_offset_hex 5b8 #define unused_bit_1472_30_offset 1464 #define unused_bit_1472_30_offset_hex 5b8 -#define unused_board_984_29_offset 744 -#define unused_board_984_29_offset_hex 2e8 #define unused_board_984_30_offset 744 #define unused_board_984_30_offset_hex 2e8 #define unused_board_984_31_offset 744 @@ -1762,8 +1762,8 @@ #define unusedAlignMaf_offset_hex 22d #define unusedAnotherOne_offset 744 #define unusedAnotherOne_offset_hex 2e8 -#define unusedAtBoardConfigurationEnd_offset 972 -#define unusedAtBoardConfigurationEnd_offset_hex 3cc +#define unusedAtBoardConfigurationEnd_offset 976 +#define unusedAtBoardConfigurationEnd_offset_hex 3d0 #define unusedEtbM_offset 675 #define unusedEtbM_offset_hex 2a3 #define unusedh_offset 1469 @@ -1788,8 +1788,8 @@ #define unusedSpiPadding7_offset_hex fbd #define unusedSpiPadding8_offset 4033 #define unusedSpiPadding8_offset_hex fc1 -#define unusedSpiPadding9_offset 679 -#define unusedSpiPadding9_offset_hex 2a7 +#define unusedSpiPadding9_offset 676 +#define unusedSpiPadding9_offset_hex 2a4 #define unusedt_offset 583 #define unusedt_offset_hex 247 #define unusedTest55_offset 3131 @@ -1808,6 +1808,8 @@ #define useBiQuadAnalogFiltering_offset_hex 4c #define useConstantDwellDuringCranking_offset 1464 #define useConstantDwellDuringCranking_offset_hex 5b8 +#define useETBforIdleControl_offset 744 +#define useETBforIdleControl_offset_hex 2e8 #define useFixedBaroCorrFromMap_offset 1476 #define useFixedBaroCorrFromMap_offset_hex 5c4 #define useFSIO10ForServo3_offset 1464 diff --git a/firmware/integration/rusefi_config.txt b/firmware/integration/rusefi_config.txt index 31a9699428..70a9da1023 100644 --- a/firmware/integration/rusefi_config.txt +++ b/firmware/integration/rusefi_config.txt @@ -523,13 +523,12 @@ brain_pin_e clutchDownPin;some cars have a switch to indicate that clutch pedal brain_pin_e wboHeaterPin; brain_pin_e cj125CsPin; uint8_t[1] unusedEtbM; - + uint8_t[1] unusedSpiPadding9; spi_device_e digitalPotentiometerSpiDevice;Digital Potentiometer is used by stock ECU stimulation code brain_pin_e mc33972_cs; pin_output_mode_e mc33972_csPinMode; - uint8_t[1] unusedSpiPadding9; custom adc_channel_mode_e 4 bits, U32, @OFFSET@, [0:1], "Off", "Slow", "Fast", "INVALID" @@ -600,7 +599,7 @@ bit is_enabled_spi_2 bit is_enabled_spi_4 bit pauseEtbControl bit alignEngineSnifferAtTDC - bit unused_board_984_29 + bit useETBforIdleControl bit unused_board_984_30 bit unused_board_984_31 @@ -683,7 +682,8 @@ maf_sensor_type_e mafSensorType; brain_pin_e clutchUpPin;Some vehicles have a switch to indicate that clutch pedal is all the way up brain_input_pin_e frequencyReportingMapInputPin; pin_input_mode_e clutchUpPinMode; - int[123] unusedAtBoardConfigurationEnd; + float etbIdleRange;;"angle", 1, 0, -100, 100, 2 + int[122] unusedAtBoardConfigurationEnd; end_struct custom le_formula_t 200 string, ASCII, @OFFSET@, 200 diff --git a/firmware/tunerstudio/rusefi.ini b/firmware/tunerstudio/rusefi.ini index df962e03cb..be428aa5cc 100644 --- a/firmware/tunerstudio/rusefi.ini +++ b/firmware/tunerstudio/rusefi.ini @@ -68,7 +68,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 May 02 11:21:08 EDT 2019 +; this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Thu May 02 22:11:03 EDT 2019 pageSize = 20000 page = 1 @@ -273,10 +273,10 @@ page = 1 wboHeaterPin = bits, U08, 673, [0:7], "NONE", "INVALID", "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", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","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" cj125CsPin = bits, U08, 674, [0:7], "NONE", "INVALID", "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", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","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" ;no TS info - skipping unusedEtbM offset 675 - digitalPotentiometerSpiDevice = bits,U32, 676, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4" - mc33972_cs = bits, U08, 677, [0:7], "NONE", "INVALID", "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", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","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" - mc33972_csPinMode = bits, U08, 678, [0:1], "default", "default inverted", "open collector", "open collector inverted" -;no TS info - skipping unusedSpiPadding9 offset 679 +;no TS info - skipping unusedSpiPadding9 offset 676 + digitalPotentiometerSpiDevice = bits,U32, 677, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4" + mc33972_cs = bits, U08, 678, [0:7], "NONE", "INVALID", "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", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","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" + mc33972_csPinMode = bits, U08, 679, [0:1], "default", "default inverted", "open collector", "open collector inverted" etb1_directionPin1 = bits, U08, 680, [0:7], "NONE", "INVALID", "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", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","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" etb1_directionPin2 = bits, U08, 681, [0:7], "NONE", "INVALID", "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", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","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" etb1_controlPin1 = bits, U08, 682, [0:7], "NONE", "INVALID", "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", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","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" @@ -339,9 +339,10 @@ page = 1 useTPSBasedVeTable = bits, U32, 744, [25:25], "false", "true" is_enabled_spi_4 = bits, U32, 744, [26:26], "false", "true" pauseEtbControl = bits, U32, 744, [27:27], "false", "true" - unused_board_984_28 = bits, U32, 744, [28:28], "false", "true" - unused_board_984_29 = bits, U32, 744, [29:29], "false", "true" + alignEngineSnifferAtTDC = bits, U32, 744, [28:28], "false", "true" + useETBforIdleControl = bits, U32, 744, [29:29], "false", "true" unused_board_984_30 = bits, U32, 744, [30:30], "false", "true" + unused_board_984_31 = bits, U32, 744, [31:31], "false", "true" logicAnalyzerPins1 = bits, U08, 748, [0:6], "NONE", "INVALID", "INVALID", "PA1", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "PA9", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PA15", "INVALID", "INVALID", "INVALID", "PB3", "PB4", "PB5", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "PC7", "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", "PE5", "PE6", "INVALID", "INVALID", "PE9", "INVALID", "PE11", "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", "INVALID", "INVALID", "INVALID" logicAnalyzerPins2 = bits, U08, 749, [0:6], "NONE", "INVALID", "INVALID", "PA1", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "PA9", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PA15", "INVALID", "INVALID", "INVALID", "PB3", "PB4", "PB5", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "PC7", "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", "PE5", "PE6", "INVALID", "INVALID", "PE9", "INVALID", "PE11", "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", "INVALID", "INVALID", "INVALID" logicAnalyzerPins3 = bits, U08, 750, [0:6], "NONE", "INVALID", "INVALID", "PA1", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "PA9", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PA15", "INVALID", "INVALID", "INVALID", "PB3", "PB4", "PB5", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "PC7", "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", "PE5", "PE6", "INVALID", "INVALID", "PE9", "INVALID", "PE11", "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", "INVALID", "INVALID", "INVALID" @@ -475,7 +476,8 @@ page = 1 clutchUpPin = bits, U08, 969, [0:7], "NONE", "INVALID", "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", "PF0","PF1","PF2","PF3","PF4","PF5","PF6","PF7","PF8","PF9","PF10","PF11","PF12","PF13","PF14","PF15", "PG0","PG1","PG2","PG3","PG4","PG5","PG6","PG7","PG8","PG9","PG10","PG11","PG12","PG13","PG14","PG15", "PH0","PH1","PH2","PH3","PH4","PH5","PH6","PH7","PH8","PH9","PH10","PH11","PH12","PH13","PH14","PH15","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" frequencyReportingMapInputPin = bits, U08, 970, [0:6], "NONE", "INVALID", "INVALID", "PA1", "PA2", "PA3", "INVALID", "PA5", "PA6", "PA7", "PA8", "PA9", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PA15", "INVALID", "INVALID", "INVALID", "PB3", "PB4", "PB5", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "INVALID", "PC6", "PC7", "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", "PE5", "PE6", "INVALID", "INVALID", "PE9", "INVALID", "PE11", "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", "INVALID", "INVALID", "INVALID" clutchUpPinMode = scalar, U08, 971, "todo", 1, 0, 0, 20, 1 -;no TS info - skipping unusedAtBoardConfigurationEnd offset 972 + etbIdleRange = scalar, F32, 972, "angle", 1, 0, -100, 100, 2 +;no TS info - skipping unusedAtBoardConfigurationEnd offset 976 vvtDisplayInverted = bits, U32, 1464, [0:0], "false", "true" fuelClosedLoopCorrectionEnabled= bits, U32, 1464, [1:1], "false", "true" isVerboseIAC = bits, U32, 1464, [2:2], "false", "true" @@ -2767,8 +2769,8 @@ cmd_set_engine_type_default = "w\x00\x31\x00\x00" dialog = idleSettings, "", yAxis - field = "!Automatic Mode is now Beta Version" field = "Idle IAC control mode", idleMode + field = "use ETB for idle", useETBforIdleControl field = "Use separate Ignition Table for idle", useSeparateAdvanceForIdle field = "Use separate VE Table for idle", useSeparateVeForIdle field = "Use separate IAC Table For Coasting", useIacTableForCoasting, {idleMode == 0} @@ -3299,6 +3301,8 @@ cmd_set_engine_type_default = "w\x00\x31\x00\x00" field = "Debug mode", debugMode field = "TPS", tpsAdcChannel field = "Pedal", throttlePedalPositionAdcChannel + field = "use ETB for idle", useETBforIdleControl + field = "ETB idle maximum angle", etbIdleRange field = "Press buttons to calibrate sensors" field = "You would have to remove air filter to move throttle manually" commandButton = "TPS#1 closed position", cmd_calibrate_tps_1_closed diff --git a/firmware/tunerstudio/rusefi.input b/firmware/tunerstudio/rusefi.input index 76a77d0af6..7943df2bb9 100644 --- a/firmware/tunerstudio/rusefi.input +++ b/firmware/tunerstudio/rusefi.input @@ -1841,8 +1841,8 @@ cmd_set_engine_type_default = "w\x00\x31\x00\x00" dialog = idleSettings, "", yAxis - field = "!Automatic Mode is now Beta Version" field = "Idle IAC control mode", idleMode + field = "use ETB for idle", useETBforIdleControl field = "Use separate Ignition Table for idle", useSeparateAdvanceForIdle field = "Use separate VE Table for idle", useSeparateVeForIdle field = "Use separate IAC Table For Coasting", useIacTableForCoasting, {idleMode == 0} @@ -2373,6 +2373,8 @@ cmd_set_engine_type_default = "w\x00\x31\x00\x00" field = "Debug mode", debugMode field = "TPS", tpsAdcChannel field = "Pedal", throttlePedalPositionAdcChannel + field = "use ETB for idle", useETBforIdleControl + field = "ETB idle maximum angle", etbIdleRange field = "Press buttons to calibrate sensors" field = "You would have to remove air filter to move throttle manually" commandButton = "TPS#1 closed position", cmd_calibrate_tps_1_closed diff --git a/java_console/models/src/com/rusefi/config/Fields.java b/java_console/models/src/com/rusefi/config/Fields.java index a7f49ab06b..0919aa73a2 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 Thu May 02 18:19:27 EDT 2019 +// this file was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Thu May 02 22:11:03 EDT 2019 public class Fields { public static final int accelerometerSpiDevice_offset = 2736; public static final int acCutoffHighRpm_offset = 1498; @@ -271,7 +271,7 @@ public class Fields { public static final int digitalPotentiometerChipSelect2_offset = 669; public static final int digitalPotentiometerChipSelect3_offset = 670; public static final int digitalPotentiometerChipSelect4_offset = 671; - public static final int digitalPotentiometerSpiDevice_offset = 676; + public static final int digitalPotentiometerSpiDevice_offset = 677; public static final int directSelfStimulation_offset = 76; public static final int displacement_offset = 396; public static final int displayMode_offset = 492; @@ -325,6 +325,7 @@ public class Fields { public static final int etbBiasValues_offset = 3944; public static final int etbDeadband_offset = 3984; public static final int etbFreq_offset = 2538; + public static final int etbIdleRange_offset = 972; public static final int externalKnockSenseAdc_offset = 3127; public static final int extraInjectionOffset_offset = 432; public static final int fanOffTemperature_offset = 472; @@ -915,8 +916,8 @@ public class Fields { public static final int max31855spiDevice_offset_hex = 324; public static final int maxKnockSubDeg_offset = 552; public static final int maxKnockSubDeg_offset_hex = 228; - public static final int mc33972_cs_offset = 677; - public static final int mc33972_csPinMode_offset = 678; + public static final int mc33972_cs_offset = 678; + public static final int mc33972_csPinMode_offset = 679; public static final int mc33972spiDevice_offset = 4032; public static final int measureMapOnlyInOneCylinder_offset = 744; public static final String MOCK_IAT_COMMAND = "mock_iat_voltage"; @@ -1129,12 +1130,11 @@ public class Fields { public static final int unused_1484_bit_21_offset = 1476; public static final int unused_bit_1472_29_offset = 1464; public static final int unused_bit_1472_30_offset = 1464; - public static final int unused_board_984_29_offset = 744; public static final int unused_board_984_30_offset = 744; public static final int unused_board_984_31_offset = 744; public static final int unusedAlignMaf_offset = 557; public static final int unusedAnotherOne_offset = 744; - public static final int unusedAtBoardConfigurationEnd_offset = 972; + public static final int unusedAtBoardConfigurationEnd_offset = 976; public static final int unusedEtbM_offset = 675; public static final int unusedh_offset = 1469; public static final int unusedjoy_offset = 943; @@ -1148,7 +1148,7 @@ public class Fields { public static final int unusedSpiPadding6_offset = 4025; public static final int unusedSpiPadding7_offset = 4029; public static final int unusedSpiPadding8_offset = 4033; - public static final int unusedSpiPadding9_offset = 679; + public static final int unusedSpiPadding9_offset = 676; public static final int unusedt_offset = 583; public static final int unusedt_offset_hex = 247; public static final int unusedTest55_offset = 3131; @@ -1160,6 +1160,7 @@ public class Fields { public static final int useAdvanceCorrectionsForCranking_offset = 1476; public static final int useBiQuadAnalogFiltering_offset = 76; public static final int useConstantDwellDuringCranking_offset = 1464; + public static final int useETBforIdleControl_offset = 744; public static final int useFixedBaroCorrFromMap_offset = 1476; public static final int useFSIO10ForServo3_offset = 1464; public static final int useFSIO11ForServo4_offset = 1464; @@ -1419,10 +1420,10 @@ public class Fields { public static final Field WBOHEATERPIN = Field.create("WBOHEATERPIN", 673, FieldType.INT8, brain_pin_e); public static final Field CJ125CSPIN = Field.create("CJ125CSPIN", 674, FieldType.INT8, brain_pin_e); public static final Field UNUSEDETBM = Field.create("UNUSEDETBM", 675, FieldType.INT8); - public static final Field DIGITALPOTENTIOMETERSPIDEVICE = Field.create("DIGITALPOTENTIOMETERSPIDEVICE", 676, FieldType.INT8); - public static final Field MC33972_CS = Field.create("MC33972_CS", 677, FieldType.INT8, brain_pin_e); - public static final Field MC33972_CSPINMODE = Field.create("MC33972_CSPINMODE", 678, FieldType.INT8, pin_output_mode_e); - public static final Field UNUSEDSPIPADDING9 = Field.create("UNUSEDSPIPADDING9", 679, FieldType.INT8); + public static final Field UNUSEDSPIPADDING9 = Field.create("UNUSEDSPIPADDING9", 676, FieldType.INT8); + public static final Field DIGITALPOTENTIOMETERSPIDEVICE = Field.create("DIGITALPOTENTIOMETERSPIDEVICE", 677, FieldType.INT8); + public static final Field MC33972_CS = Field.create("MC33972_CS", 678, FieldType.INT8, brain_pin_e); + public static final Field MC33972_CSPINMODE = Field.create("MC33972_CSPINMODE", 679, FieldType.INT8, pin_output_mode_e); public static final Field ETB1_DIRECTIONPIN1 = Field.create("ETB1_DIRECTIONPIN1", 680, FieldType.INT8, brain_pin_e); public static final Field ETB1_DIRECTIONPIN2 = Field.create("ETB1_DIRECTIONPIN2", 681, FieldType.INT8, brain_pin_e); public static final Field ETB1_CONTROLPIN1 = Field.create("ETB1_CONTROLPIN1", 682, FieldType.INT8, brain_pin_e); @@ -1488,7 +1489,7 @@ public class Fields { public static final Field IS_ENABLED_SPI_4 = Field.create("IS_ENABLED_SPI_4", 744, FieldType.BIT, 26); public static final Field PAUSEETBCONTROL = Field.create("PAUSEETBCONTROL", 744, FieldType.BIT, 27); public static final Field ALIGNENGINESNIFFERATTDC = Field.create("ALIGNENGINESNIFFERATTDC", 744, FieldType.BIT, 28); - public static final Field UNUSED_BOARD_984_29 = Field.create("UNUSED_BOARD_984_29", 744, FieldType.BIT, 29); + public static final Field USEETBFORIDLECONTROL = Field.create("USEETBFORIDLECONTROL", 744, FieldType.BIT, 29); public static final Field UNUSED_BOARD_984_30 = Field.create("UNUSED_BOARD_984_30", 744, FieldType.BIT, 30); public static final Field UNUSED_BOARD_984_31 = Field.create("UNUSED_BOARD_984_31", 744, FieldType.BIT, 31); public static final Field LOGICANALYZERPINS1 = Field.create("LOGICANALYZERPINS1", 748, FieldType.INT8, brain_input_pin_e); @@ -1622,6 +1623,7 @@ public class Fields { public static final Field CLUTCHUPPIN = Field.create("CLUTCHUPPIN", 969, FieldType.INT8, brain_pin_e); public static final Field FREQUENCYREPORTINGMAPINPUTPIN = Field.create("FREQUENCYREPORTINGMAPINPUTPIN", 970, FieldType.INT8, brain_input_pin_e); public static final Field CLUTCHUPPINMODE = Field.create("CLUTCHUPPINMODE", 971, FieldType.INT8); + public static final Field ETBIDLERANGE = Field.create("ETBIDLERANGE", 972, FieldType.FLOAT); public static final Field VVTDISPLAYINVERTED = Field.create("VVTDISPLAYINVERTED", 1464, FieldType.BIT, 0); public static final Field FUELCLOSEDLOOPCORRECTIONENABLED = Field.create("FUELCLOSEDLOOPCORRECTIONENABLED", 1464, FieldType.BIT, 1); public static final Field ISVERBOSEIAC = Field.create("ISVERBOSEIAC", 1464, FieldType.BIT, 2);