From e13193a832fe46d11ae16b4dfcdc5da08271f9a4 Mon Sep 17 00:00:00 2001 From: rusefi Date: Fri, 26 Apr 2019 13:46:58 -0400 Subject: [PATCH] ETB pause feature - useful while playing on the bench --- firmware/controllers/actuators/electronic_throttle.cpp | 5 +++++ .../algo/engine_configuration_generated_structures.h | 6 +++--- firmware/controllers/algo/rusefi_generated.h | 4 ++-- firmware/integration/rusefi_config.txt | 2 +- firmware/tunerstudio/rusefi.ini | 5 +++-- firmware/tunerstudio/rusefi.input | 1 + java_console/models/src/com/rusefi/config/Fields.java | 6 +++--- 7 files changed, 18 insertions(+), 11 deletions(-) diff --git a/firmware/controllers/actuators/electronic_throttle.cpp b/firmware/controllers/actuators/electronic_throttle.cpp index 30ad7656ea..1062dcc807 100644 --- a/firmware/controllers/actuators/electronic_throttle.cpp +++ b/firmware/controllers/actuators/electronic_throttle.cpp @@ -193,6 +193,11 @@ private: return; } + if (boardConfiguration->pauseEtbControl) { + etb1.dcMotor.Set(0); + return; + } + percent_t actualThrottlePosition = getTPS(); if (engine->etbAutoTune) { diff --git a/firmware/controllers/algo/engine_configuration_generated_structures.h b/firmware/controllers/algo/engine_configuration_generated_structures.h index dae4cd3f74..dc3f15dadb 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 Sat Apr 20 23:18:45 EDT 2019 +// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Fri Apr 26 11:52:57 EDT 2019 // begin #ifndef ENGINE_CONFIGURATION_GENERATED_H_ #define ENGINE_CONFIGURATION_GENERATED_H_ @@ -751,7 +751,7 @@ typedef struct { bool is_enabled_spi_4 : 1; /** offset 144 bit 27 */ - bool unused_board_984_27 : 1; + bool pauseEtbControl : 1; /** offset 144 bit 28 */ bool unused_board_984_28 : 1; @@ -2716,4 +2716,4 @@ typedef struct { #endif // end -// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Sat Apr 20 23:18:45 EDT 2019 +// this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Fri Apr 26 11:52:57 EDT 2019 diff --git a/firmware/controllers/algo/rusefi_generated.h b/firmware/controllers/algo/rusefi_generated.h index ec8dd992ce..0aa293f9ae 100644 --- a/firmware/controllers/algo/rusefi_generated.h +++ b/firmware/controllers/algo/rusefi_generated.h @@ -1447,6 +1447,8 @@ #define overrideCrankingIacSetting_offset_hex 5c4 #define overrideCrankingIgnition_offset 516 #define overrideCrankingIgnition_offset_hex 204 +#define pauseEtbControl_offset 744 +#define pauseEtbControl_offset_hex 2e8 #define pidExtraForLowRpm_offset 3180 #define pidExtraForLowRpm_offset_hex c6c #define pin_mode_e_enum "default", "INVALID", "INVALID", "INVALID", "opendrain", "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", "PULLUP", "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", "PULLDOWN" @@ -1747,8 +1749,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_27_offset 744 -#define unused_board_984_27_offset_hex 2e8 #define unused_board_984_28_offset 744 #define unused_board_984_28_offset_hex 2e8 #define unused_board_984_29_offset 744 diff --git a/firmware/integration/rusefi_config.txt b/firmware/integration/rusefi_config.txt index 1868bc1e5d..e84686154a 100644 --- a/firmware/integration/rusefi_config.txt +++ b/firmware/integration/rusefi_config.txt @@ -598,7 +598,7 @@ bit is_enabled_spi_2 bit useIdleTimingPidControl bit useTPSBasedVeTable bit is_enabled_spi_4 - bit unused_board_984_27 + bit pauseEtbControl bit unused_board_984_28 bit unused_board_984_29 bit unused_board_984_30 diff --git a/firmware/tunerstudio/rusefi.ini b/firmware/tunerstudio/rusefi.ini index 8908d9c1a0..6989bf3397 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 Apr 25 22:18:02 EDT 2019 +; this section was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Fri Apr 26 11:52:57 EDT 2019 pageSize = 20000 page = 1 @@ -338,7 +338,7 @@ page = 1 useIdleTimingPidControl = bits, U32, 744, [24:24], "false", "true" useTPSBasedVeTable = bits, U32, 744, [25:25], "false", "true" is_enabled_spi_4 = bits, U32, 744, [26:26], "false", "true" - unused_board_984_27 = bits, U32, 744, [27:27], "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" unused_board_984_30 = bits, U32, 744, [30:30], "false", "true" @@ -3254,6 +3254,7 @@ cmd_set_engine_type_default = "w\x00\x31\x00\x00" dialog = etbDialogLeft field = "https://rusefi.com/s/etb" field = "Detailed status in console", isVerboseETB + field = "Pause ETB control", pauseEtbControl field = "Throttle Pedal Up", throttlePedalUpVoltage field = "Throttle Pedal Wide Open", throttlePedalWOTVoltage field = "PWM Frequency", etbFreq, {throttlePedalPositionAdcChannel != 16} diff --git a/firmware/tunerstudio/rusefi.input b/firmware/tunerstudio/rusefi.input index 57967501e0..f09095703c 100644 --- a/firmware/tunerstudio/rusefi.input +++ b/firmware/tunerstudio/rusefi.input @@ -2328,6 +2328,7 @@ cmd_set_engine_type_default = "w\x00\x31\x00\x00" dialog = etbDialogLeft field = "https://rusefi.com/s/etb" field = "Detailed status in console", isVerboseETB + field = "Pause ETB control", pauseEtbControl field = "Throttle Pedal Up", throttlePedalUpVoltage field = "Throttle Pedal Wide Open", throttlePedalWOTVoltage field = "PWM Frequency", etbFreq, {throttlePedalPositionAdcChannel != 16} diff --git a/java_console/models/src/com/rusefi/config/Fields.java b/java_console/models/src/com/rusefi/config/Fields.java index 35520f61c4..903fb51044 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 Apr 25 08:26:25 EDT 2019 +// this file was generated automatically by ConfigDefinition.jar based on rusefi_config.txt Fri Apr 26 11:52:57 EDT 2019 public class Fields { public static final int accelerometerSpiDevice_offset = 2736; public static final int acCutoffHighRpm_offset = 1498; @@ -945,6 +945,7 @@ public class Fields { public static final int overrideCrankingIacSetting_offset = 1476; public static final int overrideCrankingIgnition_offset = 516; public static final int overrideCrankingIgnition_offset_hex = 204; + public static final int pauseEtbControl_offset = 744; public static final int pidExtraForLowRpm_offset = 3180; public static final int postCrankingDurationSec_offset = 2464; public static final int postCrankingFactor_offset = 2460; @@ -1126,7 +1127,6 @@ 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_27_offset = 744; public static final int unused_board_984_28_offset = 744; public static final int unused_board_984_29_offset = 744; public static final int unused_board_984_30_offset = 744; @@ -1484,7 +1484,7 @@ public class Fields { public static final Field USEIDLETIMINGPIDCONTROL = Field.create("USEIDLETIMINGPIDCONTROL", 744, FieldType.BIT, 24); public static final Field USETPSBASEDVETABLE = Field.create("USETPSBASEDVETABLE", 744, FieldType.BIT, 25); public static final Field IS_ENABLED_SPI_4 = Field.create("IS_ENABLED_SPI_4", 744, FieldType.BIT, 26); - public static final Field UNUSED_BOARD_984_27 = Field.create("UNUSED_BOARD_984_27", 744, FieldType.BIT, 27); + public static final Field PAUSEETBCONTROL = Field.create("PAUSEETBCONTROL", 744, FieldType.BIT, 27); public static final Field UNUSED_BOARD_984_28 = Field.create("UNUSED_BOARD_984_28", 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 UNUSED_BOARD_984_30 = Field.create("UNUSED_BOARD_984_30", 744, FieldType.BIT, 30);