Car Port: Mazda CX-9 2021 (#20864)
* Mazda CX-9 no steer lockout, and newer cars can use more torque Signed-off-by: Jafar Al-Gharaibeh <to.jafar@gmail.com> * Mazda CX-9 2021 test route Signed-off-by: Jafar Al-Gharaibeh <to.jafar@gmail.com> * cleanup * more cleanup * don't show community features alert if dashcam only Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>pull/21551/head
parent
d8411e7a62
commit
ff704e18b7
|
@ -20,11 +20,11 @@ class CarInterface(CarInterfaceBase):
|
|||
|
||||
ret.carName = "mazda"
|
||||
ret.safetyModel = car.CarParams.SafetyModel.mazda
|
||||
|
||||
ret.dashcamOnly = True
|
||||
|
||||
ret.radarOffCan = True
|
||||
|
||||
ret.communityFeature = True
|
||||
ret.dashcamOnly = True
|
||||
|
||||
ret.steerActuatorDelay = 0.1
|
||||
ret.steerRateCost = 1.0
|
||||
ret.steerLimitTimer = 0.8
|
||||
|
@ -37,7 +37,7 @@ class CarInterface(CarInterfaceBase):
|
|||
ret.lateralTuning.pid.kiBP, ret.lateralTuning.pid.kpBP = [[0.], [0.]]
|
||||
ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.19], [0.019]]
|
||||
ret.lateralTuning.pid.kf = 0.00006
|
||||
elif candidate == CAR.CX9:
|
||||
elif candidate in [CAR.CX9, CAR.CX9_2021]:
|
||||
ret.mass = 4217 * CV.LB_TO_KG + STD_CARGO_KG
|
||||
ret.wheelbase = 3.1
|
||||
ret.steerRatio = 17.6
|
||||
|
|
|
@ -8,19 +8,20 @@ Ecu = car.CarParams.Ecu
|
|||
# Steer torque limits
|
||||
|
||||
class CarControllerParams:
|
||||
STEER_MAX = 600 # max_steer 2048
|
||||
STEER_STEP = 1 # how often we update the steer cmd
|
||||
STEER_MAX = 800 # theoretical max_steer 2047
|
||||
STEER_DELTA_UP = 10 # torque increase per refresh
|
||||
STEER_DELTA_DOWN = 20 # torque decrease per refresh
|
||||
STEER_DELTA_DOWN = 25 # torque decrease per refresh
|
||||
STEER_DRIVER_ALLOWANCE = 15 # allowed driver torque before start limiting
|
||||
STEER_DRIVER_MULTIPLIER = 1 # weight driver torque
|
||||
STEER_DRIVER_FACTOR = 1 # from dbc
|
||||
STEER_ERROR_MAX = 350 # max delta between torque cmd and torque motor
|
||||
|
||||
class CAR:
|
||||
CX5 = "MAZDA CX-5"
|
||||
CX9 = "MAZDA CX-9"
|
||||
MAZDA3 = "MAZDA 3"
|
||||
MAZDA6 = "MAZDA 6"
|
||||
CX9_2021 = "Mazda CX-9 2021" # No Steer Lockout
|
||||
|
||||
class LKAS_LIMITS:
|
||||
STEER_THRESHOLD = 15
|
||||
|
@ -176,6 +177,27 @@ FW_VERSIONS = {
|
|||
(Ecu.transmission, 0x7e1, None): [
|
||||
b'PYH7-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
|
||||
],
|
||||
},
|
||||
|
||||
CAR.CX9_2021 : {
|
||||
(Ecu.eps, 0x730, None): [
|
||||
b'TC3M-3210X-A-00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
|
||||
],
|
||||
(Ecu.engine, 0x7e0, None): [
|
||||
b'PXM4-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
|
||||
],
|
||||
(Ecu.fwdRadar, 0x764, None): [
|
||||
b'K131-67XK2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
|
||||
],
|
||||
(Ecu.esp, 0x760, None): [
|
||||
b'TA0B-437K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
|
||||
],
|
||||
(Ecu.fwdCamera, 0x706, None): [
|
||||
b'GSH7-67XK2-M\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
|
||||
],
|
||||
(Ecu.transmission, 0x7e1, None): [
|
||||
b'PXM4-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
|
||||
],
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -185,6 +207,11 @@ DBC = {
|
|||
CAR.CX9: dbc_dict('mazda_2017', None),
|
||||
CAR.MAZDA3: dbc_dict('mazda_2017', None),
|
||||
CAR.MAZDA6: dbc_dict('mazda_2017', None),
|
||||
CAR.CX9_2021: dbc_dict('mazda_2017', None),
|
||||
}
|
||||
|
||||
GEN1 = [ CAR.CX5, CAR.CX9, CAR.MAZDA3, CAR.MAZDA6 ]
|
||||
# Gen 1 hardware: same CAN messages and same camera
|
||||
GEN1 = set([CAR.CX5, CAR.CX9, CAR.CX9_2021, CAR.MAZDA3, CAR.MAZDA6])
|
||||
|
||||
# Cars with a steering lockout
|
||||
STEER_LOCKOUT_CAR = set([CAR.CX5, CAR.CX9, CAR.MAZDA3, CAR.MAZDA6])
|
||||
|
|
|
@ -153,7 +153,7 @@ class Controls:
|
|||
|
||||
if not sounds_available:
|
||||
self.events.add(EventName.soundsUnavailable, static=True)
|
||||
if community_feature_disallowed and car_recognized:
|
||||
if community_feature_disallowed and car_recognized and not self.CP.dashcamOnly:
|
||||
self.events.add(EventName.communityFeatureDisallowed, static=True)
|
||||
if not car_recognized:
|
||||
self.events.add(EventName.carUnrecognized, static=True)
|
||||
|
|
|
@ -167,6 +167,7 @@ routes = [
|
|||
TestRoute("10b5a4b380434151|2020-08-26--17-11-45", MAZDA.CX9),
|
||||
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("6c14ee12b74823ce|2021-06-30--11-49-02", TESLA.AP1_MODELS),
|
||||
TestRoute("bb50caf5f0945ab1|2021-06-19--17-20-18", TESLA.AP2_MODELS),
|
||||
|
@ -184,4 +185,6 @@ forced_dashcam_routes = [
|
|||
"74f1038827005090|2020-08-26--20-05-50",
|
||||
# Mazda6
|
||||
"fb53c640f499b73d|2021-06-01--04-17-56",
|
||||
# CX-9 2021
|
||||
"f6d5b1a9d7a1c92e|2021-07-08--06-56-59",
|
||||
]
|
||||
|
|
Loading…
Reference in New Issue