|
|
|
@ -43,7 +43,7 @@ class CarController: |
|
|
|
|
can_sends.append(create_button_msg(self.packer, CS.buttons_stock_values, tja_toggle=True)) |
|
|
|
|
|
|
|
|
|
### lateral control ### |
|
|
|
|
# send steering commands at 20Hz |
|
|
|
|
# send steer msg at 20Hz |
|
|
|
|
if (self.frame % CarControllerParams.STEER_STEP) == 0: |
|
|
|
|
if CC.latActive: |
|
|
|
|
# apply limits to curvature and clip to signal range |
|
|
|
@ -53,7 +53,6 @@ class CarController: |
|
|
|
|
apply_curvature = 0. |
|
|
|
|
|
|
|
|
|
self.apply_curvature_last = apply_curvature |
|
|
|
|
can_sends.append(create_lka_msg(self.packer)) |
|
|
|
|
|
|
|
|
|
if self.CP.carFingerprint in CANFD_CARS: |
|
|
|
|
# TODO: extended mode |
|
|
|
@ -63,8 +62,12 @@ class CarController: |
|
|
|
|
else: |
|
|
|
|
can_sends.append(create_lat_ctl_msg(self.packer, CC.latActive, 0., 0., -apply_curvature, 0.)) |
|
|
|
|
|
|
|
|
|
# send lka msg at 33Hz |
|
|
|
|
if (self.frame % CarControllerParams.LKA_STEP) == 0: |
|
|
|
|
can_sends.append(create_lka_msg(self.packer)) |
|
|
|
|
|
|
|
|
|
### longitudinal control ### |
|
|
|
|
# send acc command at 50Hz |
|
|
|
|
# send acc msg at 50Hz |
|
|
|
|
if self.CP.openpilotLongitudinalControl and (self.frame % CarControllerParams.ACC_CONTROL_STEP) == 0: |
|
|
|
|
accel = clip(actuators.accel, CarControllerParams.ACCEL_MIN, CarControllerParams.ACCEL_MAX) |
|
|
|
|
|
|
|
|
@ -80,12 +83,10 @@ class CarController: |
|
|
|
|
|
|
|
|
|
### ui ### |
|
|
|
|
send_ui = (self.main_on_last != main_on) or (self.lkas_enabled_last != CC.latActive) or (self.steer_alert_last != steer_alert) |
|
|
|
|
|
|
|
|
|
# send lkas ui command at 1Hz or if ui state changes |
|
|
|
|
# send lkas ui msg at 1Hz or if ui state changes |
|
|
|
|
if (self.frame % CarControllerParams.LKAS_UI_STEP) == 0 or send_ui: |
|
|
|
|
can_sends.append(create_lkas_ui_msg(self.packer, main_on, CC.latActive, steer_alert, hud_control, CS.lkas_status_stock_values)) |
|
|
|
|
|
|
|
|
|
# send acc ui command at 20Hz or if ui state changes |
|
|
|
|
# send acc ui msg at 5Hz or if ui state changes |
|
|
|
|
if (self.frame % CarControllerParams.ACC_UI_STEP) == 0 or send_ui: |
|
|
|
|
can_sends.append(create_acc_ui_msg(self.packer, main_on, CC.latActive, hud_control, CS.acc_tja_status_stock_values)) |
|
|
|
|
|
|
|
|
|