@ -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 ]