From d0b1afdc4e8c8248e00ef2431da61df450796d89 Mon Sep 17 00:00:00 2001 From: Shane Smiskol Date: Fri, 11 Jul 2025 20:43:01 -0700 Subject: [PATCH] actually selfdrived is probably best since it already manages alerts card is car interfacing, controlsd is for calculating control input, selfdrived is rest --- selfdrive/controls/controlsd.py | 9 --------- selfdrive/selfdrived/selfdrived.py | 8 ++++++++ 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/selfdrive/controls/controlsd.py b/selfdrive/controls/controlsd.py index 741cf5c79d..39687ab72a 100755 --- a/selfdrive/controls/controlsd.py +++ b/selfdrive/controls/controlsd.py @@ -10,7 +10,6 @@ from openpilot.common.realtime import config_realtime_process, Priority, Ratekee from openpilot.common.swaglog import cloudlog from opendbc.car.car_helpers import interfaces -from opendbc.car.interfaces import ISO_LATERAL_ACCEL, ISO_LATERAL_JERK from opendbc.car.vehicle_model import VehicleModel from openpilot.selfdrive.controls.lib.drive_helpers import clip_curvature from openpilot.selfdrive.controls.lib.latcontrol import LatControl @@ -19,7 +18,6 @@ from openpilot.selfdrive.controls.lib.latcontrol_angle import LatControlAngle, S from openpilot.selfdrive.controls.lib.latcontrol_torque import LatControlTorque from openpilot.selfdrive.controls.lib.longcontrol import LongControl from openpilot.selfdrive.locationd.helpers import PoseCalibrator, Pose -from openpilot.selfdrive.selfdrived.alertmanager import set_offroad_alert State = log.SelfdriveState.OpenpilotState LaneChangeState = log.LaneChangeState @@ -28,10 +26,6 @@ LaneChangeDirection = log.LaneChangeDirection ACTUATOR_FIELDS = tuple(car.CarControl.Actuators.schema.fields.keys()) -def check_lateral_iso_violation(sm: messaging.SubMaster) -> bool: - return False - - class Controls: def __init__(self) -> None: self.params = Params() @@ -164,9 +158,6 @@ class Controls: hudControl.leadDistanceBars = self.sm['selfdriveState'].personality.raw + 1 hudControl.visualAlert = self.sm['selfdriveState'].alertHudVisual - if check_lateral_iso_violation(self.sm): - set_offroad_alert("Offroad_ViolatedIsoLimits", True) - hudControl.rightLaneVisible = True hudControl.leftLaneVisible = True if self.sm.valid['driverAssistance']: diff --git a/selfdrive/selfdrived/selfdrived.py b/selfdrive/selfdrived/selfdrived.py index f0d06f32c0..507c6ac2fd 100755 --- a/selfdrive/selfdrived/selfdrived.py +++ b/selfdrive/selfdrived/selfdrived.py @@ -7,6 +7,7 @@ import cereal.messaging as messaging from cereal import car, log from msgq.visionipc import VisionIpcClient, VisionStreamType +from opendbc.car.interfaces import ISO_LATERAL_ACCEL, ISO_LATERAL_JERK from openpilot.common.params import Params @@ -39,6 +40,10 @@ SafetyModel = car.CarParams.SafetyModel IGNORED_SAFETY_MODES = (SafetyModel.silent, SafetyModel.noOutput) +def check_lateral_iso_violation(sm: messaging.SubMaster) -> bool: + return False + + class SelfdriveD: def __init__(self, CP=None): self.params = Params() @@ -227,6 +232,9 @@ class SelfdriveD: if self.sm['driverAssistance'].leftLaneDeparture or self.sm['driverAssistance'].rightLaneDeparture: self.events.add(EventName.ldw) + if check_lateral_iso_violation(self.sm): + set_offroad_alert("Offroad_ViolatedIsoLimits", True) + # Handle lane change if self.sm['modelV2'].meta.laneChangeState == LaneChangeState.preLaneChange: direction = self.sm['modelV2'].meta.laneChangeDirection