Merge branch 'vw-laneless-hud' of https://github.com/Ambroos/openpilot into samuel-vw

pull/20676/head
Samuel Keeley 4 years ago
commit 1e78dad3e1
  1. 10
      selfdrive/car/volkswagen/carcontroller.py
  2. 4
      selfdrive/car/volkswagen/interface.py
  3. 22
      selfdrive/car/volkswagen/volkswagencan.py

@ -20,7 +20,7 @@ class CarController():
self.steer_rate_limited = False self.steer_rate_limited = False
def update(self, enabled, CS, frame, actuators, visual_alert, left_lane_visible, right_lane_visible): def update(self, enabled, CS, frame, actuators, visual_alert, left_lane_visible, right_lane_visible, left_lane_depart, right_lane_depart):
""" Controls thread """ """ Controls thread """
P = CarControllerParams P = CarControllerParams
@ -110,18 +110,18 @@ class CarController():
# filters LDW_02 from the factory camera and OP emits LDW_02 at 10Hz. # filters LDW_02 from the factory camera and OP emits LDW_02 at 10Hz.
if frame % P.LDW_STEP == 0: if frame % P.LDW_STEP == 0:
hcaEnabled = True if enabled and not CS.out.standstill else False
if visual_alert == car.CarControl.HUDControl.VisualAlert.steerRequired: if visual_alert == car.CarControl.HUDControl.VisualAlert.steerRequired:
hud_alert = MQB_LDW_MESSAGES["laneAssistTakeOverSilent"] hud_alert = MQB_LDW_MESSAGES["laneAssistTakeOverSilent"]
else: else:
hud_alert = MQB_LDW_MESSAGES["none"] hud_alert = MQB_LDW_MESSAGES["none"]
can_sends.append(volkswagencan.create_mqb_hud_control(self.packer_pt, CANBUS.pt, hcaEnabled,
can_sends.append(volkswagencan.create_mqb_hud_control(self.packer_pt, CANBUS.pt, enabled,
CS.out.steeringPressed, hud_alert, left_lane_visible, CS.out.steeringPressed, hud_alert, left_lane_visible,
right_lane_visible, CS.ldw_lane_warning_left, right_lane_visible, CS.ldw_lane_warning_left,
CS.ldw_lane_warning_right, CS.ldw_side_dlc_tlc, CS.ldw_lane_warning_right, CS.ldw_side_dlc_tlc,
CS.ldw_dlc, CS.ldw_tlc)) CS.ldw_dlc, CS.ldw_tlc, CS.out.standstill,
left_lane_depart, right_lane_depart))
#-------------------------------------------------------------------------- #--------------------------------------------------------------------------
# # # #

@ -168,6 +168,8 @@ class CarInterface(CarInterfaceBase):
can_sends = self.CC.update(c.enabled, self.CS, self.frame, c.actuators, can_sends = self.CC.update(c.enabled, self.CS, self.frame, c.actuators,
c.hudControl.visualAlert, c.hudControl.visualAlert,
c.hudControl.leftLaneVisible, c.hudControl.leftLaneVisible,
c.hudControl.rightLaneVisible) c.hudControl.rightLaneVisible,
c.hudControl.leftLaneDepart,
c.hudControl.rightLaneDepart)
self.frame += 1 self.frame += 1
return can_sends return can_sends

@ -15,18 +15,22 @@ def create_mqb_steering_control(packer, bus, apply_steer, idx, lkas_enabled):
} }
return packer.make_can_msg("HCA_01", bus, values, idx) return packer.make_can_msg("HCA_01", bus, values, idx)
def create_mqb_hud_control(packer, bus, hca_enabled, steering_pressed, hud_alert, left_lane_visible, right_lane_visible, def create_mqb_hud_control(packer, bus, enabled, steering_pressed, hud_alert, left_lane_visible, right_lane_visible,
ldw_lane_warning_left, ldw_lane_warning_right, ldw_side_dlc_tlc, ldw_dlc, ldw_tlc): ldw_lane_warning_left, ldw_lane_warning_right, ldw_side_dlc_tlc, ldw_dlc, ldw_tlc,
if hca_enabled: standstill, left_lane_depart, right_lane_depart):
left_lane_hud = 3 if left_lane_visible else 1 if enabled:
right_lane_hud = 3 if right_lane_visible else 1 left_lane_hud = 3 if left_lane_visible and not standstill else 2
right_lane_hud = 3 if right_lane_visible and not standstill else 2
else: else:
left_lane_hud = 2 if left_lane_visible else 1 left_lane_hud = 1
right_lane_hud = 2 if right_lane_visible else 1 right_lane_hud = 1
left_lane_hud = 3 if left_lane_depart else left_lane_hud
right_lane_hud = 3 if right_lane_depart else right_lane_hud
values = { values = {
"LDW_Status_LED_gelb": 1 if hca_enabled and steering_pressed else 0, "LDW_Status_LED_gelb": 1 if enabled and steering_pressed else 0,
"LDW_Status_LED_gruen": 1 if hca_enabled and not steering_pressed else 0, "LDW_Status_LED_gruen": 1 if enabled and not steering_pressed else 0,
"LDW_Lernmodus_links": left_lane_hud, "LDW_Lernmodus_links": left_lane_hud,
"LDW_Lernmodus_rechts": right_lane_hud, "LDW_Lernmodus_rechts": right_lane_hud,
"LDW_Texte": hud_alert, "LDW_Texte": hud_alert,

Loading…
Cancel
Save