This commit is contained in:
Your Name
2024-04-29 20:02:20 -05:00
parent e3b5a88027
commit 3733baa671

View File

@@ -309,28 +309,30 @@ class Controls:
self.events.add(EventName.calibrationInvalid)
# Handle lane change
if self.sm['modelV2'].meta.laneChangeState == LaneChangeState.preLaneChange:
direction = self.sm['modelV2'].meta.laneChangeDirection
if (CS.leftBlindspot and direction == LaneChangeDirection.left) or \
(CS.rightBlindspot and direction == LaneChangeDirection.right):
if self.loud_blindspot_alert:
self.events.add(EventName.laneChangeBlockedLoud)
else:
self.events.add(EventName.laneChangeBlocked)
else:
if direction == LaneChangeDirection.left:
if self.sm['frogpilotPlan'].laneWidthLeft >= self.lane_detection_width:
self.events.add(EventName.preLaneChangeLeft)
else:
self.events.add(EventName.noLaneAvailable)
else:
if self.sm['frogpilotPlan'].laneWidthRight >= self.lane_detection_width:
self.events.add(EventName.preLaneChangeRight)
else:
self.events.add(EventName.noLaneAvailable)
elif self.sm['modelV2'].meta.laneChangeState in (LaneChangeState.laneChangeStarting,
LaneChangeState.laneChangeFinishing):
self.events.add(EventName.laneChange)
# CLEARPILOT - Disabled lane change helper
# CLEARPILOT TODO: Make this a toggle
# if self.sm['modelV2'].meta.laneChangeState == LaneChangeState.preLaneChange:
# direction = self.sm['modelV2'].meta.laneChangeDirection
# if (CS.leftBlindspot and direction == LaneChangeDirection.left) or \
# (CS.rightBlindspot and direction == LaneChangeDirection.right):
# if self.loud_blindspot_alert:
# self.events.add(EventName.laneChangeBlockedLoud)
# else:
# self.events.add(EventName.laneChangeBlocked)
# else:
# if direction == LaneChangeDirection.left:
# if self.sm['frogpilotPlan'].laneWidthLeft >= self.lane_detection_width:
# self.events.add(EventName.preLaneChangeLeft)
# else:
# self.events.add(EventName.noLaneAvailable)
# else:
# if self.sm['frogpilotPlan'].laneWidthRight >= self.lane_detection_width:
# self.events.add(EventName.preLaneChangeRight)
# else:
# self.events.add(EventName.noLaneAvailable)
# elif self.sm['modelV2'].meta.laneChangeState in (LaneChangeState.laneChangeStarting,
# LaneChangeState.laneChangeFinishing):
# self.events.add(EventName.laneChange)
for i, pandaState in enumerate(self.sm['pandaStates']):
# All pandas must match the list of safetyConfigs, and if outside this list, must be silent or noOutput