Skip to content

Commit

Permalink
Sync: commaai/opendbc:master into sunnypilot/opendbc:master-new
Browse files Browse the repository at this point in the history
  • Loading branch information
sunnyhaibin authored Jan 7, 2025
2 parents 6525e8b + 4a9d843 commit 6ddebc9
Show file tree
Hide file tree
Showing 17 changed files with 84 additions and 35 deletions.
25 changes: 25 additions & 0 deletions .github/workflows/update-cars-docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: Update CARS.md

on:
schedule:
- cron: '0 8 * * *' # 12am PST (8am UTC)
workflow_dispatch:

jobs:
update-cars:
runs-on: ubuntu-24.04
permissions:
contents: write
steps:
- uses: actions/checkout@v4
- name: Generate Car Docs
run: |
pip install -e .
scons -c && scons -j$(nproc)
python -m pip install jinja2==3.1.4 natsort==8.4.0
python opendbc/car/docs.py
- uses: stefanzweifel/git-auto-commit-action@8621497c8c39c72f3e2a999a26b4ca1b5058a842
with:
commit_message: 'docs: Scheduled auto-update CARS.md'
file_pattern: 'docs/CARS.md'

9 changes: 5 additions & 4 deletions docs/CARS.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!--- AUTOGENERATED FROM selfdrive/car/CARS_template.md, DO NOT EDIT. --->

# Support Information for 344 Known Cars
# Support Information for 345 Known Cars

