feat: S12 — vcucmd 3-state command from VCU (replaces binary vcustop) #10
+9
-1
@@ -414,9 +414,17 @@ void ChargerStateMachine()
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
dcCurController.SetRef(0);
|
// Final ramp tick: clear GPIOs (cuts AC enable; output decays
|
||||||
|
// through filter caps) and restore the PI reference to the
|
||||||
|
// current idcspnt/idclim so the NEXT EVSEACTIVATE entry
|
||||||
|
// doesn't sip at 0 A. Param::Change only fires on parameter
|
||||||
|
// changes; a normal restart cycle never touches idcspnt or
|
||||||
|
// idclim, so without this restore the PI controller stays
|
||||||
|
// pinned at 0 across the cycle. Iteration O bug — bench-
|
||||||
|
// confirmed 0.1 kW sip on limit-raise from COMPLETE.
|
||||||
DigIo::acpres_out.Clear();
|
DigIo::acpres_out.Clear();
|
||||||
DigIo::evseact_out.Clear();
|
DigIo::evseact_out.Clear();
|
||||||
|
dcCurController.SetRef(MIN(Param::Get(Param::idcspnt), Param::Get(Param::idclim)));
|
||||||
completeRampTicks = 0;
|
completeRampTicks = 0;
|
||||||
completeRampOriginalRef = 0;
|
completeRampOriginalRef = 0;
|
||||||
state = STOP;
|
state = STOP;
|
||||||
|
|||||||
Reference in New Issue
Block a user