Add missing chrysler can parser checks (#1967)

* add missing chrysler can parser checks

* toyota

* toyota cam

* toyota freqs

* chrysler freqs

* doors

* just chrysler for now

* update refs

* update again
old-commit-hash: 1e44b99478
commatwo_master
Adeeb Shihadeh 5 years ago committed by GitHub
parent 55b770ac5d
commit dc5a5160d8
  1. 13
      selfdrive/car/chrysler/carstate.py
  2. 2
      selfdrive/test/process_replay/ref_commit
  3. 7
      selfdrive/test/test_models.py

@ -103,6 +103,13 @@ class CarState(CarStateBase):
("WHEEL_SPEEDS", 50), ("WHEEL_SPEEDS", 50),
("STEERING", 100), ("STEERING", 100),
("ACC_2", 50), ("ACC_2", 50),
("GEAR", 50),
("ACCEL_GAS_134", 50),
("DASHBOARD", 15),
("STEERING_LEVERS", 10),
("SEATBELT_STATUS", 2),
("DOORS", 1),
("TRACTION_BUTTON", 1),
] ]
return CANParser(DBC[CP.carFingerprint]['pt'], signals, checks, 0) return CANParser(DBC[CP.carFingerprint]['pt'], signals, checks, 0)
@ -115,6 +122,10 @@ class CarState(CarStateBase):
("CAR_MODEL", "LKAS_HUD", -1), ("CAR_MODEL", "LKAS_HUD", -1),
("LKAS_STATUS_OK", "LKAS_HEARTBIT", -1) ("LKAS_STATUS_OK", "LKAS_HEARTBIT", -1)
] ]
checks = [] checks = [
("LKAS_COMMAND", 100),
("LKAS_HEARTBIT", 10),
("LKAS_HUD", 4),
]
return CANParser(DBC[CP.carFingerprint]['pt'], signals, checks, 2) return CANParser(DBC[CP.carFingerprint]['pt'], signals, checks, 2)

@ -1 +1 @@
d8944d6eb13c30c2fd5bcc1af5dbad07472c42c0 3e8932a5dc0281b00463d40a5435f659259591c4

@ -99,10 +99,13 @@ class TestCarModel(unittest.TestCase):
# TODO: also check for checkusm and counter violations from can parser # TODO: also check for checkusm and counter violations from can parser
can_invalid_cnt = 0 can_invalid_cnt = 0
CC = car.CarControl.new_message() CC = car.CarControl.new_message()
for msg in self.can_msgs: for i, msg in enumerate(self.can_msgs):
CS = self.CI.update(CC, (msg.as_builder().to_bytes(),)) CS = self.CI.update(CC, (msg.as_builder().to_bytes(),))
self.CI.apply(CC) self.CI.apply(CC)
can_invalid_cnt += not CS.canValid
# wait 2s for low frequency msgs to be seen
if i > 200:
can_invalid_cnt += not CS.canValid
if self.car_model not in ignore_can_valid: if self.car_model not in ignore_can_valid:
self.assertLess(can_invalid_cnt, 50) self.assertLess(can_invalid_cnt, 50)

Loading…
Cancel
Save