Chrysler: limit buttons to 20Hz (#25125)

* Chrysler: limit buttons to 10Hz

* cleanup

* 20hz
old-commit-hash: 614b3a01f8
taco
Adeeb Shihadeh 3 years ago committed by GitHub
parent 20746c221c
commit 2e200db8fe
  1. 20
      selfdrive/car/chrysler/carcontroller.py
  2. 2
      selfdrive/test/process_replay/ref_commit

@ -1,4 +1,5 @@
from opendbc.can.packer import CANPacker
from common.realtime import DT_CTRL
from selfdrive.car import apply_toyota_steer_torque_limits
from selfdrive.car.chrysler.chryslercan import create_lkas_hud, create_lkas_command, create_cruise_buttons
from selfdrive.car.chrysler.values import RAM_CARS, CarControllerParams
@ -14,6 +15,7 @@ class CarController:
self.hud_count = 0
self.last_lkas_falling_edge = 0
self.lkas_active_prev = False
self.last_button_frame = 0
self.packer = CANPacker(dbc_name)
self.params = CarControllerParams(CP)
@ -26,11 +28,19 @@ class CarController:
# *** control msgs ***
das_bus = 2 if self.CP.carFingerprint in RAM_CARS else 0
if CC.cruiseControl.cancel:
can_sends.append(create_cruise_buttons(self.packer, CS.button_counter + 1, das_bus, cancel=True))
elif CC.enabled and CS.out.cruiseState.standstill:
can_sends.append(create_cruise_buttons(self.packer, CS.button_counter + 1, das_bus, resume=True))
# cruise buttons
if (self.frame - self.last_button_frame)*DT_CTRL > 0.05:
das_bus = 2 if self.CP.carFingerprint in RAM_CARS else 0
# ACC cancellation
if CC.cruiseControl.cancel:
self.last_button_frame = self.frame
can_sends.append(create_cruise_buttons(self.packer, CS.button_counter + 1, das_bus, cancel=True))
# ACC resume from standstill
elif CC.cruiseControl.resume:
self.last_button_frame = self.frame
can_sends.append(create_cruise_buttons(self.packer, CS.button_counter + 1, das_bus, resume=True))
# HUD alerts
if self.frame % 25 == 0:

@ -1 +1 @@
2ae52e9b2218c23d4c80b36fb0b50387b6ecdd8f
11e721366f1c177a84e6cb8b48171113ac3b54f9
Loading…
Cancel
Save