Fix for potentially wrong initialisation of the on/off idle control
This commit is contained in:
parent
e96feaa560
commit
822c400c01
|
@ -881,6 +881,7 @@ menuDialog = main
|
||||||
iacPWMdir = "Normal PWM valves increase RPM with higher duty. If RPM decreases with higher duty then select Reverse"
|
iacPWMdir = "Normal PWM valves increase RPM with higher duty. If RPM decreases with higher duty then select Reverse"
|
||||||
iacCLminDuty= "When using closed loop idle control, this is the minimum duty cycle that the PID loop will allow. Combined with the maximum value, this specifies the working range of your idle valve"
|
iacCLminDuty= "When using closed loop idle control, this is the minimum duty cycle that the PID loop will allow. Combined with the maximum value, this specifies the working range of your idle valve"
|
||||||
iacCLmaxDuty= "When using closed loop idle control, this is the maximum duty cycle that the PID loop will allow. Combined with the minimum value, this specifies the working range of your idle valve"
|
iacCLmaxDuty= "When using closed loop idle control, this is the maximum duty cycle that the PID loop will allow. Combined with the minimum value, this specifies the working range of your idle valve"
|
||||||
|
iacFastTemp = "Below this temperature, the idle output will be high (On). Above this temperature, it will turn off."
|
||||||
|
|
||||||
oddfire2 = "The ATDC angle of channel 2 for oddfire engines. This is relative to the TDC angle of channel 1"
|
oddfire2 = "The ATDC angle of channel 2 for oddfire engines. This is relative to the TDC angle of channel 1"
|
||||||
oddfire3 = "The ATDC angle of channel 3 for oddfire engines. This is relative to the TDC angle of channel 1 (NOT channel 2)"
|
oddfire3 = "The ATDC angle of channel 3 for oddfire engines. This is relative to the TDC angle of channel 1 (NOT channel 2)"
|
||||||
|
|
|
@ -87,9 +87,10 @@ void initialiseIdle()
|
||||||
|
|
||||||
case IAC_ALGORITHM_ONOFF:
|
case IAC_ALGORITHM_ONOFF:
|
||||||
//Case 1 is on/off idle control
|
//Case 1 is on/off idle control
|
||||||
if (currentStatus.coolant < configPage4.iacFastTemp)
|
if ((currentStatus.coolant + CALIBRATION_TEMPERATURE_OFFSET) < configPage4.iacFastTemp)
|
||||||
{
|
{
|
||||||
digitalWrite(pinIdle1, HIGH);
|
digitalWrite(pinIdle1, HIGH);
|
||||||
|
idleOn = true;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
|
@ -19,8 +19,8 @@ struct table2D {
|
||||||
byte *values;
|
byte *values;
|
||||||
byte *axisX;
|
byte *axisX;
|
||||||
|
|
||||||
int *values16;
|
int16_t *values16;
|
||||||
int *axisX16;
|
int16_t *axisX16;
|
||||||
|
|
||||||
//Store the last X and Y coordinates in the table. This is used to make the next check faster
|
//Store the last X and Y coordinates in the table. This is used to make the next check faster
|
||||||
int lastXMax, lastXMin;
|
int lastXMax, lastXMin;
|
||||||
|
@ -36,8 +36,8 @@ struct table3D {
|
||||||
byte ySize;
|
byte ySize;
|
||||||
|
|
||||||
byte **values;
|
byte **values;
|
||||||
int *axisX;
|
int16_t *axisX;
|
||||||
int *axisY;
|
int16_t *axisY;
|
||||||
|
|
||||||
//Store the last X and Y coordinates in the table. This is used to make the next check faster
|
//Store the last X and Y coordinates in the table. This is used to make the next check faster
|
||||||
byte lastXMax, lastXMin;
|
byte lastXMax, lastXMin;
|
||||||
|
|
Loading…
Reference in New Issue