@ -2,7 +2,7 @@
from cereal import car
from panda import Panda
from selfdrive . car import STD_CARGO_KG , get_safety_config
from selfdrive . car . chrysler . values import CAR , DBC , RAM_HD , RAM_DT
from selfdrive . car . chrysler . values import CAR , DBC , RAM_HD , RAM_DT , RAM_CARS , ChryslerFlags
from selfdrive . car . interfaces import CarInterfaceBase
@ -24,9 +24,12 @@ class CarInterface(CarInterfaceBase):
ret . safetyConfigs [ 0 ] . safetyParam | = Panda . FLAG_CHRYSLER_RAM_DT
ret . minSteerSpeed = 3.8 # m/s
if candidate in ( CAR . PACIFICA_2019_HYBRID , CAR . PACIFICA_2020 , CAR . JEEP_CHEROKEE_2019 ) :
# TODO: allow 2019 cars to steer down to 13 m/s if already engaged.
ret . minSteerSpeed = 17.5 # m/s 17 on the way up, 13 on the way down once engaged.
if candidate not in RAM_CARS :
# Newer FW versions standard on the following platforms, or flashed by a dealer onto older platforms have a higher minimum steering speed.
new_eps_platform = candidate in ( CAR . PACIFICA_2019_HYBRID , CAR . PACIFICA_2020 , CAR . JEEP_CHEROKEE_2019 )
new_eps_firmware = any ( fw . ecu == ' eps ' and fw . fwVersion [ : 4 ] > = b " 6841 " for fw in car_fw )
if new_eps_platform or new_eps_firmware :
ret . flags | = ChryslerFlags . HIGHER_MIN_STEERING_SPEED . value
# Chrysler
if candidate in ( CAR . PACIFICA_2017_HYBRID , CAR . PACIFICA_2018 , CAR . PACIFICA_2018_HYBRID , CAR . PACIFICA_2019_HYBRID , CAR . PACIFICA_2020 ) :
@ -55,9 +58,8 @@ class CarInterface(CarInterfaceBase):
ret . mass = 2493. + STD_CARGO_KG
CarInterfaceBase . configure_torque_tune ( candidate , ret . lateralTuning )
ret . minSteerSpeed = 14.5
if car_fw is not None :
for fw in car_fw :
if fw . ecu == ' eps ' and fw . fwVersion [ : 8 ] in ( b " 68312176 " , b " 68273275 " ) :
if fw . ecu == ' eps ' and fw . fwVersion . startswith ( ( b " 68312176 " , b " 68273275 " ) ) :
ret . minSteerSpeed = 0.
elif candidate == CAR . RAM_HD :
@ -71,6 +73,10 @@ class CarInterface(CarInterfaceBase):
else :
raise ValueError ( f " Unsupported car: { candidate } " )
if ret . flags & ChryslerFlags . HIGHER_MIN_STEERING_SPEED :
# TODO: allow these cars to steer down to 13 m/s if already engaged.
ret . minSteerSpeed = 17.5 # m/s 17 on the way up, 13 on the way down once engaged.
ret . centerToFront = ret . wheelbase * 0.44
ret . enableBsm = 720 in fingerprint [ 0 ]