diff --git a/selfdrive/car/subaru/carcontroller.py b/selfdrive/car/subaru/carcontroller.py index f5ccb2fc95..8cfa48f1c9 100644 --- a/selfdrive/car/subaru/carcontroller.py +++ b/selfdrive/car/subaru/carcontroller.py @@ -81,7 +81,7 @@ class CarController: self.es_dashstatus_cnt = CS.es_dashstatus_msg["COUNTER"] if self.infotainmentstatus_cnt != CS.es_infotainmentstatus_msg["COUNTER"]: - can_sends.append(subarucan.create_infotainmentstatus(self.packer, CS.es_infotainmentstatus_msg)) + can_sends.append(subarucan.create_infotainmentstatus(self.packer, CS.es_infotainmentstatus_msg, hud_control.visualAlert)) self.infotainmentstatus_cnt = CS.es_infotainmentstatus_msg["COUNTER"] if self.es_lkas_cnt != CS.es_lkas_msg["COUNTER"]: diff --git a/selfdrive/car/subaru/subarucan.py b/selfdrive/car/subaru/subarucan.py index ab0d97b96d..b7a7e4fc6f 100644 --- a/selfdrive/car/subaru/subarucan.py +++ b/selfdrive/car/subaru/subarucan.py @@ -76,13 +76,17 @@ def create_es_dashstatus(packer, dashstatus_msg): return packer.make_can_msg("ES_DashStatus", 0, values) -def create_infotainmentstatus(packer, infotainmentstatus_msg): +def create_infotainmentstatus(packer, infotainmentstatus_msg, visual_alert): values = copy.copy(infotainmentstatus_msg) # Filter stock LKAS disabled and Keep hands on steering wheel OFF alerts if values["LKAS_State_Infotainment"] in [1,2]: values["LKAS_State_Infotainment"] = 0 + # Show Keep hands on wheel alert for openpilot steerRequired alert + if visual_alert == VisualAlert.steerRequired: + values["LKAS_State_Infotainment"] = 1 + return packer.make_can_msg("INFOTAINMENT_STATUS", 0, values) # *** Subaru Pre-global ***