|
|
|
@ -15,7 +15,6 @@ from openpilot.selfdrive.boardd.boardd import can_list_to_can_capnp |
|
|
|
|
from openpilot.selfdrive.car.car_helpers import get_car, get_one_can |
|
|
|
|
from openpilot.selfdrive.car.interfaces import CarInterfaceBase |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
REPLAY = "REPLAY" in os.environ |
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -28,7 +27,7 @@ class CarD: |
|
|
|
|
self.sm = messaging.SubMaster(['pandaStates']) |
|
|
|
|
self.pm = messaging.PubMaster(['sendcan', 'carState', 'carParams', 'carOutput']) |
|
|
|
|
|
|
|
|
|
self.can_rcv_timeout_counter = 0 # conseuctive timeout count |
|
|
|
|
self.can_rcv_timeout_counter = 0 # consecutive timeout count |
|
|
|
|
self.can_rcv_cum_timeout_counter = 0 # cumulative timeout count |
|
|
|
|
|
|
|
|
|
self.CC_prev = car.CarControl.new_message() |
|
|
|
@ -54,12 +53,11 @@ class CarD: |
|
|
|
|
if not disengage_on_accelerator: |
|
|
|
|
self.CP.alternativeExperience |= ALTERNATIVE_EXPERIENCE.DISABLE_DISENGAGE_ON_GAS |
|
|
|
|
|
|
|
|
|
car_recognized = self.CP.carName != 'mock' |
|
|
|
|
openpilot_enabled_toggle = self.params.get_bool("OpenpilotEnabledToggle") |
|
|
|
|
|
|
|
|
|
controller_available = self.CI.CC is not None and openpilot_enabled_toggle and not self.CP.dashcamOnly |
|
|
|
|
|
|
|
|
|
self.CP.passive = not car_recognized or not controller_available or self.CP.dashcamOnly |
|
|
|
|
self.CP.passive = not controller_available or self.CP.dashcamOnly |
|
|
|
|
if self.CP.passive: |
|
|
|
|
safety_config = car.CarParams.SafetyConfig.new_message() |
|
|
|
|
safety_config.safetyModel = car.CarParams.SafetyModel.noOutput |
|
|
|
@ -139,4 +137,3 @@ class CarD: |
|
|
|
|
self.pm.send('sendcan', can_list_to_can_capnp(can_sends, msgtype='sendcan', valid=self.CS.canValid)) |
|
|
|
|
|
|
|
|
|
self.CC_prev = CC |
|
|
|
|
|
|
|
|
|