|Make|Model|Package|Support Level|
|---|---|---|:---:|
Expand Down Expand Up @@ -61,6 +61,7 @@
|Genesis|GV60 (Performance Trim) 2022-23|All|[Upstream](#upstream)|
|Genesis|GV70 (2.5T Trim, without HDA II) 2022-23|All|[Upstream](#upstream)|
|Genesis|GV70 (3.5T Trim, without HDA II) 2022-23|All|[Upstream](#upstream)|
|Genesis|GV70 Electrified (Australia Only) 2022|All|[Upstream](#upstream)|
|Genesis|GV70 Electrified (with HDA II) 2023|Highway Driving Assist II|[Upstream](#upstream)|
|Genesis|GV80 2023|All|[Upstream](#upstream)|
|GMC|Sierra 1500 2020-21|Driver Alert Package II|[Upstream](#upstream)|
Expand Down Expand Up @@ -91,7 +92,7 @@
|Honda|Passport 2019-23|All|[Upstream](#upstream)|
|Honda|Pilot 2016-22|Honda Sensing|[Upstream](#upstream)|
|Honda|Pilot 2023-24|All|[Community](#community)|
|Honda|Ridgeline 2017-24|Honda Sensing|[Upstream](#upstream)|
|Honda|Ridgeline 2017-25|Honda Sensing|[Upstream](#upstream)|
|Hyundai|Azera 2022|All|[Upstream](#upstream)|
|Hyundai|Azera Hybrid 2019|All|[Upstream](#upstream)|
|Hyundai|Azera Hybrid 2020|All|[Upstream](#upstream)|
Expand All @@ -103,7 +104,7 @@
|Hyundai|Elantra Hybrid 2021-23|Smart Cruise Control (SCC)|[Upstream](#upstream)|
|Hyundai|Genesis 2015-16|Smart Cruise Control (SCC)|[Upstream](#upstream)|
|Hyundai|i30 2017-19|Smart Cruise Control (SCC)|[Upstream](#upstream)|
|Hyundai|Ioniq 5 (Non-US only) 2022-24|All|[Upstream](#upstream)|
|Hyundai|Ioniq 5 (Southeast Asia and Europe only) 2022-24|All|[Upstream](#upstream)|
|Hyundai|Ioniq 5 (with HDA II) 2022-24|Highway Driving Assist II|[Upstream](#upstream)|
|Hyundai|Ioniq 5 (without HDA II) 2022-24|Highway Driving Assist|[Upstream](#upstream)|
|Hyundai|Ioniq 6 (with HDA II) 2023-24|Highway Driving Assist II|[Upstream](#upstream)|
Expand Down Expand Up @@ -345,7 +346,7 @@
|Volkswagen|Teramont 2018-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)|
|Volkswagen|Teramont Cross Sport 2021-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)|
|Volkswagen|Teramont X 2021-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)|
|Volkswagen|Tiguan 2018-24|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)|
|Volkswagen|Tiguan 2018-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)|
|Volkswagen|Tiguan eHybrid 2021-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)|
|Volkswagen|Touran 2016-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)|

Expand Down
5 changes: 5 additions & 0 deletions opendbc/car/chrysler/fingerprints.py
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,7 @@
b'04672758AB',
b'68417813AF',
b'68540436AA',
b'68540436AB',
b'68540436AC',
b'68540436AD',
b'68598670AB',
Expand Down Expand Up @@ -301,6 +302,7 @@
b'68321644AC',
b'68321646AC',
b'68321648AC',
b'68321650AC',
],
(Ecu.engine, 0x7e0, None): [
b'05035920AE ',
Expand All @@ -326,6 +328,7 @@
b'68361911AE',
b'68361911AF',
b'68361911AH',
b'68361914AE',
b'68361916AD',
],
},
Expand Down Expand Up @@ -571,6 +574,7 @@
b'68378743AM ',
b'68378748AL ',
b'68378758AM ',
b'68378759AM ',
b'68448163AJ',
b'68448163AK',
b'68448163AL',
Expand Down Expand Up @@ -623,6 +627,7 @@
b'68360080AL',
b'68360080AM',
b'68360081AM',
b'68360081AN',
b'68360085AH',
b'68360085AJ',
b'68360085AL',
Expand Down
4 changes: 2 additions & 2 deletions opendbc/car/docs.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ def get_all_footnotes() -> dict[Enum, int]:
return {fn: idx + 1 for idx, fn in enumerate(all_footnotes)}


def build_sorted_car_docs_list(platforms, footnotes=None, include_dashcam=False, include_custom=False):
def build_sorted_car_docs_list(platforms, footnotes=None, include_dashcam=False):
collected_car_docs: list[CarDocs | ExtraCarDocs] = []
for model, platform in platforms.items():
car_docs = platform.config.car_docs
Expand Down Expand Up @@ -70,7 +70,7 @@ def get_all_car_docs() -> list[CarDocs]:


def get_car_docs_with_extras() -> list[CarDocs | ExtraCarDocs]:
sorted_list: list[CarDocs] = build_sorted_car_docs_list(EXTRA_PLATFORMS, include_custom=True, include_dashcam=True)
sorted_list: list[CarDocs] = build_sorted_car_docs_list(EXTRA_PLATFORMS, include_dashcam=True)
return sorted_list


Expand Down
5 changes: 2 additions & 3 deletions opendbc/car/honda/carcontroller.py
Original file line number Diff line number Diff line change
Expand Up @@ -160,8 +160,7 @@ def update(self, CC, CS, now_nanos):
can_sends.append(make_tester_present_msg(0x18DAB0F1, 1, suppress_response=True))

# Send steering command.
can_sends.append(hondacan.create_steering_control(self.packer, self.CAN, apply_steer, CC.latActive, self.CP.carFingerprint,
CS.CP.openpilotLongitudinalControl))
can_sends.append(hondacan.create_steering_control(self.packer, self.CAN, apply_steer, CC.latActive))

# wind brake from air resistance decel at high speed
wind_brake = interp(CS.out.vEgo, [0.0, 2.3, 35.0], [0.001, 0.002, 0.15])
Expand Down Expand Up @@ -194,7 +193,7 @@ def update(self, CC, CS, now_nanos):

if not self.CP.openpilotLongitudinalControl:
if self.frame % 2 == 0 and self.CP.carFingerprint not in HONDA_BOSCH_RADARLESS: # radarless cars don't have supplemental message
can_sends.append(hondacan.create_bosch_supplemental_1(self.packer, self.CAN, self.CP.carFingerprint))
can_sends.append(hondacan.create_bosch_supplemental_1(self.packer, self.CAN))
# If using stock ACC, spam cancel command to kill gas when OP disengages.
if pcm_cancel_cmd:
can_sends.append(hondacan.spam_buttons_command(self.packer, self.CAN, CruiseButtons.CANCEL, self.CP.carFingerprint))
Expand Down
1 change: 1 addition & 0 deletions opendbc/car/honda/fingerprints.py
Original file line number Diff line number Diff line change
Expand Up @@ -876,6 +876,7 @@
b'77959-T20-A970\x00\x00',
b'77959-T20-A980\x00\x00',
b'77959-T20-M820\x00\x00',
b'77959-T39-A910\x00\x00',
b'77959-T47-A940\x00\x00',
b'77959-T47-A950\x00\x00',
],
Expand Down
36 changes: 18 additions & 18 deletions opendbc/car/honda/hondacan.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,11 @@ def __init__(self, CP=None, fingerprint=None) -> None:

if CP.carFingerprint in (HONDA_BOSCH - HONDA_BOSCH_RADARLESS):
self._pt, self._radar = self.offset + 1, self.offset
# normally steering commands are sent to radar, which forwards them to powertrain bus
# when radar is disabled, steering commands are sent directly to powertrain bus
self._lkas = self._pt if CP.openpilotLongitudinalControl else self._radar
else:
self._pt, self._radar = self.offset, self.offset + 1
self._pt, self._radar, self._lkas = self.offset, self.offset + 1, self.offset

@property
def pt(self) -> int:
Expand All @@ -31,14 +34,14 @@ def radar(self) -> int:
def camera(self) -> int:
return self.offset + 2

@property
def lkas(self) -> int:
return self._lkas

def get_lkas_cmd_bus(CAN, car_fingerprint, radar_disabled=False):
no_radar = car_fingerprint in HONDA_BOSCH_RADARLESS
if radar_disabled or no_radar:
# when radar is disabled, steering commands are sent directly to powertrain bus
return CAN.pt
# normally steering commands are sent to radar, which forwards them to powertrain bus
return 0
# B-CAN is forwarded to ACC-CAN radar side (CAN 0 on fake ethernet port)
@property
def body(self) -> int:
return self.offset


def get_cruise_speed_conversion(car_fingerprint: str, is_metric: bool) -> float:
Expand Down Expand Up @@ -114,30 +117,27 @@ def create_acc_commands(packer, CAN, enabled, active, accel, gas, stopping_count
return commands


def create_steering_control(packer, CAN, apply_steer, lkas_active, car_fingerprint, radar_disabled):
def create_steering_control(packer, CAN, apply_steer, lkas_active):
values = {
"STEER_TORQUE": apply_steer if lkas_active else 0,
"STEER_TORQUE_REQUEST": lkas_active,
}
bus = get_lkas_cmd_bus(CAN, car_fingerprint, radar_disabled)
return packer.make_can_msg("STEERING_CONTROL", bus, values)
return packer.make_can_msg("STEERING_CONTROL", CAN.lkas, values)


def create_bosch_supplemental_1(packer, CAN, car_fingerprint):
def create_bosch_supplemental_1(packer, CAN):
# non-active params
values = {
"SET_ME_X04": 0x04,
"SET_ME_X80": 0x80,
"SET_ME_X10": 0x10,
}
bus = get_lkas_cmd_bus(CAN, car_fingerprint)
return packer.make_can_msg("BOSCH_SUPPLEMENTAL_1", bus, values)
return packer.make_can_msg("BOSCH_SUPPLEMENTAL_1", CAN.lkas, values)


def create_ui_commands(packer, CAN, CP, enabled, pcm_speed, hud, is_metric, acc_hud, lkas_hud):
commands = []
radar_disabled = CP.carFingerprint in (HONDA_BOSCH - HONDA_BOSCH_RADARLESS) and CP.openpilotLongitudinalControl
bus_lkas = get_lkas_cmd_bus(CAN, CP.carFingerprint, radar_disabled)

if CP.openpilotLongitudinalControl:
acc_hud_values = {
Expand Down Expand Up @@ -183,10 +183,10 @@ def create_ui_commands(packer, CAN, CP, enabled, pcm_speed, hud, is_metric, acc_
lkas_hud_values['SET_ME_X48'] = 0x48

if CP.flags & HondaFlags.BOSCH_EXT_HUD and not CP.openpilotLongitudinalControl:
commands.append(packer.make_can_msg('LKAS_HUD_A', bus_lkas, lkas_hud_values))
commands.append(packer.make_can_msg('LKAS_HUD_B', bus_lkas, lkas_hud_values))
commands.append(packer.make_can_msg('LKAS_HUD_A', CAN.lkas, lkas_hud_values))
commands.append(packer.make_can_msg('LKAS_HUD_B', CAN.lkas, lkas_hud_values))
else:
commands.append(packer.make_can_msg('LKAS_HUD', bus_lkas, lkas_hud_values))
commands.append(packer.make_can_msg('LKAS_HUD', CAN.lkas, lkas_hud_values))

if radar_disabled:
radar_hud_values = {
Expand Down
2 changes: 1 addition & 1 deletion opendbc/car/honda/interface.py
Original file line number Diff line number Diff line change
Expand Up @@ -213,4 +213,4 @@ def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, experime
@staticmethod
def init(CP, can_recv, can_send):
if CP.carFingerprint in (HONDA_BOSCH - HONDA_BOSCH_RADARLESS) and CP.openpilotLongitudinalControl:
disable_ecu(can_recv, can_send, bus=1, addr=0x18DAB0F1, com_cont_req=b'\x28\x83\x03')
disable_ecu(can_recv, can_send, bus=CanBus(CP).pt, addr=0x18DAB0F1, com_cont_req=b'\x28\x83\x03')
2 changes: 1 addition & 1 deletion opendbc/car/honda/values.py
Original file line number Diff line number Diff line change
Expand Up @@ -256,7 +256,7 @@ class CAR(Platforms):
flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES,
)
HONDA_RIDGELINE = HondaNidecPlatformConfig(
[HondaCarDocs("Honda Ridgeline 2017-24", min_steer_speed=12. * CV.MPH_TO_MS)],
[HondaCarDocs("Honda Ridgeline 2017-25", min_steer_speed=12. * CV.MPH_TO_MS)],
CarSpecs(mass=4515 * CV.LB_TO_KG, wheelbase=3.18, centerToFrontRatio=0.41, steerRatio=15.59, tireStiffnessFactor=0.444), # as spec
radar_dbc_dict('acura_ilx_2016_can_generated'),
flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES,
Expand Down
8 changes: 8 additions & 0 deletions opendbc/car/hyundai/fingerprints.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,12 +49,14 @@
b'\xf1\x00AEhe SCC H-CUP 1.01 1.01 96400-G2100 ',
],
(Ecu.eps, 0x7d4, None): [
b'\xf1\x00AE MDPS C 1.00 1.03 56310/G2300 4AEHC103',
b'\xf1\x00AE MDPS C 1.00 1.05 56310/G2501 4AEHC105',
b'\xf1\x00AE MDPS C 1.00 1.07 56310/G2301 4AEHC107',
b'\xf1\x00AE MDPS C 1.00 1.07 56310/G2501 4AEHC107',
],
(Ecu.fwdCamera, 0x7c4, None): [
b'\xf1\x00AEH MFC AT EUR LHD 1.00 1.00 95740-G2400 180222',
b'\xf1\x00AEH MFC AT EUR LHD 1.00 1.00 95740-G7200 160418',
b'\xf1\x00AEH MFC AT USA LHD 1.00 1.00 95740-G2400 180222',
],
},
Expand Down Expand Up @@ -141,6 +143,7 @@
b'\xf1\x00AEhe SCC FHCUP 1.00 1.00 99110-G2600 ',
],
(Ecu.eps, 0x7d4, None): [
b'\xf1\x00AE MDPS C 1.00 1.01 56310/G2510 4APHC101',
b'\xf1\x00AE MDPS C 1.00 1.01 56310G2510\x00 4APHC101',
],
(Ecu.fwdCamera, 0x7c4, None): [
Expand Down Expand Up @@ -393,6 +396,7 @@
b'\xf1\x00LX2_ SCC FHCUP 1.00 1.03 99110-S8100 ',
b'\xf1\x00LX2_ SCC FHCUP 1.00 1.04 99110-S8100 ',
b'\xf1\x00LX2_ SCC FHCUP 1.00 1.05 99110-S8100 ',
b'\xf1\x00ON__ FCA FHCU- 1.00 1.00 99110-S9110 ',
b'\xf1\x00ON__ FCA FHCUP 1.00 1.00 99110-S9110 ',
b'\xf1\x00ON__ FCA FHCUP 1.00 1.01 99110-S9110 ',
b'\xf1\x00ON__ FCA FHCUP 1.00 1.02 99110-S9100 ',
Expand Down Expand Up @@ -629,6 +633,7 @@
b'\xf1\x00OSE LKAS AT EUR LHD 1.00 1.00 95740-K4100 W40',
b'\xf1\x00OSE LKAS AT EUR RHD 1.00 1.00 95740-K4100 W40',
b'\xf1\x00OSE LKAS AT KOR LHD 1.00 1.00 95740-K4100 W40',
b'\xf1\x00OSE LKAS AT KOR LHD 1.00 1.00 95740-K4300 W50',
b'\xf1\x00OSE LKAS AT USA LHD 1.00 1.00 95740-K4100 W40',
b'\xf1\x00OSE LKAS AT USA LHD 1.00 1.00 95740-K4300 W50',
],
Expand Down Expand Up @@ -992,7 +997,9 @@
b'\xf1\x00NE1 MFC AT EUR LHD 1.00 1.06 99211-GI010 230110',
b'\xf1\x00NE1 MFC AT EUR RHD 1.00 1.01 99211-GI010 211007',
b'\xf1\x00NE1 MFC AT EUR RHD 1.00 1.02 99211-GI010 211206',
b'\xf1\x00NE1 MFC AT IND RHD 1.00 1.07 99211-GI010 230620',
b'\xf1\x00NE1 MFC AT KOR LHD 1.00 1.00 99211-GI020 230719',
b'\xf1\x00NE1 MFC AT KOR LHD 1.00 1.01 99211-GI010 211007',
b'\xf1\x00NE1 MFC AT KOR LHD 1.00 1.05 99211-GI010 220614',
b'\xf1\x00NE1 MFC AT USA LHD 1.00 1.00 99211-GI020 230719',
b'\xf1\x00NE1 MFC AT USA LHD 1.00 1.00 99211-GI100 230915',
Expand Down Expand Up @@ -1080,6 +1087,7 @@
},
CAR.GENESIS_GV70_ELECTRIFIED_1ST_GEN: {
(Ecu.fwdCamera, 0x7c4, None): [
b'\xf1\x00JK1EMFC AT AUS RHD 1.00 1.01 99211-DS100 220125',
b'\xf1\x00JK1EMFC AT USA LHD 1.00 1.00 99211-IT100 220919',
],
(Ecu.fwdRadar, 0x7d0, None): [
Expand Down
3 changes: 2 additions & 1 deletion opendbc/car/hyundai/values.py
Original file line number Diff line number Diff line change
Expand Up @@ -309,7 +309,7 @@ class CAR(Platforms):
)
HYUNDAI_IONIQ_5 = HyundaiCanFDPlatformConfig(
[
HyundaiCarDocs("Hyundai Ioniq 5 (Non-US only) 2022-24", "All", car_parts=CarParts.common([CarHarness.hyundai_q])),
HyundaiCarDocs("Hyundai Ioniq 5 (Southeast Asia and Europe only) 2022-24", "All", car_parts=CarParts.common([CarHarness.hyundai_q])),
HyundaiCarDocs("Hyundai Ioniq 5 (without HDA II) 2022-24", "Highway Driving Assist", car_parts=CarParts.common([CarHarness.hyundai_k])),
HyundaiCarDocs("Hyundai Ioniq 5 (with HDA II) 2022-24", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_q])),
],
Expand Down Expand Up @@ -532,6 +532,7 @@ class CAR(Platforms):
)
GENESIS_GV70_ELECTRIFIED_1ST_GEN = HyundaiCanFDPlatformConfig(
[
HyundaiCarDocs("Genesis GV70 Electrified (Australia Only) 2022", "All", car_parts=CarParts.common([CarHarness.hyundai_q])),
HyundaiCarDocs("Genesis GV70 Electrified (with HDA II) 2023", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_q])),
],
CarSpecs(mass=2260, wheelbase=2.87, steerRatio=17.1),
Expand Down
1 change: 1 addition & 0 deletions opendbc/car/mazda/fingerprints.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
(Ecu.engine, 0x7e0, None): [
b'PEW5-188K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PW67-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PX2C-188K2-G\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PX2D-188K2-G\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PX2G-188K2-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PX2H-188K2-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
Expand Down
4 changes: 1 addition & 3 deletions opendbc/car/toyota/carcontroller.py
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,6 @@ def __init__(self, dbc_names, CP):
self.secoc_lka_message_counter = 0
self.secoc_lta_message_counter = 0
self.secoc_prev_reset_counter = 0
self.secoc_mismatch_counter = 0

def update(self, CC, CS, now_nanos):
actuators = CC.actuators
Expand All @@ -109,9 +108,8 @@ def update(self, CC, CS, now_nanos):
self.secoc_prev_reset_counter = CS.secoc_synchronization['RESET_CNT']

expected_mac = build_sync_mac(self.secoc_key, int(CS.secoc_synchronization['TRIP_CNT']), int(CS.secoc_synchronization['RESET_CNT']))
if int(CS.secoc_synchronization['AUTHENTICATOR']) != expected_mac and self.secoc_mismatch_counter < 100:
if int(CS.secoc_synchronization['AUTHENTICATOR']) != expected_mac:
carlog.error("SecOC synchronization MAC mismatch, wrong key?")
self.secoc_mismatch_counter += 1

# *** steer torque ***
new_steer = int(round(actuators.steer * self.params.STEER_MAX))
Expand Down
5 changes: 5 additions & 0 deletions opendbc/car/toyota/fingerprints.py
Original file line number Diff line number Diff line change
Expand Up @@ -300,6 +300,7 @@
b'8821F0W01000 ',
b'8821F0W01100 ',
b'8821FF401600 ',
b'8821FF401800 ',
b'8821FF402300 ',
b'8821FF402400 ',
b'8821FF404000 ',
Expand Down Expand Up @@ -349,6 +350,7 @@
b'8821F0W01000 ',
b'8821F0W01100 ',
b'8821FF401600 ',
b'8821FF401800 ',
b'8821FF402300 ',
b'8821FF402400 ',
b'8821FF404000 ',
Expand Down Expand Up @@ -730,6 +732,7 @@
b'\x01896630EG3000\x00\x00\x00\x00',
b'\x01896630EG3100\x00\x00\x00\x00',
b'\x01896630EG5000\x00\x00\x00\x00',
b'\x01896630EG5100\x00\x00\x00\x00',
b'\x02896630E66000\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00',
b'\x02896630E66100\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00',
b'\x02896630EB3000\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00',
Expand Down Expand Up @@ -1176,6 +1179,7 @@
b'\x01896634A02001\x00\x00\x00\x00',
b'\x01896634A03000\x00\x00\x00\x00',
b'\x01896634A08000\x00\x00\x00\x00',
b'\x01896634A59000\x00\x00\x00\x00',
b'\x01896634A61000\x00\x00\x00\x00',
b'\x01896634A62000\x00\x00\x00\x00',
b'\x01896634A62100\x00\x00\x00\x00',
Expand Down Expand Up @@ -1377,6 +1381,7 @@
b'\x02333R0000\x00\x00\x00\x00\x00\x00\x00\x00A0C01000\x00\x00\x00\x00\x00\x00\x00\x00',
],
(Ecu.abs, 0x7b0, None): [
b'F152606201\x00\x00\x00\x00\x00\x00',
b'F152606202\x00\x00\x00\x00\x00\x00',
b'F152633171\x00\x00\x00\x00\x00\x00',
],
Expand Down
Loading

0 comments on commit 6ddebc9

Please sign in to comment.