Mazda CX-5 2022 Car port (#23704)
* Mazda CX5 2022 FW Signed-off-by: Jafar Al-Gharaibeh <to.jafar@gmail.com> * CX-5 2022: No lockout and steer down to zero Signed-off-by: Jafar Al-Gharaibeh <to.jafar@gmail.com> * CX-5 2022: No dashcam! Signed-off-by: Jafar Al-Gharaibeh <to.jafar@gmail.com> * CX-5 2022: add to supported cars Signed-off-by: Jafar Al-Gharaibeh <to.jafar@gmail.com> * Mazda: stick with 800 max torque for now Signed-off-by: Jafar Al-Gharaibeh <to.jafar@gmail.com> * Update docs/CARS.md * Apply suggestions from code review * Mazda: set car models where needed Signed-off-by: Jafar Al-Gharaibeh <to.jafar@gmail.com> * Mazda: set minSteerSpeed per car Signed-off-by: Jafar Al-Gharaibeh <to.jafar@gmail.com> * unused Signed-off-by: Jafar Al-Gharaibeh <to.jafar@gmail.com> * cleanup * Update selfdrive/car/mazda/interface.py Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>pull/23715/head
parent
2372f4d6db
commit
341f5a4ae0
|
@ -131,6 +131,7 @@
|
|||
| Kia | Sorento 2018-19 | SCC + LKAS | Stock | 0mph | 0mph |
|
||||
| Kia | Stinger 2018 | SCC + LKAS | Stock | 0mph | 0mph |
|
||||
| Kia | Telluride 2020 | SCC + LKAS | Stock | 0mph | 0mph |
|
||||
| Mazda | CX-5 2022 | All | Stock | 0mph | 0mph |
|
||||
| Mazda | CX-9 2021 | All | Stock | 0mph | 28mph |
|
||||
| Nissan | Altima 2019-20 | ProPILOT | Stock | 0mph | 0mph |
|
||||
| Nissan | Leaf 2018-22 | ProPILOT | Stock | 0mph | 0mph |
|
||||
|
|
|
@ -65,12 +65,13 @@ class CarState(CarStateBase):
|
|||
# Either due to low speed or hands off
|
||||
lkas_blocked = cp.vl["STEER_RATE"]["LKAS_BLOCK"] == 1
|
||||
|
||||
# LKAS is enabled at 52kph going up and disabled at 45kph going down
|
||||
# wait for LKAS_BLOCK signal to clear when going up since it lags behind the speed sometimes
|
||||
if speed_kph > LKAS_LIMITS.ENABLE_SPEED and not lkas_blocked:
|
||||
self.lkas_allowed_speed = True
|
||||
elif speed_kph < LKAS_LIMITS.DISABLE_SPEED:
|
||||
self.lkas_allowed_speed = False
|
||||
if self.CP.minSteerSpeed > 0:
|
||||
# LKAS is enabled at 52kph going up and disabled at 45kph going down
|
||||
# wait for LKAS_BLOCK signal to clear when going up since it lags behind the speed sometimes
|
||||
if speed_kph > LKAS_LIMITS.ENABLE_SPEED and not lkas_blocked:
|
||||
self.lkas_allowed_speed = True
|
||||
elif speed_kph < LKAS_LIMITS.DISABLE_SPEED:
|
||||
self.lkas_allowed_speed = False
|
||||
|
||||
# TODO: the signal used for available seems to be the adaptive cruise signal, instead of the main on
|
||||
# it should be used for carState.cruiseState.nonAdaptive instead
|
||||
|
@ -87,7 +88,6 @@ class CarState(CarStateBase):
|
|||
# Check if LKAS is disabled due to lack of driver torque when all other states indicate
|
||||
# it should be enabled (steer lockout). Don't warn until we actually get lkas active
|
||||
# and lose it again, i.e, after initial lkas activation
|
||||
|
||||
ret.steerWarning = self.lkas_allowed_speed and lkas_blocked
|
||||
|
||||
self.acc_active_last = ret.cruiseState.enabled
|
||||
|
|
|
@ -22,14 +22,14 @@ class CarInterface(CarInterfaceBase):
|
|||
ret.safetyConfigs = [get_safety_config(car.CarParams.SafetyModel.mazda)]
|
||||
ret.radarOffCan = True
|
||||
|
||||
ret.dashcamOnly = candidate not in (CAR.CX9_2021,)
|
||||
ret.dashcamOnly = candidate not in (CAR.CX5_2022, CAR.CX9_2021)
|
||||
|
||||
ret.steerActuatorDelay = 0.1
|
||||
ret.steerRateCost = 1.0
|
||||
ret.steerLimitTimer = 0.8
|
||||
tire_stiffness_factor = 0.70 # not optimized yet
|
||||
|
||||
if candidate == CAR.CX5:
|
||||
if candidate in (CAR.CX5, CAR.CX5_2022):
|
||||
ret.mass = 3655 * CV.LB_TO_KG + STD_CARGO_KG
|
||||
ret.wheelbase = 2.7
|
||||
ret.steerRatio = 15.5
|
||||
|
@ -58,8 +58,8 @@ class CarInterface(CarInterfaceBase):
|
|||
ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.19], [0.019]]
|
||||
ret.lateralTuning.pid.kf = 0.00006
|
||||
|
||||
# No steer below disable speed
|
||||
ret.minSteerSpeed = LKAS_LIMITS.DISABLE_SPEED * CV.KPH_TO_MS
|
||||
if candidate not in (CAR.CX5_2022, ):
|
||||
ret.minSteerSpeed = LKAS_LIMITS.DISABLE_SPEED * CV.KPH_TO_MS
|
||||
|
||||
ret.centerToFront = ret.wheelbase * 0.41
|
||||
|
||||
|
|
|
@ -19,7 +19,8 @@ class CAR:
|
|||
CX9 = "MAZDA CX-9"
|
||||
MAZDA3 = "MAZDA 3"
|
||||
MAZDA6 = "MAZDA 6"
|
||||
CX9_2021 = "MAZDA CX-9 2021" # No Steer Lockout
|
||||
CX9_2021 = "MAZDA CX-9 2021"
|
||||
CX5_2022 = "MAZDA CX-5 2022"
|
||||
|
||||
class LKAS_LIMITS:
|
||||
STEER_THRESHOLD = 15
|
||||
|
@ -35,6 +36,26 @@ class Buttons:
|
|||
|
||||
|
||||
FW_VERSIONS = {
|
||||
CAR.CX5_2022 : {
|
||||
(Ecu.eps, 0x730, None): [
|
||||
b'KSD5-3210X-C-00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
|
||||
],
|
||||
(Ecu.engine, 0x7e0, None): [
|
||||
b'PX2G-188K2-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
|
||||
],
|
||||
(Ecu.fwdRadar, 0x764, None): [
|
||||
b'K131-67XK2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
|
||||
],
|
||||
(Ecu.esp, 0x760, None): [
|
||||
b'KSD5-437K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
|
||||
],
|
||||
(Ecu.fwdCamera, 0x706, None): [
|
||||
b'GSH7-67XK2-S\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
|
||||
],
|
||||
(Ecu.transmission, 0x7e1, None): [
|
||||
b'PYB2-21PS1-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
|
||||
],
|
||||
},
|
||||
CAR.CX5: {
|
||||
(Ecu.eps, 0x730, None): [
|
||||
b'KJ01-3210X-G-00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
|
||||
|
@ -242,10 +263,8 @@ DBC = {
|
|||
CAR.MAZDA3: dbc_dict('mazda_2017', None),
|
||||
CAR.MAZDA6: dbc_dict('mazda_2017', None),
|
||||
CAR.CX9_2021: dbc_dict('mazda_2017', None),
|
||||
CAR.CX5_2022: dbc_dict('mazda_2017', None),
|
||||
}
|
||||
|
||||
# Gen 1 hardware: same CAN messages and same camera
|
||||
GEN1 = {CAR.CX5, CAR.CX9, CAR.CX9_2021, CAR.MAZDA3, CAR.MAZDA6}
|
||||
|
||||
# Cars with a steering lockout
|
||||
STEER_LOCKOUT_CAR = {CAR.CX5, CAR.CX9, CAR.MAZDA3, CAR.MAZDA6}
|
||||
GEN1 = {CAR.CX5, CAR.CX9, CAR.CX9_2021, CAR.MAZDA3, CAR.MAZDA6, CAR.CX5_2022}
|
||||
|
|
|
@ -191,6 +191,7 @@ routes = [
|
|||
TestRoute("74f1038827005090|2020-08-26--20-05-50", MAZDA.MAZDA3),
|
||||
TestRoute("fb53c640f499b73d|2021-06-01--04-17-56", MAZDA.MAZDA6),
|
||||
TestRoute("f6d5b1a9d7a1c92e|2021-07-08--06-56-59", MAZDA.CX9_2021),
|
||||
TestRoute("a4af1602d8e668ac|2022-02-03--12-17-07", MAZDA.CX5_2022),
|
||||
|
||||
TestRoute("6c14ee12b74823ce|2021-06-30--11-49-02", TESLA.AP1_MODELS),
|
||||
TestRoute("bb50caf5f0945ab1|2021-06-19--17-20-18", TESLA.AP2_MODELS),
|
||||
|
|
Loading…
Reference in New Issue