make iTerm limits visible for idle RPM pid #913

This commit is contained in:
rusefi 2019-09-02 00:19:06 -04:00
parent 8126b700de
commit be1b32abf0
11 changed files with 57 additions and 19 deletions

View File

@ -283,6 +283,9 @@ public:
* @see stepper.cpp
*/
idleRpmPid.iTermMin = engineConfiguration->idlerpmpid_iTermMin;
idleRpmPid.iTermMax = engineConfiguration->idlerpmpid_iTermMax;
engine->engineState.isAutomaticIdle = engineConfiguration->idleMode == IM_AUTO;
if (engineConfiguration->isVerboseIAC && engine->engineState.isAutomaticIdle) {
@ -416,6 +419,9 @@ void setDefaultIdleParameters(DECLARE_CONFIG_PARAMETER_SIGNATURE) {
engineConfiguration->idleRpmPid.iFactor = 0.05f;
engineConfiguration->idleRpmPid.dFactor = 0.0f;
engineConfiguration->idleRpmPid.periodMs = 10;
engineConfiguration->idlerpmpid_iTermMin = -200;
engineConfiguration->idlerpmpid_iTermMax = 200;
}
#if ! EFI_UNIT_TEST

View File

@ -816,6 +816,6 @@ int getRusEfiVersion(void) {
if (initBootloader() != 0)
return 123;
#endif /* EFI_BOOTLOADER_INCLUDE_CODE */
return 20190901;
return 20190902;
}
#endif /* EFI_UNIT_TEST */

View File

@ -1,4 +1,4 @@
// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Sat Aug 31 17:47:54 EDT 2019
// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Mon Sep 02 00:13:32 EDT 2019
// by class com.rusefi.output.CHeaderConsumer
// begin
#ifndef CONTROLLERS_GENERATED_ENGINE_CONFIGURATION_GENERATED_STRUCTURES_H
@ -2508,9 +2508,10 @@ struct engine_configuration_s {
*/
spi_device_e mc33816spiDevice;
/**
* iTerm min value
* offset 4002
*/
uint8_t unusedSpiPadding6[2];
int16_t idlerpmpid_iTermMin;
/**
* offset 4004
*/
@ -2518,7 +2519,12 @@ struct engine_configuration_s {
/**
* offset 4005
*/
uint8_t unusedSpiPadding7[3];
uint8_t unusedSpiPadding7;
/**
* iTerm max value
* offset 4006
*/
int16_t idlerpmpid_iTermMax;
/**
* offset 4008
*/
@ -2814,4 +2820,4 @@ typedef struct persistent_config_s persistent_config_s;
#endif
// end
// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Sat Aug 31 17:47:54 EDT 2019
// this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Mon Sep 02 00:13:32 EDT 2019

View File

@ -1063,6 +1063,10 @@
#define idleRpmPid_dFactor_offset_hex 704
#define idleRpmPid_iFactor_offset 1792
#define idleRpmPid_iFactor_offset_hex 700
#define idlerpmpid_iTermMax_offset 4006
#define idlerpmpid_iTermMax_offset_hex fa6
#define idlerpmpid_iTermMin_offset 4002
#define idlerpmpid_iTermMin_offset_hex fa2
#define idleRpmPid_maxValue_offset 1806
#define idleRpmPid_maxValue_offset_hex 70e
#define idleRpmPid_minValue_offset 1804
@ -1878,8 +1882,6 @@
#define unusedSpiPadding4_offset_hex a21
#define unusedSpiPadding5_offset 2713
#define unusedSpiPadding5_offset_hex a99
#define unusedSpiPadding6_offset 4002
#define unusedSpiPadding6_offset_hex fa2
#define unusedSpiPadding7_offset 4005
#define unusedSpiPadding7_offset_hex fa5
#define unusedSpiPadding8_offset 4009

View File

@ -1040,9 +1040,12 @@ tChargeMode_e tChargeMode;
spi_device_e tle8888spiDevice;
spi_device_e mc33816spiDevice;
uint8_t[2] unusedSpiPadding6;
int16_t idlerpmpid_iTermMin;iTerm min value;"", 1, 0, -30000, 30000.0, 0
spi_device_e tle6240spiDevice;
uint8_t[3] unusedSpiPadding7;
uint8_t[1] unusedSpiPadding7;
int16_t idlerpmpid_iTermMax;iTerm max value;"", 1, 0, -30000, 30000.0, 0
spi_device_e mc33972spiDevice;
uint8_t[3] unusedSpiPadding8;

View File

@ -82,7 +82,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 integration\rusefi_config.txt Sat Aug 31 17:47:54 EDT 2019
; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Mon Sep 02 00:13:32 EDT 2019
pageSize = 20000
page = 1
@ -870,9 +870,10 @@ page = 1
tpsAccelFractionDivisor = scalar, F32, 3996, "coef", 1, 0, 0, 100, 2
tle8888spiDevice = bits,U32, 4000, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4"
mc33816spiDevice = bits,U32, 4001, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4"
;no TS info - skipping unusedSpiPadding6 offset 4002
idlerpmpid_iTermMin = scalar, S16, 4002, "", 1, 0, -30000, 30000.0, 0
tle6240spiDevice = bits,U32, 4004, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4"
;no TS info - skipping unusedSpiPadding7 offset 4005
idlerpmpid_iTermMax = scalar, S16, 4006, "", 1, 0, -30000, 30000.0, 0
mc33972spiDevice = bits,U32, 4008, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4"
;no TS info - skipping unusedSpiPadding8 offset 4009
etbIdleThrottleRange = scalar, F32, 4012, "%", 1, 0, 0, 15, 0
@ -2899,6 +2900,8 @@ cmd_set_engine_type_default = "w\x00\x31\x00\x00"
field = "Offset", idleRpmPid_offset
field = "Min", idleRpmPid_minValue
field = "Max", idleRpmPid_maxValue
field = "iTerm Min", idlerpmpid_iTermMin
field = "iTerm Max", idlerpmpid_iTermMax
field = "period", idleRpmPid_periodMs
field = "RPM dead zone to deactivate IAC pid", idlePidRpmDeadZone
field = "RPM upper limit to deactivate IAC pid",idlePidRpmUpperLimit

View File

@ -1920,6 +1920,8 @@ cmd_set_engine_type_default = "w\x00\x31\x00\x00"
field = "Offset", idleRpmPid_offset
field = "Min", idleRpmPid_minValue
field = "Max", idleRpmPid_maxValue
field = "iTerm Min", idlerpmpid_iTermMin
field = "iTerm Max", idlerpmpid_iTermMax
field = "period", idleRpmPid_periodMs
field = "RPM dead zone to deactivate IAC pid", idlePidRpmDeadZone
field = "RPM upper limit to deactivate IAC pid",idlePidRpmUpperLimit

View File

@ -82,7 +82,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 integration\rusefi_config.txt Sat Aug 31 17:48:24 EDT 2019
; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Mon Sep 02 00:13:37 EDT 2019
pageSize = 20000
page = 1
@ -870,9 +870,10 @@ page = 1
tpsAccelFractionDivisor = scalar, F32, 3996, "coef", 1, 0, 0, 100, 2
tle8888spiDevice = bits,U32, 4000, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4"
mc33816spiDevice = bits,U32, 4001, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4"
;no TS info - skipping unusedSpiPadding6 offset 4002
idlerpmpid_iTermMin = scalar, S16, 4002, "", 1, 0, -30000, 30000.0, 0
tle6240spiDevice = bits,U32, 4004, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4"
;no TS info - skipping unusedSpiPadding7 offset 4005
idlerpmpid_iTermMax = scalar, S16, 4006, "", 1, 0, -30000, 30000.0, 0
mc33972spiDevice = bits,U32, 4008, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4"
;no TS info - skipping unusedSpiPadding8 offset 4009
etbIdleThrottleRange = scalar, F32, 4012, "%", 1, 0, 0, 15, 0
@ -2899,6 +2900,8 @@ cmd_set_engine_type_default = "w\x00\x31\x00\x00"
field = "Offset", idleRpmPid_offset
field = "Min", idleRpmPid_minValue
field = "Max", idleRpmPid_maxValue
field = "iTerm Min", idlerpmpid_iTermMin
field = "iTerm Max", idlerpmpid_iTermMax
field = "period", idleRpmPid_periodMs
field = "RPM dead zone to deactivate IAC pid", idlePidRpmDeadZone
field = "RPM upper limit to deactivate IAC pid",idlePidRpmUpperLimit

View File

@ -82,7 +82,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 integration\rusefi_config.txt Sat Aug 31 17:48:10 EDT 2019
; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Mon Sep 02 00:13:35 EDT 2019
pageSize = 20000
page = 1
@ -870,9 +870,10 @@ page = 1
tpsAccelFractionDivisor = scalar, F32, 3996, "coef", 1, 0, 0, 100, 2
tle8888spiDevice = bits,U32, 4000, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4"
mc33816spiDevice = bits,U32, 4001, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4"
;no TS info - skipping unusedSpiPadding6 offset 4002
idlerpmpid_iTermMin = scalar, S16, 4002, "", 1, 0, -30000, 30000.0, 0
tle6240spiDevice = bits,U32, 4004, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4"
;no TS info - skipping unusedSpiPadding7 offset 4005
idlerpmpid_iTermMax = scalar, S16, 4006, "", 1, 0, -30000, 30000.0, 0
mc33972spiDevice = bits,U32, 4008, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4"
;no TS info - skipping unusedSpiPadding8 offset 4009
etbIdleThrottleRange = scalar, F32, 4012, "%", 1, 0, 0, 15, 0
@ -2884,6 +2885,8 @@ cmd_set_engine_type_default = "w\x00\x31\x00\x00"
field = "Offset", idleRpmPid_offset
field = "Min", idleRpmPid_minValue
field = "Max", idleRpmPid_maxValue
field = "iTerm Min", idlerpmpid_iTermMin
field = "iTerm Max", idlerpmpid_iTermMax
field = "period", idleRpmPid_periodMs
field = "RPM dead zone to deactivate IAC pid", idlePidRpmDeadZone
field = "RPM upper limit to deactivate IAC pid",idlePidRpmUpperLimit

View File

@ -82,7 +82,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 integration\rusefi_config.txt Sat Aug 31 17:48:37 EDT 2019
; this section was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Mon Sep 02 00:13:40 EDT 2019
pageSize = 20000
page = 1
@ -870,9 +870,10 @@ page = 1
tpsAccelFractionDivisor = scalar, F32, 3996, "coef", 1, 0, 0, 100, 2
tle8888spiDevice = bits,U32, 4000, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4"
mc33816spiDevice = bits,U32, 4001, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4"
;no TS info - skipping unusedSpiPadding6 offset 4002
idlerpmpid_iTermMin = scalar, S16, 4002, "", 1, 0, -30000, 30000.0, 0
tle6240spiDevice = bits,U32, 4004, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4"
;no TS info - skipping unusedSpiPadding7 offset 4005
idlerpmpid_iTermMax = scalar, S16, 4006, "", 1, 0, -30000, 30000.0, 0
mc33972spiDevice = bits,U32, 4008, [0:2], "Off", "SPI1", "SPI2", "SPI3", "SPI4"
;no TS info - skipping unusedSpiPadding8 offset 4009
etbIdleThrottleRange = scalar, F32, 4012, "%", 1, 0, 0, 15, 0
@ -2895,6 +2896,8 @@ cmd_set_engine_type_default = "w\x00\x31\x00\x00"
field = "Offset", idleRpmPid_offset
field = "Min", idleRpmPid_minValue
field = "Max", idleRpmPid_maxValue
field = "iTerm Min", idlerpmpid_iTermMin
field = "iTerm Max", idlerpmpid_iTermMax
field = "period", idleRpmPid_periodMs
field = "RPM dead zone to deactivate IAC pid", idlePidRpmDeadZone
field = "RPM upper limit to deactivate IAC pid",idlePidRpmUpperLimit

View File

@ -1,6 +1,6 @@
package com.rusefi.config.generated;
// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Sun Sep 01 17:24:09 EDT 2019
// this file was generated automatically by rusEfi tool ConfigDefinition.jar based on integration\rusefi_config.txt Mon Sep 02 00:13:32 EDT 2019
// by class com.rusefi.output.JavaFieldsConsumer
import com.rusefi.config.*;
@ -712,6 +712,8 @@ public class Fields {
public static final int idleRpmPid_dFactor_offset_hex = 704;
public static final int idleRpmPid_iFactor_offset = 1792;
public static final int idleRpmPid_iFactor_offset_hex = 700;
public static final int idlerpmpid_iTermMax_offset = 4006;
public static final int idlerpmpid_iTermMin_offset = 4002;
public static final int idleRpmPid_maxValue_offset = 1806;
public static final int idleRpmPid_minValue_offset = 1804;
public static final int idleRpmPid_offset = 1788;
@ -1218,7 +1220,6 @@ public class Fields {
public static final int unusedSpiPadding3_offset = 4036;
public static final int unusedSpiPadding4_offset = 2593;
public static final int unusedSpiPadding5_offset = 2713;
public static final int unusedSpiPadding6_offset = 4002;
public static final int unusedSpiPadding7_offset = 4005;
public static final int unusedSpiPadding8_offset = 4009;
public static final int unuseduartPadding1_offset = 808;
@ -2027,7 +2028,10 @@ public class Fields {
public static final Field TPSACCELFRACTIONDIVISOR = Field.create("TPSACCELFRACTIONDIVISOR", 3996, FieldType.FLOAT);
public static final Field TLE8888SPIDEVICE = Field.create("TLE8888SPIDEVICE", 4000, FieldType.INT8);
public static final Field MC33816SPIDEVICE = Field.create("MC33816SPIDEVICE", 4001, FieldType.INT8);
public static final Field IDLERPMPID_ITERMMIN = Field.create("IDLERPMPID_ITERMMIN", 4002, FieldType.INT16);
public static final Field TLE6240SPIDEVICE = Field.create("TLE6240SPIDEVICE", 4004, FieldType.INT8);
public static final Field UNUSEDSPIPADDING7 = Field.create("UNUSEDSPIPADDING7", 4005, FieldType.INT8);
public static final Field IDLERPMPID_ITERMMAX = Field.create("IDLERPMPID_ITERMMAX", 4006, FieldType.INT16);
public static final Field MC33972SPIDEVICE = Field.create("MC33972SPIDEVICE", 4008, FieldType.INT8);
public static final Field ETBIDLETHROTTLERANGE = Field.create("ETBIDLETHROTTLERANGE", 4012, FieldType.FLOAT);
public static final Field PEDALTOTPSTABLE = Field.create("PEDALTOTPSTABLE", 6400, FieldType.INT);
@ -2791,7 +2795,10 @@ public class Fields {
TPSACCELFRACTIONDIVISOR,
TLE8888SPIDEVICE,
MC33816SPIDEVICE,
IDLERPMPID_ITERMMIN,
TLE6240SPIDEVICE,
UNUSEDSPIPADDING7,
IDLERPMPID_ITERMMAX,
MC33972SPIDEVICE,
ETBIDLETHROTTLERANGE,
PEDALTOTPSTABLE,