revert, forward msg

pull/26010/head
Shane Smiskol 3 years ago
parent 3f949ec708
commit fcba2da255
  1. 2
      panda
  2. 2
      selfdrive/car/gm/carcontroller.py
  3. 3
      selfdrive/car/gm/carstate.py
  4. 17
      selfdrive/car/gm/gmcan.py

@ -1 +1 @@
Subproject commit 02b74fcfe19cbb000e5fb696e028f6f67690c20c Subproject commit 55a1c08a90b04ba532eaa6a19b678ed6ebe6d642

@ -112,7 +112,7 @@ class CarController:
else: else:
# Silence "Take Steering" alert sent by camera, send PSCMStatus with HandsOffSWlDetectionStatus=1 # Silence "Take Steering" alert sent by camera, send PSCMStatus with HandsOffSWlDetectionStatus=1
if self.frame % 100 == 0: if self.frame % 10 == 0:
can_sends.append(gmcan.create_pscm_status(self.packer_pt, CS.pscm_status, CS.pscm_status_counter)) can_sends.append(gmcan.create_pscm_status(self.packer_pt, CS.pscm_status, CS.pscm_status_counter))
# Stock longitudinal, integrated at camera # Stock longitudinal, integrated at camera

@ -27,7 +27,7 @@ class CarState(CarStateBase):
self.prev_cruise_buttons = self.cruise_buttons self.prev_cruise_buttons = self.cruise_buttons
self.cruise_buttons = pt_cp.vl["ASCMSteeringButton"]["ACCButtons"] self.cruise_buttons = pt_cp.vl["ASCMSteeringButton"]["ACCButtons"]
self.buttons_counter = pt_cp.vl["ASCMSteeringButton"]["RollingCounter"] self.buttons_counter = pt_cp.vl["ASCMSteeringButton"]["RollingCounter"]
self.pscm_status_counter = pt_cp.vl["PSCMStatus"]["RollingCounter"] self.pscm_status = copy.copy(pt_cp.vl["PSCMStatus"])
# Variables used for avoiding LKAS faults # Variables used for avoiding LKAS faults
self.loopback_lka_steering_cmd_updated = len(loopback_cp.vl_all["ASCMLKASteeringCmd"]) > 0 self.loopback_lka_steering_cmd_updated = len(loopback_cp.vl_all["ASCMLKASteeringCmd"]) > 0
@ -76,7 +76,6 @@ class CarState(CarStateBase):
ret.steeringPressed = abs(ret.steeringTorque) > STEER_THRESHOLD ret.steeringPressed = abs(ret.steeringTorque) > STEER_THRESHOLD
# 0 inactive, 1 active, 2 temporarily limited, 3 failed # 0 inactive, 1 active, 2 temporarily limited, 3 failed
self.pscm_status = copy.copy(pt_cp.vl["PSCMStatus"])
self.lkas_status = pt_cp.vl["PSCMStatus"]["LKATorqueDeliveredStatus"] self.lkas_status = pt_cp.vl["PSCMStatus"]["LKATorqueDeliveredStatus"]
ret.steerFaultTemporary = self.lkas_status == 2 ret.steerFaultTemporary = self.lkas_status == 2
ret.steerFaultPermanent = self.lkas_status == 3 ret.steerFaultPermanent = self.lkas_status == 3

@ -7,27 +7,12 @@ def create_buttons(packer, bus, idx, button):
} }
return packer.make_can_msg("ASCMSteeringButton", bus, values) return packer.make_can_msg("ASCMSteeringButton", bus, values)
def create_pscm_status(packer, pscm_status, idx): def create_pscm_status(packer, pscm_status):
checksum_mod = int(1 - pscm_status["HandsOffSWlDetectionStatus"]) << 5 checksum_mod = int(1 - pscm_status["HandsOffSWlDetectionStatus"]) << 5
checksum_mod += ((pscm_status["RollingCounter"] + 1) & 0xf) - pscm_status["RollingCounter"]
pscm_status["HandsOffSWlDetectionStatus"] = 1 pscm_status["HandsOffSWlDetectionStatus"] = 1
pscm_status["RollingCounter"] += 1 # wraps around
pscm_status["PSCMStatusChecksum"] += checksum_mod pscm_status["PSCMStatusChecksum"] += checksum_mod
return packer.make_can_msg("PSCMStatus", 2, pscm_status) return packer.make_can_msg("PSCMStatus", 2, pscm_status)
# values = {
# "HandsOffSWDetectionMode": 1,
# "HandsOffSWlDetectionStatus": 1,
# "LKATorqueDeliveredStatus": 0,
# "RollingCounter": int(idx + 1) & 0xf,
# }
# values["PSCMStatusChecksum"] = (0x30 + (values['HandsOffSWlDetectionStatus'] << 5) +
# (values['LKATorqueDeliveredStatus'] << 3) +
# (values['HandsOffSWDetectionMode'] << 3) +
# values['RollingCounter'])
#
# return packer.make_can_msg("PSCMStatus", 2, values)
def create_steering_control(packer, bus, apply_steer, idx, lkas_active): def create_steering_control(packer, bus, apply_steer, idx, lkas_active):
values = { values = {

Loading…
Cancel
Save