some fixes

This commit is contained in:
Jason Wen
2025-09-23 00:44:46 -04:00
parent 024086ee5a
commit aab8b5f8b2
@@ -138,14 +138,13 @@ class SpeedLimitAssist:
return self.v_offset / float(ModelConstants.T_IDXS[CONTROL_N])
def _update_pcm_op_long_state(self):
if self.initial_max_set_confirmed():
if self._speed_limit > 0:
if self.v_offset < LIMIT_SPEED_OFFSET_TH:
self.state = SpeedLimitAssistState.adapting
else:
self.state = SpeedLimitAssistState.active
if self._speed_limit > 0:
if self.v_offset < LIMIT_SPEED_OFFSET_TH:
self.state = SpeedLimitAssistState.adapting
else:
self.state = SpeedLimitAssistState.pending
self.state = SpeedLimitAssistState.active
else:
self.state = SpeedLimitAssistState.pending
def update_state_machine(self):
self._state_prev = self.state
@@ -183,7 +182,7 @@ class SpeedLimitAssist:
# PRE_ACTIVE
elif self.state == SpeedLimitAssistState.preActive:
if self.pcm_op_long:
if self.initial_max_set_confirmed():
self._update_pcm_op_long_state()
elif self.pre_active_timer <= PRE_ACTIVE_GUARD_PERIOD:
# Timeout - session ended
@@ -201,7 +200,7 @@ class SpeedLimitAssist:
self.long_engaged_timer = int(DISABLED_GUARD_PERIOD / DT_MDL)
elif self.long_engaged_timer <= 0:
if self.pcm_op_long:
if self.initial_max_set_confirmed():
self._update_pcm_op_long_state()
else:
self.state = SpeedLimitAssistState.preActive