diff --git a/opendbc_repo/opendbc/car/gm/fingerprints.py b/opendbc_repo/opendbc/car/gm/fingerprints.py index 04927460c..d04cd47b6 100644 --- a/opendbc_repo/opendbc/car/gm/fingerprints.py +++ b/opendbc_repo/opendbc/car/gm/fingerprints.py @@ -216,6 +216,7 @@ FINGERPRINTS.update({ CAR.CHEVROLET_BLAZER: FINGERPRINTS[CAR.CHEVROLET_TRAVERSE], CAR.CHEVROLET_MALIBU_SDGM: FINGERPRINTS[CAR.CHEVROLET_MALIBU_CC], CAR.BUICK_BABYENCLAVE: FINGERPRINTS[CAR.CHEVROLET_TRAVERSE], + CAR.CHEVROLET_SILVERADO_CC: FINGERPRINTS[CAR.CHEVROLET_SILVERADO], }) FW_VERSIONS: dict[str, dict[tuple, list[bytes]]] = { diff --git a/opendbc_repo/opendbc/car/gm/interface.py b/opendbc_repo/opendbc/car/gm/interface.py index 80526e31b..9728876be 100755 --- a/opendbc_repo/opendbc/car/gm/interface.py +++ b/opendbc_repo/opendbc/car/gm/interface.py @@ -58,6 +58,10 @@ NON_LINEAR_TORQUE_PARAMS = { "left": [3.8, 0.81, 0.24, 0.0465122], "right": [3.8, 0.81, 0.24, 0.0465122], }, + CAR.CHEVROLET_SILVERADO_CC: { + "left": [3.8, 0.81, 0.24, 0.0465122], + "right": [3.8, 0.81, 0.24, 0.0465122], + }, CAR.CHEVROLET_VOLT: { "left": [1.5, 1.0, 0.155, 0.0], "right": [1.5, 1.0, 0.155, 0.0], @@ -456,7 +460,7 @@ class CarInterface(CarInterfaceBase): # ACC Bolts use pedal for full longitudinal control, not just SNG. ret.flags |= GMFlags.PEDAL_LONG.value - elif candidate == CAR.CHEVROLET_SILVERADO: + elif candidate in (CAR.CHEVROLET_SILVERADO, CAR.CHEVROLET_SILVERADO_CC): # On the Bolt, the ECM and camera independently check that you are either above 5 kph or at a stop # with foot on brake to allow engagement, but this platform only has that check in the camera. # TODO: check if this is split by EV/ICE with more platforms in the future diff --git a/opendbc_repo/opendbc/car/gm/values.py b/opendbc_repo/opendbc/car/gm/values.py index c275c6b47..05b906f15 100644 --- a/opendbc_repo/opendbc/car/gm/values.py +++ b/opendbc_repo/opendbc/car/gm/values.py @@ -329,6 +329,13 @@ class CAR(Platforms): ], GMCarSpecs(mass=2994, wheelbase=3.75, steerRatio=16.3, tireStiffnessFactor=1.0), ) + CHEVROLET_SILVERADO_CC = GMPlatformConfig( + [ + GMCarDocs("Chevrolet Silverado 1500 - No-ACC"), + GMCarDocs("GMC Sierra 1500 - No-ACC"), + ], + CHEVROLET_SILVERADO.specs, + ) CHEVROLET_EQUINOX = GMPlatformConfig( [GMCarDocs("Chevrolet Equinox 2019-22")], GMCarSpecs(mass=1588, wheelbase=2.72, steerRatio=14.4, centerToFrontRatio=0.4), @@ -554,6 +561,7 @@ CC_ONLY_CAR = { CAR.CADILLAC_XT5_CC, CAR.CHEVROLET_MALIBU_CC, CAR.CHEVROLET_MALIBU_HYBRID_CC, + CAR.CHEVROLET_SILVERADO_CC, } CC_REGEN_PADDLE_CAR = { CAR.CHEVROLET_BOLT_CC_2018_2021, diff --git a/opendbc_repo/opendbc/car/torque_data/substitute.toml b/opendbc_repo/opendbc/car/torque_data/substitute.toml index 866841c61..3de8a452b 100644 --- a/opendbc_repo/opendbc/car/torque_data/substitute.toml +++ b/opendbc_repo/opendbc/car/torque_data/substitute.toml @@ -115,5 +115,6 @@ legend = ["LAT_ACCEL_FACTOR", "MAX_LAT_ACCEL_MEASURED", "FRICTION"] "CHEVROLET_EQUINOX_CC" = "CHEVROLET_EQUINOX" "GMC_YUKON_CC" = "CHEVROLET_SILVERADO" "CHEVROLET_TRAILBLAZER_CC" = "CHEVROLET_TRAILBLAZER" +"CHEVROLET_SILVERADO_CC" = "CHEVROLET_SILVERADO" "CHEVROLET_TRAX" = "CHEVROLET_VOLT"