diff --git a/README.md b/README.md
index 42770fe80f..f50bcbb83c 100644
--- a/README.md
+++ b/README.md
@@ -62,90 +62,91 @@ At the moment, openpilot supports the [EON DevKit](https://comma.ai/shop/product
Supported Cars
------
-| Make | Model (US Market Reference) | Supported Package | ACC | No ACC accel below | No ALC below |
-| ----------| ------------------------------| ------------------| -----------------| -------------------| -------------|
-| Acura | ILX 2016-18 | AcuraWatch Plus | openpilot | 25mph5 | 25mph |
-| Acura | RDX 2016-18 | AcuraWatch Plus | openpilot | 25mph5 | 12mph |
-| Chrysler | Pacifica 2017-18 | Adaptive Cruise | Stock | 0mph | 9mph |
-| Chrysler | Pacifica Hybrid 2017-18 | Adaptive Cruise | Stock | 0mph | 9mph |
-| Chrysler | Pacifica Hybrid 2019-20 | Adaptive Cruise | Stock | 0mph | 39mph |
-| Honda | Accord 2018-19 | All | Stock | 0mph | 3mph |
-| Honda | Accord Hybrid 2018-19 | All | Stock | 0mph | 3mph |
-| Honda | Civic Hatchback 2017-19 | Honda Sensing | Stock | 0mph | 12mph |
-| Honda | Civic Sedan/Coupe 2016-18 | Honda Sensing | openpilot | 0mph | 12mph |
-| Honda | Civic Sedan/Coupe 2019 | Honda Sensing | Stock | 0mph | 2mph |
-| Honda | CR-V 2015-16 | Touring | openpilot | 25mph5 | 12mph |
-| Honda | CR-V 2017-19 | Honda Sensing | Stock | 0mph | 12mph |
-| Honda | CR-V Hybrid 2017-2019 | Honda Sensing | Stock | 0mph | 12mph |
-| Honda | Fit 2018-19 | Honda Sensing | openpilot | 25mph5 | 12mph |
-| Honda | Odyssey 2018-20 | Honda Sensing | openpilot | 25mph5 | 0mph |
-| Honda | Passport 2019 | All | openpilot | 25mph5 | 12mph |
-| Honda | Pilot 2016-18 | Honda Sensing | openpilot | 25mph5 | 12mph |
-| Honda | Pilot 2019 | All | openpilot | 25mph5 | 12mph |
-| Honda | Ridgeline 2017-19 | Honda Sensing | openpilot | 25mph5 | 12mph |
-| Hyundai | Elantra 2017-191 | SCC + LKAS | Stock | 19mph | 34mph |
-| Hyundai | Genesis 20181 | All | Stock | 19mph | 34mph |
-| Hyundai | Santa Fe 20191 | All | Stock | 0mph | 0mph |
-| Jeep | Grand Cherokee 2016-18 | Adaptive Cruise | Stock | 0mph | 9mph |
-| Jeep | Grand Cherokee 2019 | Adaptive Cruise | Stock | 0mph | 39mph |
-| Kia | Optima 20191 | SCC + LKAS | Stock | 0mph | 0mph |
-| Kia | Sorento 20181 | All | Stock | 0mph | 0mph |
-| Kia | Stinger 20181 | SCC + LKAS | Stock | 0mph | 0mph |
-| Lexus | CT Hybrid 2017-18 | All | Stock4| 0mph | 0mph |
-| Lexus | ES 2019 | All | openpilot | 0mph | 0mph |
-| Lexus | ES Hybrid 2019 | All | openpilot | 0mph | 0mph |
-| Lexus | IS 2017-2019 | All | Stock | 22mph | 0mph |
-| Lexus | IS Hybrid 2017 | All | Stock | 0mph | 0mph |
-| Lexus | NX Hybrid 2018 | All | Stock4| 0mph | 0mph |
-| Lexus | RX 2016-17 | All | Stock4| 0mph | 0mph |
-| Lexus | RX 2020 | All | openpilot | 0mph | 0mph |
-| Lexus | RX Hybrid 2016-19 | All | Stock4| 0mph | 0mph |
-| Subaru | Crosstrek 2018-19 | EyeSight | Stock | 0mph | 0mph |
-| Subaru | Impreza 2019-20 | EyeSight | Stock | 0mph | 0mph |
-| Toyota | Avalon 2016 | TSS-P | Stock4| 20mph5 | 0mph |
-| Toyota | Avalon 2017-18 | All | Stock4| 20mph5 | 0mph |
-| Toyota | Camry 2018-19 | All | Stock | 0mph2 | 0mph |
-| Toyota | Camry Hybrid 2018-19 | All | Stock | 0mph2 | 0mph |
-| Toyota | C-HR 2017-19 | All | Stock | 0mph | 0mph |
-| Toyota | C-HR Hybrid 2017-19 | All | Stock | 0mph | 0mph |
-| Toyota | Corolla 2017-19 | All | Stock4| 20mph5 | 0mph |
-| Toyota | Corolla 2020 | All | openpilot | 0mph | 0mph |
-| Toyota | Corolla Hatchback 2019-20 | All | openpilot | 0mph | 0mph |
-| Toyota | Corolla Hybrid 2020 | All | openpilot | 0mph | 0mph |
-| Toyota | Highlander 2017-19 | All | Stock4| 0mph | 0mph |
-| Toyota | Highlander Hybrid 2017-19 | All | Stock4| 0mph | 0mph |
-| Toyota | Highlander 2020 | All | openpilot | 0mph | 0mph |
-| Toyota | Prius 2016 | TSS-P | Stock4| 0mph | 0mph |
-| Toyota | Prius 2017-19 | All | Stock4| 0mph | 0mph |
-| Toyota | Prius Prime 2017-20 | All | Stock4| 0mph | 0mph |
-| Toyota | Rav4 2016 | TSS-P | Stock4| 20mph5 | 0mph |
-| Toyota | Rav4 2017-18 | All | Stock4| 20mph5 | 0mph |
-| Toyota | Rav4 2019 | All | openpilot | 0mph | 0mph |
-| Toyota | Rav4 Hybrid 2016 | TSS-P | Stock4| 0mph | 0mph |
-| Toyota | Rav4 Hybrid 2017-18 | All | Stock4| 0mph | 0mph |
-| Toyota | Rav4 Hybrid 2019-20 | All | openpilot | 0mph | 0mph |
-| Toyota | Sienna 2018 | All | Stock4| 0mph | 0mph |
-| Volkswagen| Golf 2016-193 | Driver Assistance | Stock | 0mph | 0mph |
+| Make | Model (US Market Reference) | Supported Package | ACC | No ACC accel below | No ALC below |
+| ----------| ------------------------------| ------------------| -----------------| -------------------| ------------------|
+| Acura | ILX 2016-18 | AcuraWatch Plus | openpilot | 25mph6 | 25mph |
+| Acura | RDX 2016-18 | AcuraWatch Plus | openpilot | 25mph6 | 12mph |
+| Chrysler | Pacifica 2017-18 | Adaptive Cruise | Stock | 0mph | 9mph |
+| Chrysler | Pacifica Hybrid 2017-18 | Adaptive Cruise | Stock | 0mph | 9mph |
+| Chrysler | Pacifica Hybrid 2019-20 | Adaptive Cruise | Stock | 0mph | 39mph |
+| Honda | Accord 2018-19 | All | Stock | 0mph | 3mph |
+| Honda | Accord Hybrid 2018-19 | All | Stock | 0mph | 3mph |
+| Honda | Civic Hatchback 2017-19 | Honda Sensing | Stock | 0mph | 12mph |
+| Honda | Civic Sedan/Coupe 2016-18 | Honda Sensing | openpilot | 0mph | 12mph |
+| Honda | Civic Sedan/Coupe 2019 | Honda Sensing | Stock | 0mph | 2mph4 |
+| Honda | CR-V 2015-16 | Touring | openpilot | 25mph6 | 12mph |
+| Honda | CR-V 2017-19 | Honda Sensing | Stock | 0mph | 12mph |
+| Honda | CR-V Hybrid 2017-2019 | Honda Sensing | Stock | 0mph | 12mph |
+| Honda | Fit 2018-19 | Honda Sensing | openpilot | 25mph6 | 12mph |
+| Honda | Odyssey 2018-20 | Honda Sensing | openpilot | 25mph6 | 0mph |
+| Honda | Passport 2019 | All | openpilot | 25mph6 | 12mph |
+| Honda | Pilot 2016-18 | Honda Sensing | openpilot | 25mph6 | 12mph |
+| Honda | Pilot 2019 | All | openpilot | 25mph6 | 12mph |
+| Honda | Ridgeline 2017-19 | Honda Sensing | openpilot | 25mph6 | 12mph |
+| Hyundai | Elantra 2017-191 | SCC + LKAS | Stock | 19mph | 34mph |
+| Hyundai | Genesis 20181 | All | Stock | 19mph | 34mph |
+| Hyundai | Santa Fe 20191 | All | Stock | 0mph | 0mph |
+| Jeep | Grand Cherokee 2016-18 | Adaptive Cruise | Stock | 0mph | 9mph |
+| Jeep | Grand Cherokee 2019 | Adaptive Cruise | Stock | 0mph | 39mph |
+| Kia | Optima 20191 | SCC + LKAS | Stock | 0mph | 0mph |
+| Kia | Sorento 20181 | All | Stock | 0mph | 0mph |
+| Kia | Stinger 20181 | SCC + LKAS | Stock | 0mph | 0mph |
+| Lexus | CT Hybrid 2017-18 | All | Stock5| 0mph | 0mph |
+| Lexus | ES 2019 | All | openpilot | 0mph | 0mph |
+| Lexus | ES Hybrid 2019 | All | openpilot | 0mph | 0mph |
+| Lexus | IS 2017-2019 | All | Stock | 22mph | 0mph |
+| Lexus | IS Hybrid 2017 | All | Stock | 0mph | 0mph |
+| Lexus | NX Hybrid 2018 | All | Stock5| 0mph | 0mph |
+| Lexus | RX 2016-17 | All | Stock5| 0mph | 0mph |
+| Lexus | RX 2020 | All | openpilot | 0mph | 0mph |
+| Lexus | RX Hybrid 2016-19 | All | Stock5| 0mph | 0mph |
+| Subaru | Crosstrek 2018-19 | EyeSight | Stock | 0mph | 0mph |
+| Subaru | Impreza 2019-20 | EyeSight | Stock | 0mph | 0mph |
+| Toyota | Avalon 2016 | TSS-P | Stock5| 20mph6 | 0mph |
+| Toyota | Avalon 2017-18 | All | Stock5| 20mph6 | 0mph |
+| Toyota | Camry 2018-19 | All | Stock | 0mph2 | 0mph |
+| Toyota | Camry Hybrid 2018-19 | All | Stock | 0mph2 | 0mph |
+| Toyota | C-HR 2017-19 | All | Stock | 0mph | 0mph |
+| Toyota | C-HR Hybrid 2017-19 | All | Stock | 0mph | 0mph |
+| Toyota | Corolla 2017-19 | All | Stock5| 20mph6 | 0mph |
+| Toyota | Corolla 2020 | All | openpilot | 0mph | 0mph |
+| Toyota | Corolla Hatchback 2019-20 | All | openpilot | 0mph | 0mph |
+| Toyota | Corolla Hybrid 2020 | All | openpilot | 0mph | 0mph |
+| Toyota | Highlander 2017-19 | All | Stock5| 0mph | 0mph |
+| Toyota | Highlander Hybrid 2017-19 | All | Stock5| 0mph | 0mph |
+| Toyota | Highlander 2020 | All | openpilot | 0mph | 0mph |
+| Toyota | Prius 2016 | TSS-P | Stock5| 0mph | 0mph |
+| Toyota | Prius 2017-19 | All | Stock5| 0mph | 0mph |
+| Toyota | Prius Prime 2017-20 | All | Stock5| 0mph | 0mph |
+| Toyota | Rav4 2016 | TSS-P | Stock5| 20mph6 | 0mph |
+| Toyota | Rav4 2017-18 | All | Stock5| 20mph6 | 0mph |
+| Toyota | Rav4 2019 | All | openpilot | 0mph | 0mph |
+| Toyota | Rav4 Hybrid 2016 | TSS-P | Stock5| 0mph | 0mph |
+| Toyota | Rav4 Hybrid 2017-18 | All | Stock5| 0mph | 0mph |
+| Toyota | Rav4 Hybrid 2019-20 | All | openpilot | 0mph | 0mph |
+| Toyota | Sienna 2018 | All | Stock5| 0mph | 0mph |
+| Volkswagen| Golf 2016-193 | Driver Assistance | Stock | 0mph | 0mph |
1Requires a [panda](https://comma.ai/shop/products/panda-obd-ii-dongle) and open sourced [Hyundai giraffe](https://github.com/commaai/neo/tree/master/giraffe/hyundai), designed for the 2019 Sante Fe; pinout may differ for other Hyundai and Kia models.
228mph for Camry 4CYL L, 4CYL LE and 4CYL SE which don't have Full-Speed Range Dynamic Radar Cruise Control.
3Requires a [custom connector](https://community.comma.ai/wiki/index.php/Volkswagen#Integration_at_R242_Camera) for the [car harness](https://comma.ai/shop/products/car-harness)
+42019 Honda Civic 1.6L Diesel Sedan does not have ALC below 12mph.
Community Maintained Cars and Features
------
| Make | Model (US Market Reference) | Supported Package | ACC | No ACC accel below | No ALC below |
| ----------| ------------------------------| ------------------| -----------------| -------------------| -------------|
-| Buick | Regal 20186 | Adaptive Cruise | openpilot | 0mph | 7mph |
-| Cadillac | ATS 20186 | Adaptive Cruise | openpilot | 0mph | 7mph |
-| Chevrolet | Malibu 20176 | Adaptive Cruise | openpilot | 0mph | 7mph |
-| Chevrolet | Volt 2017-186 | Adaptive Cruise | openpilot | 0mph | 7mph |
-| GMC | Acadia Denali 20186| Adaptive Cruise | openpilot | 0mph | 7mph |
-| Holden | Astra 20176 | Adaptive Cruise | openpilot | 0mph | 7mph |
-
-4When disconnecting the Driver Support Unit (DSU), openpilot ACC will replace stock ACC. For DSU locations, see [Toyota Wiki page](https://community.comma.ai/wiki/index.php/Toyota). ***NOTE: disconnecting the DSU disables Automatic Emergency Braking (AEB).***
-5[Comma Pedal](https://community.comma.ai/wiki/index.php/Comma_Pedal) is used to provide stop-and-go capability to some of the openpilot-supported cars that don't currently support stop-and-go. Here is how to [build a Comma Pedal](https://medium.com/@jfrux/comma-pedal-building-with-macrofab-6328bea791e8). ***NOTE: The Comma Pedal is not officially supported by [comma](https://comma.ai).***
-6Requires a [panda](https://comma.ai/shop/products/panda-obd-ii-dongle) and [community built giraffe](https://zoneos.com/volt/). ***NOTE: disconnecting the ASCM disables Automatic Emergency Braking (AEB).***
+| Buick | Regal 20187 | Adaptive Cruise | openpilot | 0mph | 7mph |
+| Cadillac | ATS 20187 | Adaptive Cruise | openpilot | 0mph | 7mph |
+| Chevrolet | Malibu 20177 | Adaptive Cruise | openpilot | 0mph | 7mph |
+| Chevrolet | Volt 2017-187 | Adaptive Cruise | openpilot | 0mph | 7mph |
+| GMC | Acadia Denali 20187| Adaptive Cruise | openpilot | 0mph | 7mph |
+| Holden | Astra 20177 | Adaptive Cruise | openpilot | 0mph | 7mph |
+
+5When disconnecting the Driver Support Unit (DSU), openpilot ACC will replace stock ACC. For DSU locations, see [Toyota Wiki page](https://community.comma.ai/wiki/index.php/Toyota). ***NOTE: disconnecting the DSU disables Automatic Emergency Braking (AEB).***
+6[Comma Pedal](https://community.comma.ai/wiki/index.php/Comma_Pedal) is used to provide stop-and-go capability to some of the openpilot-supported cars that don't currently support stop-and-go. Here is how to [build a Comma Pedal](https://medium.com/@jfrux/comma-pedal-building-with-macrofab-6328bea791e8). ***NOTE: The Comma Pedal is not officially supported by [comma](https://comma.ai).***
+7Requires a [panda](https://comma.ai/shop/products/panda-obd-ii-dongle) and [community built giraffe](https://zoneos.com/volt/). ***NOTE: disconnecting the ASCM disables Automatic Emergency Braking (AEB).***
Community Maintained Cars and Features are not verified by comma to meet our [safety model](SAFETY.md). Be extra cautious using them. They are only available after enabling the toggle in `Settings->Developer->Enable Community Features`.
diff --git a/selfdrive/car/honda/carstate.py b/selfdrive/car/honda/carstate.py
index 8810a81ffd..5a2b96451b 100644
--- a/selfdrive/car/honda/carstate.py
+++ b/selfdrive/car/honda/carstate.py
@@ -70,7 +70,7 @@ def get_can_signals(CP):
("SCM_BUTTONS", 25),
]
- if CP.carFingerprint == CAR.CRV_HYBRID:
+ if CP.carFingerprint in (CAR.CRV_HYBRID, CAR.CIVIC_BOSCH_DIESEL):
checks += [
("GEARBOX", 50),
]
@@ -81,7 +81,7 @@ def get_can_signals(CP):
if CP.radarOffCan:
# Civic is only bosch to use the same brake message as other hondas.
- if CP.carFingerprint not in (CAR.ACCORDH, CAR.CIVIC_BOSCH, CAR.CRV_HYBRID):
+ if CP.carFingerprint not in (CAR.ACCORDH, CAR.CIVIC_BOSCH, CAR.CIVIC_BOSCH_DIESEL, CAR.CRV_HYBRID):
signals += [("BRAKE_PRESSED", "BRAKE_MODULE", 0)]
checks += [("BRAKE_MODULE", 50)]
signals += [("CAR_GAS", "GAS_PEDAL_2", 0),
@@ -103,7 +103,7 @@ def get_can_signals(CP):
else:
checks += [("CRUISE_PARAMS", 50)]
- if CP.carFingerprint in (CAR.ACCORD, CAR.ACCORD_15, CAR.ACCORDH, CAR.CIVIC_BOSCH, CAR.CRV_HYBRID):
+ if CP.carFingerprint in (CAR.ACCORD, CAR.ACCORD_15, CAR.ACCORDH, CAR.CIVIC_BOSCH, CAR.CIVIC_BOSCH_DIESEL, CAR.CRV_HYBRID):
signals += [("DRIVERS_DOOR_OPEN", "SCM_FEEDBACK", 1)]
elif CP.carFingerprint == CAR.ODYSSEY_CHN:
signals += [("DRIVERS_DOOR_OPEN", "SCM_BUTTONS", 1)]
@@ -176,7 +176,7 @@ class CarState(CarStateBase):
self.prev_cruise_setting = self.cruise_setting
# ******************* parse out can *******************
- if self.CP.carFingerprint in (CAR.ACCORD, CAR.ACCORD_15, CAR.ACCORDH, CAR.CIVIC_BOSCH, CAR.CRV_HYBRID): # TODO: find wheels moving bit in dbc
+ if self.CP.carFingerprint in (CAR.ACCORD, CAR.ACCORD_15, CAR.ACCORDH, CAR.CIVIC_BOSCH, CAR.CIVIC_BOSCH_DIESEL, CAR.CRV_HYBRID): # TODO: find wheels moving bit in dbc
ret.standstill = cp.vl["ENGINE_DATA"]['XMISSION_SPEED'] < 0.1
ret.doorOpen = bool(cp.vl["SCM_FEEDBACK"]['DRIVERS_DOOR_OPEN'])
elif self.CP.carFingerprint == CAR.ODYSSEY_CHN:
@@ -223,7 +223,7 @@ class CarState(CarStateBase):
ret.rightBlinker = cp.vl["SCM_FEEDBACK"]['RIGHT_BLINKER'] != 0
self.brake_hold = cp.vl["VSA_STATUS"]['BRAKE_HOLD_ACTIVE']
- if self.CP.carFingerprint in (CAR.CIVIC, CAR.ODYSSEY, CAR.CRV_5G, CAR.ACCORD, CAR.ACCORD_15, CAR.ACCORDH, CAR.CIVIC_BOSCH, CAR.CRV_HYBRID):
+ if self.CP.carFingerprint in (CAR.CIVIC, CAR.ODYSSEY, CAR.CRV_5G, CAR.ACCORD, CAR.ACCORD_15, CAR.ACCORDH, CAR.CIVIC_BOSCH, CAR.CIVIC_BOSCH_DIESEL, CAR.CRV_HYBRID):
self.park_brake = cp.vl["EPB_STATUS"]['EPB_STATE'] != 0
main_on = cp.vl["SCM_FEEDBACK"]['MAIN_ON']
elif self.CP.carFingerprint == CAR.ODYSSEY_CHN:
@@ -262,7 +262,7 @@ class CarState(CarStateBase):
self.cruise_mode = cp.vl["ACC_HUD"]['CRUISE_CONTROL_LABEL']
ret.cruiseState.standstill = cp.vl["ACC_HUD"]['CRUISE_SPEED'] == 252.
ret.cruiseState.speedOffset = calc_cruise_offset(0, ret.vEgo)
- if self.CP.carFingerprint in (CAR.CIVIC_BOSCH, CAR.ACCORDH, CAR.CRV_HYBRID):
+ if self.CP.carFingerprint in (CAR.CIVIC_BOSCH, CAR.CIVIC_BOSCH_DIESEL, CAR.ACCORDH, CAR.CRV_HYBRID):
ret.brakePressed = cp.vl["POWERTRAIN_DATA"]['BRAKE_PRESSED'] != 0 or \
(self.brake_switch and self.brake_switch_prev and \
cp.ts["POWERTRAIN_DATA"]['BRAKE_SWITCH'] != self.brake_switch_ts)
diff --git a/selfdrive/car/honda/interface.py b/selfdrive/car/honda/interface.py
index 1c493e0d24..5a95da7098 100755
--- a/selfdrive/car/honda/interface.py
+++ b/selfdrive/car/honda/interface.py
@@ -175,7 +175,7 @@ class CarInterface(CarInterfaceBase):
ret.longitudinalTuning.kiBP = [0., 35.]
ret.longitudinalTuning.kiV = [0.54, 0.36]
- elif candidate == CAR.CIVIC_BOSCH:
+ elif candidate in (CAR.CIVIC_BOSCH, CAR.CIVIC_BOSCH_DIESEL):
stop_and_go = True
ret.mass = CivicParams.MASS
ret.wheelbase = CivicParams.WHEELBASE
diff --git a/selfdrive/car/honda/values.py b/selfdrive/car/honda/values.py
index c645011fa1..a8240ca68f 100644
--- a/selfdrive/car/honda/values.py
+++ b/selfdrive/car/honda/values.py
@@ -27,6 +27,7 @@ class CAR:
ACCORDH = "HONDA ACCORD 2018 HYBRID TOURING"
CIVIC = "HONDA CIVIC 2016 TOURING"
CIVIC_BOSCH = "HONDA CIVIC HATCHBACK 2017 SEDAN/COUPE 2019"
+ CIVIC_BOSCH_DIESEL = "HONDA CIVIC SEDAN 1.6 DIESEL"
ACURA_ILX = "ACURA ILX 2016 ACURAWATCH PLUS"
CRV = "HONDA CR-V 2016 TOURING"
CRV_5G = "HONDA CR-V 2017 EX"
@@ -74,6 +75,10 @@ FINGERPRINTS = {
{
57: 3, 148: 8, 228: 5, 304: 8, 330: 8, 344: 8, 380: 8, 399: 7, 401: 8, 420: 8, 427: 3, 428: 8, 432: 7, 441: 5, 450: 8, 464: 8, 470: 2, 476: 7, 477: 8, 479: 8, 490: 8, 493: 5, 495: 8, 506: 8, 545: 6, 597: 8, 662: 4, 773: 7, 777: 8, 780: 8, 795: 8, 800: 8, 804: 8, 806: 8, 808: 8, 829: 5, 862: 8, 884: 8, 891: 8, 892: 8, 927: 8, 929: 8, 985: 3, 1024: 5, 1027: 5, 1029: 8, 1036: 8, 1039: 8, 1108: 8, 1302: 8, 1322: 5, 1361: 5, 1365: 5, 1424: 5, 1600: 5, 1601: 8, 1633: 8
}],
+ CAR.CIVIC_BOSCH_DIESEL: [{
+ # 2019 Civic Sedan 1.6 i-dtec Diesel European
+ 57: 3, 148: 8, 228: 5, 308: 5, 316: 8, 330: 8, 344: 8, 380: 8, 399: 7, 419: 8, 420: 8, 426: 8, 427: 3, 432: 7, 441: 5, 450: 8, 464: 8, 470: 2, 476: 7, 477: 8, 479: 8, 490: 8, 493: 5, 495: 8, 506: 8, 507: 1, 545: 6, 597: 8, 662: 4, 773: 7, 777: 8, 780: 8, 795: 8, 800: 8, 801: 3, 804: 8, 806: 8, 808: 8, 815: 8, 824: 8, 825: 4, 829: 5, 837: 5, 862: 8, 881: 8, 882: 4, 884: 8, 887: 8, 888: 8, 891: 8, 902: 8, 918: 7, 927: 8, 929: 8, 983: 8, 985: 3, 1024: 5, 1027: 5, 1029: 8, 1036: 8, 1039: 8, 1064: 7, 1092: 1, 1108: 8, 1115: 2, 1125: 8, 1296: 8, 1302: 8, 1322: 5, 1337: 5, 1361: 5, 1365: 5, 1424: 5, 1600: 5, 1601: 8
+ }],
CAR.CRV: [{
57: 3, 145: 8, 316: 8, 340: 8, 342: 6, 344: 8, 380: 8, 398: 3, 399: 6, 401: 8, 404: 4, 420: 8, 422: 8, 426: 8, 432: 7, 464: 8, 474: 5, 476: 4, 487: 4, 490: 8, 493: 3, 506: 8, 507: 1, 512: 6, 513: 6, 542: 7, 545: 4, 597: 8, 660: 8, 661: 4, 773: 7, 777: 8, 780: 8, 800: 8, 804: 8, 808: 8, 829: 5, 882: 2, 884: 7, 888: 8, 891: 8, 892: 8, 923: 2, 929: 8, 983: 8, 985: 3, 1024: 5, 1027: 5, 1029: 8, 1033: 5, 1036: 8, 1039: 8, 1057: 5, 1064: 7, 1108: 8, 1125: 8, 1296: 8, 1365: 5, 1424: 5, 1600: 5, 1601: 8,
}],
@@ -410,6 +415,16 @@ FW_VERSIONS = {
b'38897-TBA-A020\x00\x00',
],
},
+ CAR.CIVIC_BOSCH_DIESEL: {
+ (Ecu.unknown, 0x18da10f1, None): [b'37805-59N-G830\x00\x00'],
+ (Ecu.unknown, 0x18da1ef1, None): [b'28101-59Y-G620\x00\x00'],
+ (Ecu.unknown, 0x18da28f1, None): [b'57114-TGN-E320\x00\x00'],
+ (Ecu.eps, 0x18da30f1, None): [b'39990-TFK-G020\x00\x00'],
+ (Ecu.unknown, 0x18da53f1, None): [b'77959-TFK-G210\x00\x00'],
+ (Ecu.unknown, 0x18da60f1, None): [b'78109-TFK-G020\x00\x00'],
+ (Ecu.unknown, 0x18dab0f1, None): [b'36802-TFK-G130\x00\x00'],
+ (Ecu.unknown, 0x18da0bf1, None): [b'54008-TGN-E010\x00\x00'],
+ },
CAR.CRV_5G: {
(Ecu.programmedFuelInjection, 0x18da10f1, None): [
b'37805-5PA-3080\x00\x00',
@@ -626,6 +641,7 @@ DBC = {
CAR.ACURA_RDX: dbc_dict('acura_rdx_2018_can_generated', 'acura_ilx_2016_nidec'),
CAR.CIVIC: dbc_dict('honda_civic_touring_2016_can_generated', 'acura_ilx_2016_nidec'),
CAR.CIVIC_BOSCH: dbc_dict('honda_civic_hatchback_ex_2017_can_generated', None),
+ CAR.CIVIC_BOSCH_DIESEL: dbc_dict('honda_civic_sedan_16_diesel_2019_can_generated', None),
CAR.CRV: dbc_dict('honda_crv_touring_2016_can_generated', 'acura_ilx_2016_nidec'),
CAR.CRV_5G: dbc_dict('honda_crv_ex_2017_can_generated', None),
CAR.CRV_HYBRID: dbc_dict('honda_crv_hybrid_2019_can_generated', None),
@@ -645,6 +661,7 @@ STEER_THRESHOLD = {
CAR.ACURA_RDX: 400,
CAR.CIVIC: 1200,
CAR.CIVIC_BOSCH: 1200,
+ CAR.CIVIC_BOSCH_DIESEL: 1200,
CAR.CRV: 1200,
CAR.CRV_5G: 1200,
CAR.CRV_HYBRID: 1200,
@@ -664,6 +681,7 @@ SPEED_FACTOR = {
CAR.ACURA_RDX: 1.,
CAR.CIVIC: 1.,
CAR.CIVIC_BOSCH: 1.,
+ CAR.CIVIC_BOSCH_DIESEL: 1.,
CAR.CRV: 1.025,
CAR.CRV_5G: 1.025,
CAR.CRV_HYBRID: 1.025,
@@ -681,4 +699,4 @@ ECU_FINGERPRINT = {
Ecu.fwdCamera: [0xE4, 0x194], # steer torque cmd
}
-HONDA_BOSCH = [CAR.ACCORD, CAR.ACCORD_15, CAR.ACCORDH, CAR.CIVIC_BOSCH, CAR.CRV_5G, CAR.CRV_HYBRID]
+HONDA_BOSCH = [CAR.ACCORD, CAR.ACCORD_15, CAR.ACCORDH, CAR.CIVIC_BOSCH, CAR.CIVIC_BOSCH_DIESEL, CAR.CRV_5G, CAR.CRV_HYBRID]
diff --git a/selfdrive/test/test_car_models.py b/selfdrive/test/test_car_models.py
index 255ae9f82c..bd8c74f18a 100755
--- a/selfdrive/test/test_car_models.py
+++ b/selfdrive/test/test_car_models.py
@@ -196,6 +196,11 @@ routes = {
'carFingerprint': HONDA.CIVIC_BOSCH,
'enableCamera': True,
},
+ "d83f36766f8012a5|2020-02-05--18-42-21": {
+ 'carFingerprint': HONDA.CIVIC_BOSCH_DIESEL,
+ 'enableCamera': True,
+ 'fingerprintSource': 'fixed',
+ },
#"18971a99f3f2b385|2018-11-14--19-09-31": {
# 'carFingerprint': HONDA.INSIGHT,
# 'enableCamera': True,