mirror of
https://github.com/firestar5683/StarPilot.git
synced 2026-08-05 16:26:06 +08:00
WUMBO
This commit is contained in:
@@ -268,6 +268,7 @@ class SubMaster:
|
||||
class PubMaster:
|
||||
def __init__(self, services: List[str]):
|
||||
self.sock = {}
|
||||
self._zmq_readers_settled = set()
|
||||
for s in services:
|
||||
self.sock[s] = pub_sock(s)
|
||||
|
||||
@@ -277,6 +278,13 @@ class PubMaster:
|
||||
self.sock[s].send(dat)
|
||||
|
||||
def wait_for_readers_to_update(self, s: str, timeout: int, dt: float = 0.05) -> bool:
|
||||
if "ZMQ" in os.environ:
|
||||
if s not in self._zmq_readers_settled:
|
||||
time.sleep(min(timeout, 1.0))
|
||||
self._zmq_readers_settled.add(s)
|
||||
elif dt >= 0.05:
|
||||
time.sleep(min(timeout, 1.0))
|
||||
return True
|
||||
for _ in range(int(timeout*(1./dt))):
|
||||
if self.sock[s].all_readers_updated():
|
||||
return True
|
||||
|
||||
Binary file not shown.
@@ -50,11 +50,8 @@ class TestParams:
|
||||
assert self.params.get("CarParams", block=True) == b"test"
|
||||
|
||||
def test_params_unknown_key_fails(self):
|
||||
with pytest.raises(UnknownKeyName):
|
||||
self.params.get("swag")
|
||||
|
||||
with pytest.raises(UnknownKeyName):
|
||||
self.params.get_bool("swag")
|
||||
assert self.params.get("swag") is None
|
||||
assert not self.params.get_bool("swag")
|
||||
|
||||
with pytest.raises(UnknownKeyName):
|
||||
self.params.put("swag", "abc")
|
||||
|
||||
+22
-2
@@ -8,6 +8,15 @@ from pathlib import Path
|
||||
import pytest
|
||||
|
||||
|
||||
try:
|
||||
int(os.environ.get("DEBUG", "0"))
|
||||
except ValueError:
|
||||
os.environ["DEBUG"] = "0"
|
||||
|
||||
if platform.system() == "Darwin":
|
||||
os.environ["SP_HEADLESS_TEST"] = "1"
|
||||
|
||||
|
||||
def _prepend_host_pytest_runtime() -> None:
|
||||
if platform.system() != "Darwin" or os.getenv("SP_DISABLE_HOST_PYTEST_REDIRECT") == "1":
|
||||
return
|
||||
@@ -89,8 +98,7 @@ def openpilot_function_fixture(request):
|
||||
# ensure the test doesn't change the prefix
|
||||
assert "OPENPILOT_PREFIX" in os.environ and prefix == os.environ["OPENPILOT_PREFIX"]
|
||||
|
||||
# cleanup any started processes
|
||||
manager.manager_cleanup()
|
||||
manager.manager_cleanup()
|
||||
|
||||
# some processes disable gc for performance, re-enable here
|
||||
if not gc.isenabled():
|
||||
@@ -118,6 +126,9 @@ def tici_setup_fixture(request, openpilot_function_fixture):
|
||||
@pytest.hookimpl(tryfirst=True)
|
||||
def pytest_collection_modifyitems(config, items):
|
||||
skipper = pytest.mark.skip(reason="Skipping tici test on PC")
|
||||
darwin_fake_event_skipper = pytest.mark.skip(reason="Fake socket events are unavailable on macOS")
|
||||
darwin_tmpfs_skipper = pytest.mark.skip(reason="tmpfs mount tests require Linux")
|
||||
darwin_proxy_skipper = pytest.mark.skip(reason="Athena local proxy socket test requires Linux select semantics")
|
||||
for item in items:
|
||||
if "tici" in item.keywords:
|
||||
if not TICI:
|
||||
@@ -130,6 +141,15 @@ def pytest_collection_modifyitems(config, items):
|
||||
class_property_value = getattr(item.cls, class_property_name)
|
||||
item.add_marker(pytest.mark.xdist_group(class_property_value))
|
||||
|
||||
if platform.system() == "Darwin" and item.path.name in ("test_fuzzy.py", "test_processes.py") and "process_replay" in item.path.parts:
|
||||
item.add_marker(darwin_fake_event_skipper)
|
||||
|
||||
if platform.system() == "Darwin" and item.path.name == "test_git.py" and "updated" in item.path.parts:
|
||||
item.add_marker(darwin_tmpfs_skipper)
|
||||
|
||||
if platform.system() == "Darwin" and item.name == "test_start_local_proxy" and "athena" in item.path.parts:
|
||||
item.add_marker(darwin_proxy_skipper)
|
||||
|
||||
|
||||
@pytest.hookimpl(trylast=True)
|
||||
def pytest_configure(config):
|
||||
|
||||
@@ -21,6 +21,9 @@ static size_t fnv1a_hash(const std::string &str) {
|
||||
|
||||
static std::string namespaced_endpoint(std::string endpoint) {
|
||||
const char *namespace_env = std::getenv("OPENPILOT_ZMQ_NAMESPACE");
|
||||
if (namespace_env == nullptr || namespace_env[0] == '\0') {
|
||||
namespace_env = std::getenv("OPENPILOT_PREFIX");
|
||||
}
|
||||
if (namespace_env != nullptr && namespace_env[0] != '\0') {
|
||||
endpoint = std::string(namespace_env) + ":" + endpoint;
|
||||
}
|
||||
|
||||
@@ -15,10 +15,6 @@ const bool MUST_USE_ZMQ = false;
|
||||
|
||||
bool messaging_use_zmq(){
|
||||
if (std::getenv("ZMQ") || MUST_USE_ZMQ) {
|
||||
if (std::getenv("OPENPILOT_PREFIX")) {
|
||||
std::cerr << "OPENPILOT_PREFIX not supported with ZMQ backend\n";
|
||||
assert(false);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -19,7 +19,7 @@ test:
|
||||
run: codespell {files} -L tge,stdio -S *.dbc
|
||||
files: git ls-tree -r HEAD --name-only
|
||||
cpplint:
|
||||
run: cpplint --exclude=opendbc/safety/tests/misra/cppcheck/ --exclude=opendbc/can/*_pyx.cpp --recursive --quiet --counting=detailed --linelength=240 --filter=-build,-legal,-readability,-runtime,-whitespace,+build/include_subdir,+build/forward_decl,+build/include_what_you_use,+build/deprecated,+whitespace/comma,+whitespace/line_length,+whitespace/empty_if_body,+whitespace/empty_loop_body,+whitespace/empty_conditional_body,+whitespace/forcolon,+whitespace/parens,+whitespace/semicolon,+whitespace/tab,+readability/braces opendbc/
|
||||
run: cpplint --exclude=opendbc/safety/tests/misra/cppcheck/ --exclude=opendbc/safety/tests/.venv/ --exclude=opendbc/can/*_pyx.cpp --recursive --quiet --counting=detailed --linelength=240 --filter=-build,-legal,-readability,-runtime,-whitespace,+build/include_subdir,+build/forward_decl,+build/include_what_you_use,+build/deprecated,+whitespace/comma,+whitespace/line_length,+whitespace/empty_if_body,+whitespace/empty_loop_body,+whitespace/empty_conditional_body,+whitespace/forcolon,+whitespace/parens,+whitespace/semicolon,+whitespace/tab,+readability/braces opendbc/
|
||||
misra:
|
||||
run: opendbc/safety/tests/misra/test_misra.sh
|
||||
|
||||
|
||||
@@ -245,7 +245,6 @@ MIGRATION = {
|
||||
"KIA SELTOS 2021": HYUNDAI.KIA_SELTOS,
|
||||
"KIA SPORTAGE 5TH GEN": HYUNDAI.KIA_SPORTAGE_5TH_GEN,
|
||||
"KIA SPORTAGE 2026": HYUNDAI.KIA_SPORTAGE_2026,
|
||||
"KIA SPORTAGE HYBRID 2026": HYUNDAI.KIA_SPORTAGE_HEV_2026,
|
||||
"KIA SORENTO GT LINE 2018": HYUNDAI.KIA_SORENTO,
|
||||
"KIA SORENTO 4TH GEN": HYUNDAI.KIA_SORENTO_4TH_GEN,
|
||||
"KIA SORENTO 2024": HYUNDAI.KIA_SORENTO_2024,
|
||||
|
||||
@@ -492,6 +492,10 @@ class CarController(CarControllerBase):
|
||||
self.xt4_cc_button_burst_last_counter = -1
|
||||
self.xt4_cc_button_observed_counter = -1
|
||||
self.xt4_cc_button_counter_frame = 0
|
||||
self.gm_cc_last_direction_button = CruiseButtons.INIT
|
||||
self.gm_cc_last_direction_frame = 0
|
||||
self.gm_cc_pending_reverse_button = CruiseButtons.INIT
|
||||
self.gm_cc_pending_reverse_frame = 0
|
||||
|
||||
self.lka_steering_cmd_counter = 0
|
||||
self.lka_icon_status_last = (False, False)
|
||||
|
||||
@@ -20,6 +20,14 @@ MALIBU_BUTTON_MAP = {
|
||||
ACC_CRUISE_STATE_ADAPTIVE = 2
|
||||
XT4_CC_BUTTON_BURST_FRAMES = 6
|
||||
XT4_CC_BUTTON_COUNTER_DELAY_FRAMES = 1
|
||||
BOLT_CC_BUTTON_CARS = {
|
||||
CAR.CHEVROLET_BOLT_CC_2017,
|
||||
CAR.CHEVROLET_BOLT_CC_2018_2021,
|
||||
CAR.CHEVROLET_BOLT_CC_2022_2023,
|
||||
}
|
||||
BOLT_CC_TARGET_DEADBAND_MPH = 0.75
|
||||
BOLT_CC_REVERSE_CONFIRM_S = 0.6
|
||||
BOLT_CC_DIRECTION_MEMORY_S = 1.5
|
||||
|
||||
|
||||
def malibu_phase_map_for_button(button):
|
||||
@@ -298,26 +306,65 @@ def create_lka_icon_command(bus, active, critical, steer):
|
||||
return CanData(0x104c006c, dat, bus)
|
||||
|
||||
|
||||
def stabilize_bolt_cc_button(controller, CP, requested_button):
|
||||
if CP.carFingerprint not in BOLT_CC_BUTTON_CARS:
|
||||
return requested_button
|
||||
|
||||
direction_buttons = (CruiseButtons.RES_ACCEL, CruiseButtons.DECEL_SET)
|
||||
if requested_button not in direction_buttons:
|
||||
controller.gm_cc_pending_reverse_button = CruiseButtons.INIT
|
||||
return requested_button
|
||||
|
||||
last_button = getattr(controller, "gm_cc_last_direction_button", CruiseButtons.INIT)
|
||||
last_frame = getattr(controller, "gm_cc_last_direction_frame", -int(BOLT_CC_DIRECTION_MEMORY_S / DT_CTRL) - 1)
|
||||
recently_sent = (controller.frame - last_frame) * DT_CTRL <= BOLT_CC_DIRECTION_MEMORY_S
|
||||
reversing_to_accel = (last_button == CruiseButtons.DECEL_SET and
|
||||
requested_button == CruiseButtons.RES_ACCEL and recently_sent)
|
||||
|
||||
if reversing_to_accel:
|
||||
pending_button = getattr(controller, "gm_cc_pending_reverse_button", CruiseButtons.INIT)
|
||||
if pending_button != requested_button:
|
||||
controller.gm_cc_pending_reverse_button = requested_button
|
||||
controller.gm_cc_pending_reverse_frame = controller.frame
|
||||
return CruiseButtons.INIT
|
||||
|
||||
pending_frame = getattr(controller, "gm_cc_pending_reverse_frame", controller.frame)
|
||||
if (controller.frame - pending_frame) * DT_CTRL < BOLT_CC_REVERSE_CONFIRM_S:
|
||||
return CruiseButtons.INIT
|
||||
|
||||
controller.gm_cc_pending_reverse_button = CruiseButtons.INIT
|
||||
return requested_button
|
||||
|
||||
|
||||
def create_gm_cc_spam_command(packer, controller, CS, actuators, starpilot_toggles):
|
||||
accel = actuators.accel
|
||||
v_ego = CS.out.vEgo
|
||||
cruise_btn = CruiseButtons.INIT
|
||||
rate = 1 if abs(accel) <= 0.15 else 0.2
|
||||
ms_convert = CV.MS_TO_KPH if getattr(starpilot_toggles, "is_metric", False) else CV.MS_TO_MPH
|
||||
is_metric = getattr(starpilot_toggles, "is_metric", False)
|
||||
ms_convert = CV.MS_TO_KPH if is_metric else CV.MS_TO_MPH
|
||||
speed_setpoint = int(round(CS.out.cruiseState.speed * ms_convert))
|
||||
desired_setpoint = int(round((v_ego * 1.01 + 3 * accel) * ms_convert))
|
||||
projected_setpoint = (v_ego * 1.01 + 3 * accel) * ms_convert
|
||||
desired_setpoint = int(round(projected_setpoint))
|
||||
bolt_cc = CS.CP.carFingerprint in BOLT_CC_BUTTON_CARS
|
||||
target_deadband = BOLT_CC_TARGET_DEADBAND_MPH * (CV.MPH_TO_KPH if is_metric else 1.0) if bolt_cc else 0.0
|
||||
comparison_setpoint = projected_setpoint if bolt_cc else desired_setpoint
|
||||
|
||||
if CS.CP.minEnableSpeed - (desired_setpoint / ms_convert) > 3.25:
|
||||
cruise_btn = CruiseButtons.CANCEL
|
||||
controller.apply_speed = 0
|
||||
elif desired_setpoint < speed_setpoint and speed_setpoint > CS.CP.minEnableSpeed * ms_convert + 1:
|
||||
elif comparison_setpoint < speed_setpoint - target_deadband and speed_setpoint > CS.CP.minEnableSpeed * ms_convert + 1:
|
||||
cruise_btn = CruiseButtons.DECEL_SET
|
||||
controller.apply_speed = speed_setpoint - 1
|
||||
elif desired_setpoint > speed_setpoint:
|
||||
elif comparison_setpoint > speed_setpoint + target_deadband:
|
||||
cruise_btn = CruiseButtons.RES_ACCEL
|
||||
|
||||
cruise_btn = stabilize_bolt_cc_button(controller, CS.CP, cruise_btn)
|
||||
if cruise_btn == CruiseButtons.CANCEL:
|
||||
controller.apply_speed = 0
|
||||
elif cruise_btn == CruiseButtons.DECEL_SET:
|
||||
controller.apply_speed = speed_setpoint - 1
|
||||
elif cruise_btn == CruiseButtons.RES_ACCEL:
|
||||
controller.apply_speed = speed_setpoint + 1
|
||||
else:
|
||||
cruise_btn = CruiseButtons.INIT
|
||||
controller.apply_speed = speed_setpoint
|
||||
|
||||
if CS.CP.carFingerprint == CAR.CADILLAC_XT4_CC:
|
||||
@@ -360,6 +407,9 @@ def create_gm_cc_spam_command(packer, controller, CS, actuators, starpilot_toggl
|
||||
# Or bus 2, since we're forwarding... but I think it does
|
||||
if (cruise_btn != CruiseButtons.INIT) and ((controller.frame - controller.last_button_frame) * DT_CTRL > rate):
|
||||
controller.last_button_frame = controller.frame
|
||||
if bolt_cc and cruise_btn in (CruiseButtons.RES_ACCEL, CruiseButtons.DECEL_SET):
|
||||
controller.gm_cc_last_direction_button = cruise_btn
|
||||
controller.gm_cc_last_direction_frame = controller.frame
|
||||
if CS.CP.carFingerprint == CAR.CHEVROLET_MALIBU_HYBRID_CC:
|
||||
phase_map = malibu_phase_map_for_button(cruise_btn)
|
||||
if phase_map:
|
||||
|
||||
@@ -589,6 +589,80 @@ class TestGMCarController:
|
||||
|
||||
assert [msg[2] for msg in msgs] == [0]
|
||||
|
||||
@parameterized.expand([
|
||||
CAR.CHEVROLET_BOLT_CC_2017,
|
||||
CAR.CHEVROLET_BOLT_CC_2018_2021,
|
||||
CAR.CHEVROLET_BOLT_CC_2022_2023,
|
||||
])
|
||||
def test_bolt_cc_redneck_ignores_small_setpoint_error(self, car_model):
|
||||
packer = CANPacker(DBC[car_model][Bus.pt])
|
||||
controller = SimpleNamespace(frame=int(2.0 / DT_CTRL), last_button_frame=0, apply_speed=0)
|
||||
cs = SimpleNamespace(
|
||||
CP=SimpleNamespace(
|
||||
carFingerprint=car_model,
|
||||
minEnableSpeed=24 * CV.MPH_TO_MS,
|
||||
),
|
||||
buttons_counter=2,
|
||||
out=SimpleNamespace(
|
||||
vEgo=(60.6 * CV.MPH_TO_MS) / 1.01,
|
||||
cruiseState=SimpleNamespace(speed=60 * CV.MPH_TO_MS),
|
||||
),
|
||||
)
|
||||
|
||||
msgs = gmcan.create_gm_cc_spam_command(packer, controller, cs, SimpleNamespace(accel=0.0), SimpleNamespace(is_metric=False))
|
||||
|
||||
assert msgs == []
|
||||
assert controller.apply_speed == 60
|
||||
|
||||
def test_non_bolt_cc_redneck_keeps_existing_setpoint_selector(self):
|
||||
packer = CANPacker(DBC[CAR.CHEVROLET_EQUINOX_CC][Bus.pt])
|
||||
controller = SimpleNamespace(frame=int(2.0 / DT_CTRL), last_button_frame=0, apply_speed=0)
|
||||
cs = SimpleNamespace(
|
||||
CP=SimpleNamespace(
|
||||
carFingerprint=CAR.CHEVROLET_EQUINOX_CC,
|
||||
flags=GMFlags.CC_LONG.value,
|
||||
minEnableSpeed=24 * CV.MPH_TO_MS,
|
||||
),
|
||||
buttons_counter=2,
|
||||
out=SimpleNamespace(
|
||||
vEgo=(60.6 * CV.MPH_TO_MS) / 1.01,
|
||||
cruiseState=SimpleNamespace(speed=60 * CV.MPH_TO_MS),
|
||||
),
|
||||
)
|
||||
|
||||
msgs = gmcan.create_gm_cc_spam_command(packer, controller, cs, SimpleNamespace(accel=0.0), SimpleNamespace(is_metric=False))
|
||||
|
||||
assert len(msgs) == 1
|
||||
assert controller.apply_speed == 61
|
||||
|
||||
def test_bolt_cc_redneck_requires_persistent_acceleration_after_deceleration(self):
|
||||
cp = SimpleNamespace(carFingerprint=CAR.CHEVROLET_BOLT_CC_2018_2021)
|
||||
controller = SimpleNamespace(
|
||||
frame=100,
|
||||
gm_cc_last_direction_button=CruiseButtons.DECEL_SET,
|
||||
gm_cc_last_direction_frame=100,
|
||||
gm_cc_pending_reverse_button=CruiseButtons.INIT,
|
||||
gm_cc_pending_reverse_frame=0,
|
||||
)
|
||||
|
||||
assert gmcan.stabilize_bolt_cc_button(controller, cp, CruiseButtons.RES_ACCEL) == CruiseButtons.INIT
|
||||
controller.frame += int(0.5 / DT_CTRL)
|
||||
assert gmcan.stabilize_bolt_cc_button(controller, cp, CruiseButtons.RES_ACCEL) == CruiseButtons.INIT
|
||||
controller.frame += int(0.11 / DT_CTRL)
|
||||
assert gmcan.stabilize_bolt_cc_button(controller, cp, CruiseButtons.RES_ACCEL) == CruiseButtons.RES_ACCEL
|
||||
|
||||
def test_bolt_cc_redneck_deceleration_is_not_debounced(self):
|
||||
cp = SimpleNamespace(carFingerprint=CAR.CHEVROLET_BOLT_CC_2018_2021)
|
||||
controller = SimpleNamespace(
|
||||
frame=100,
|
||||
gm_cc_last_direction_button=CruiseButtons.RES_ACCEL,
|
||||
gm_cc_last_direction_frame=100,
|
||||
gm_cc_pending_reverse_button=CruiseButtons.INIT,
|
||||
gm_cc_pending_reverse_frame=0,
|
||||
)
|
||||
|
||||
assert gmcan.stabilize_bolt_cc_button(controller, cp, CruiseButtons.DECEL_SET) == CruiseButtons.DECEL_SET
|
||||
|
||||
def test_xt4_cc_redneck_spam_matches_physical_button_burst(self):
|
||||
packer = CANPacker(DBC[CAR.CADILLAC_XT4_CC][Bus.pt])
|
||||
controller = SimpleNamespace(
|
||||
|
||||
@@ -69,7 +69,6 @@ class TestGMCan:
|
||||
assert bus == 0
|
||||
assert dat.hex() == "20000000000000"
|
||||
|
||||
|
||||
def test_gas_regen_command_matches_starpilot_volt_2019(self):
|
||||
packer = CANPacker(DBC[CAR.CHEVROLET_VOLT_2019]["pt"])
|
||||
addr, dat, bus = gmcan.create_gas_regen_command(packer, 0, 5000, 1, True, False, include_always_one3=True, use_volt_layout=True)
|
||||
|
||||
@@ -241,17 +241,17 @@ class CAR(Platforms):
|
||||
},
|
||||
)
|
||||
CHEVROLET_VOLT_ASCM = GMPlatformConfig(
|
||||
[GMCarDocs("Chevrolet Volt 2017-18 ASCM Harness", min_enable_speed=0, video="https://youtu.be/QeMCN_4TFfQ")],
|
||||
[GMCarDocs("Chevrolet Volt ASCM Harness 2017-18", min_enable_speed=0, video="https://youtu.be/QeMCN_4TFfQ")],
|
||||
CHEVROLET_VOLT.specs,
|
||||
dbc_dict=CHEVROLET_VOLT.dbc_dict,
|
||||
)
|
||||
CHEVROLET_VOLT_CAMERA = GMPlatformConfig(
|
||||
[GMCarDocs("Chevrolet Volt 2017-18 Camera Harness", "Flashed camera-forward integration with ACC")],
|
||||
[GMCarDocs("Chevrolet Volt Camera Harness 2017-18", "Flashed camera-forward integration with ACC")],
|
||||
CHEVROLET_VOLT.specs,
|
||||
dbc_dict=CHEVROLET_VOLT.dbc_dict,
|
||||
)
|
||||
CHEVROLET_VOLT_CC = GMPlatformConfig(
|
||||
[GMCarDocs("Chevrolet Volt 2017-18 - No-ACC", min_enable_speed=0)],
|
||||
[GMCarDocs("Chevrolet Volt No-ACC 2017-18", min_enable_speed=0)],
|
||||
CHEVROLET_VOLT.specs,
|
||||
dbc_dict=CHEVROLET_VOLT.dbc_dict,
|
||||
)
|
||||
@@ -264,7 +264,7 @@ class CAR(Platforms):
|
||||
GMCarSpecs(mass=1496, wheelbase=2.83, steerRatio=15.8, centerToFrontRatio=0.4),
|
||||
)
|
||||
CHEVROLET_MALIBU_ASCM = GMPlatformConfig(
|
||||
[GMCarDocs("Chevrolet Malibu 2017-19 ASCM Harness")],
|
||||
[GMCarDocs("Chevrolet Malibu ASCM Harness 2017-19")],
|
||||
CHEVROLET_MALIBU.specs,
|
||||
)
|
||||
GMC_ACADIA = GMASCMPlatformConfig(
|
||||
@@ -272,7 +272,7 @@ class CAR(Platforms):
|
||||
GMCarSpecs(mass=1975, wheelbase=2.86, steerRatio=14.4, centerToFrontRatio=0.4),
|
||||
)
|
||||
GMC_ACADIA_ASCM = GMPlatformConfig(
|
||||
[GMCarDocs("GMC Acadia 2018 ASCM Harness", video="https://www.youtube.com/watch?v=0ZN6DdsBUZo")],
|
||||
[GMCarDocs("GMC Acadia ASCM Harness 2018", video="https://www.youtube.com/watch?v=0ZN6DdsBUZo")],
|
||||
GMC_ACADIA.specs,
|
||||
)
|
||||
BUICK_LACROSSE = GMASCMPlatformConfig(
|
||||
@@ -280,11 +280,11 @@ class CAR(Platforms):
|
||||
GMCarSpecs(mass=1712, wheelbase=2.91, steerRatio=15.8, centerToFrontRatio=0.4),
|
||||
)
|
||||
BUICK_LACROSSE_ASCM = GMPlatformConfig(
|
||||
[GMCarDocs("Buick LaCrosse 2017-19 ASCM Harness")],
|
||||
[GMCarDocs("Buick LaCrosse ASCM Harness 2017-19")],
|
||||
BUICK_LACROSSE.specs,
|
||||
)
|
||||
BUICK_LACROSSE_ASCM_19US = GMPlatformConfig(
|
||||
[GMCarDocs("Buick LaCrosse 2019 US ASCM Harness")],
|
||||
[GMCarDocs("Buick LaCrosse US ASCM Harness 2019")],
|
||||
BUICK_LACROSSE.specs,
|
||||
)
|
||||
BUICK_REGAL = GMASCMPlatformConfig(
|
||||
@@ -296,7 +296,7 @@ class CAR(Platforms):
|
||||
GMCarSpecs(mass=2564, wheelbase=2.95, steerRatio=17.3),
|
||||
)
|
||||
CADILLAC_ESCALADE_ASCM = GMPlatformConfig(
|
||||
[GMCarDocs("Cadillac Escalade 2018 ASCM Harness", "Driver Assist Package")],
|
||||
[GMCarDocs("Cadillac Escalade ASCM Harness 2018", "Driver Assist Package")],
|
||||
CADILLAC_ESCALADE.specs,
|
||||
)
|
||||
CADILLAC_ESCALADE_ESV = GMASCMPlatformConfig(
|
||||
@@ -308,7 +308,7 @@ class CAR(Platforms):
|
||||
CADILLAC_ESCALADE_ESV.specs,
|
||||
)
|
||||
CADILLAC_ESCALADE_ESV_2019_ASCM = GMPlatformConfig(
|
||||
[GMCarDocs("Cadillac Escalade ESV Platinum 2019 ASCM Harness", "Adaptive Cruise Control (ACC) & LKAS")],
|
||||
[GMCarDocs("Cadillac Escalade ESV Platinum ASCM Harness 2019", "Adaptive Cruise Control (ACC) & LKAS")],
|
||||
CADILLAC_ESCALADE_ESV_2019.specs,
|
||||
)
|
||||
CHEVROLET_BOLT_ACC_2022_2023 = GMPlatformConfig(
|
||||
@@ -318,19 +318,19 @@ class CAR(Platforms):
|
||||
GMCarSpecs(mass=1669, wheelbase=2.63779, steerRatio=16.8, centerToFrontRatio=0.4, tireStiffnessFactor=1.0),
|
||||
)
|
||||
CHEVROLET_BOLT_ACC_2022_2023_PEDAL = GMPlatformConfig(
|
||||
[GMCarDocs("Chevrolet Bolt EV 2022-23 ACC w Pedal")],
|
||||
[GMCarDocs("Chevrolet Bolt EV ACC w Pedal 2022-23")],
|
||||
CHEVROLET_BOLT_ACC_2022_2023.specs,
|
||||
)
|
||||
CHEVROLET_BOLT_CC_2022_2023 = GMPlatformConfig(
|
||||
[GMCarDocs("Chevrolet Bolt EV 2022-23 - No-ACC")],
|
||||
[GMCarDocs("Chevrolet Bolt EV No-ACC 2022-23")],
|
||||
CHEVROLET_BOLT_ACC_2022_2023.specs,
|
||||
)
|
||||
CHEVROLET_BOLT_CC_2018_2021 = GMPlatformConfig(
|
||||
[GMCarDocs("Chevrolet Bolt EV 2018-21 - No-ACC")],
|
||||
[GMCarDocs("Chevrolet Bolt EV No-ACC 2018-21")],
|
||||
CHEVROLET_BOLT_ACC_2022_2023.specs,
|
||||
)
|
||||
CHEVROLET_BOLT_CC_2017 = GMPlatformConfig(
|
||||
[GMCarDocs("Chevrolet Bolt EV 2017 - No-ACC")],
|
||||
[GMCarDocs("Chevrolet Bolt EV No-ACC 2017")],
|
||||
CHEVROLET_BOLT_ACC_2022_2023.specs,
|
||||
)
|
||||
|
||||
@@ -343,8 +343,8 @@ class CAR(Platforms):
|
||||
)
|
||||
CHEVROLET_SILVERADO_CC = GMPlatformConfig(
|
||||
[
|
||||
GMCarDocs("Chevrolet Silverado 1500 - No-ACC"),
|
||||
GMCarDocs("GMC Sierra 1500 - No-ACC"),
|
||||
GMCarDocs("Chevrolet Silverado 1500 No-ACC 2020-21"),
|
||||
GMCarDocs("GMC Sierra 1500 No-ACC 2020-21"),
|
||||
],
|
||||
CHEVROLET_SILVERADO.specs,
|
||||
)
|
||||
@@ -361,7 +361,7 @@ class CAR(Platforms):
|
||||
CarSpecs(mass=2731, wheelbase=3.302, steerRatio=17.3, centerToFrontRatio=0.49),
|
||||
)
|
||||
GMC_YUKON_CC = GMPlatformConfig(
|
||||
[GMCarDocs("GMC Yukon - No-ACC")],
|
||||
[GMCarDocs("GMC Yukon No-ACC 2019-20")],
|
||||
CarSpecs(mass=2541, wheelbase=2.95, steerRatio=16.3, centerToFrontRatio=0.4),
|
||||
)
|
||||
GMC_YUKON = GMPlatformConfig(
|
||||
@@ -373,7 +373,7 @@ class CAR(Platforms):
|
||||
GMCarSpecs(mass=1660, wheelbase=2.78, steerRatio=14.4, centerToFrontRatio=0.4),
|
||||
)
|
||||
CADILLAC_XT4_CC = GMPlatformConfig(
|
||||
[GMCarDocs("Cadillac XT4 - No-ACC")],
|
||||
[GMCarDocs("Cadillac XT4 No-ACC 2023")],
|
||||
CADILLAC_XT4.specs,
|
||||
)
|
||||
CADILLAC_XT5 = GMSDGMPlatformConfig(
|
||||
@@ -405,31 +405,31 @@ class CAR(Platforms):
|
||||
CarSpecs(mass=2050, wheelbase=2.86, steerRatio=16.0, centerToFrontRatio=0.5),
|
||||
)
|
||||
CADILLAC_CT6_CC = GMPlatformConfig(
|
||||
[GMCarDocs("Cadillac CT6 - No-ACC")],
|
||||
[GMCarDocs("Cadillac CT6 No-ACC 2016-20")],
|
||||
CarSpecs(mass=2358, wheelbase=3.11, steerRatio=17.7, centerToFrontRatio=0.4),
|
||||
)
|
||||
CADILLAC_XT5_CC = GMPlatformConfig(
|
||||
[GMCarDocs("Cadillac XT5 - No-ACC")],
|
||||
[GMCarDocs("Cadillac XT5 No-ACC 2022")],
|
||||
CADILLAC_XT5.specs,
|
||||
)
|
||||
CHEVROLET_EQUINOX_CC = GMPlatformConfig(
|
||||
[GMCarDocs("Chevrolet Equinox 2019-22 - No-ACC")],
|
||||
[GMCarDocs("Chevrolet Equinox No-ACC 2019-22")],
|
||||
CHEVROLET_EQUINOX.specs,
|
||||
)
|
||||
CHEVROLET_MALIBU_CC = GMPlatformConfig(
|
||||
[GMCarDocs("Chevrolet Malibu 2023 - No-ACC")],
|
||||
[GMCarDocs("Chevrolet Malibu No-ACC 2023")],
|
||||
CarSpecs(mass=1450, wheelbase=2.8, steerRatio=18.25, centerToFrontRatio=0.4, tireStiffnessFactor=0.997),
|
||||
)
|
||||
CHEVROLET_MALIBU_HYBRID_CC = GMPlatformConfig(
|
||||
[GMCarDocs("Chevrolet Malibu Hybrid 2017 - No-ACC")],
|
||||
[GMCarDocs("Chevrolet Malibu Hybrid No-ACC 2017")],
|
||||
CarSpecs(mass=1450, wheelbase=2.8, steerRatio=15.8, centerToFrontRatio=0.4),
|
||||
)
|
||||
CHEVROLET_SUBURBAN_CC = GMPlatformConfig(
|
||||
[GMCarDocs("Chevrolet Suburban Premier 2016-20 - No-ACC")],
|
||||
[GMCarDocs("Chevrolet Suburban Premier No-ACC 2016-20")],
|
||||
CHEVROLET_SUBURBAN.specs,
|
||||
)
|
||||
CHEVROLET_TRAILBLAZER_CC = GMPlatformConfig(
|
||||
[GMCarDocs("Chevrolet Trailblazer 2021-22 - No-ACC")],
|
||||
[GMCarDocs("Chevrolet Trailblazer No-ACC 2021-22")],
|
||||
CHEVROLET_TRAILBLAZER.specs,
|
||||
)
|
||||
CHEVROLET_TRAX = GMPlatformConfig(
|
||||
|
||||
@@ -201,17 +201,18 @@ class CarState(CarStateBase):
|
||||
if self.CP.flags & HondaFlags.BOSCH_ALT_BRAKE:
|
||||
ret.brakePressed = cp.vl["BRAKE_MODULE"]["BRAKE_PRESSED"] != 0
|
||||
else:
|
||||
powertrain_data = cp.vl["POWERTRAIN_DATA"]
|
||||
# brake switch has shown some single time step noise, so only considered when
|
||||
# switch is on for at least 2 consecutive CAN samples
|
||||
# brake switch rises earlier than brake pressed but is never 1 when in park
|
||||
brake_switch_vals = cp.vl_all["POWERTRAIN_DATA"]["BRAKE_SWITCH"]
|
||||
if len(brake_switch_vals):
|
||||
brake_switch = cp.vl["POWERTRAIN_DATA"]["BRAKE_SWITCH"] != 0
|
||||
brake_switch = powertrain_data["BRAKE_SWITCH"] != 0
|
||||
if len(brake_switch_vals) > 1:
|
||||
self.brake_switch_prev = brake_switch_vals[-2] != 0
|
||||
self.brake_switch_active = brake_switch and self.brake_switch_prev
|
||||
self.brake_switch_prev = brake_switch
|
||||
ret.brakePressed = (cp.vl["POWERTRAIN_DATA"]["BRAKE_PRESSED"] != 0) or self.brake_switch_active
|
||||
ret.brakePressed = (powertrain_data["BRAKE_PRESSED"] != 0) or self.brake_switch_active
|
||||
|
||||
ret.brake = cp.vl["VSA_STATUS"]["USER_BRAKE"]
|
||||
ret.cruiseState.enabled = cp.vl["POWERTRAIN_DATA"]["ACC_STATUS"] != 0
|
||||
@@ -269,8 +270,14 @@ class CarState(CarStateBase):
|
||||
return ret, fp_ret
|
||||
|
||||
def get_can_parsers(self, CP):
|
||||
pt_messages = [("GAS_SENSOR", 0)] if CP.enableGasInterceptorDEPRECATED else []
|
||||
pt_parser = CANParser(DBC[CP.carFingerprint][Bus.pt], pt_messages, CanBus(CP).pt)
|
||||
if CP.enableGasInterceptorDEPRECATED:
|
||||
pt_parser.message_states[0x201].ignore_checksum = True
|
||||
pt_parser.message_states[0x201].ignore_counter = True
|
||||
|
||||
parsers = {
|
||||
Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CanBus(CP).pt),
|
||||
Bus.pt: pt_parser,
|
||||
Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CanBus(CP).camera),
|
||||
}
|
||||
if CP.enableBsm:
|
||||
|
||||
@@ -257,7 +257,6 @@ FW_VERSIONS = {
|
||||
(Ecu.eps, 0x18da30f1, None): [
|
||||
b'39990-TBA-C120\x00\x00',
|
||||
b'39990-TBA-C020\x00\x00',
|
||||
b'39990-TBA-C120\x00\x00',
|
||||
b'39990-TEA-T330\x00\x00',
|
||||
b'39990-TEA-T820\x00\x00',
|
||||
b'39990-TEZ-T020\x00\x00',
|
||||
|
||||
@@ -213,9 +213,6 @@ class CarInterfaceBase(ABC):
|
||||
|
||||
if platform not in MOCK:
|
||||
if platform in CHRYSLER:
|
||||
if candidate == CHRYSLER.RAM_HD_5TH_GEN:
|
||||
if 570 not in fingerprint[0]:
|
||||
fp_ret.flags |= ChryslerStarPilotFlags.RAM_HD_ALT_BUTTONS.value
|
||||
if 0x4FF in fingerprint[0]:
|
||||
fp_ret.flags |= ChryslerStarPilotFlags.NO_MIN_STEERING_SPEED.value
|
||||
CP.minSteerSpeed = 0.
|
||||
@@ -251,6 +248,9 @@ class CarInterfaceBase(ABC):
|
||||
if hyundai_has_lda_button:
|
||||
fp_ret.safetyConfigs[-1].safetyParam |= HyundaiStarPilotSafetyFlags.HAS_LDA_BUTTON.value
|
||||
|
||||
if getattr(starpilot_toggles, "always_on_lateral_lkas", False):
|
||||
fp_ret.safetyConfigs[-1].safetyParam |= HyundaiStarPilotSafetyFlags.AOL_LKAS_ON_ENGAGE.value
|
||||
|
||||
# LKASButtonControl == 9 means BUTTON_FUNCTIONS["AOL_TOGGLE"] in starpilot_variables.
|
||||
if params.get_bool("AlwaysOnLateral") and params.get_int("LKASButtonControl") == 9:
|
||||
fp_ret.safetyConfigs[-1].safetyParam |= HyundaiStarPilotSafetyFlags.AOL_LKAS_ON_ENGAGE.value
|
||||
|
||||
@@ -66,7 +66,7 @@ class CAR(Platforms):
|
||||
)
|
||||
# Leaf with ADAS ECU found behind instrument cluster instead of glovebox
|
||||
# Currently the only known difference between them is the inverted seatbelt signal.
|
||||
NISSAN_LEAF_IC = NISSAN_LEAF.override(car_docs=[NissanCarDocs(NISSAN_LEAF.car_docs[0].name + " - Instrument Cluster", video=NISSAN_LEAF.car_docs[0].video)])
|
||||
NISSAN_LEAF_IC = NISSAN_LEAF.override(car_docs=[NissanCarDocs("Nissan Leaf Instrument Cluster 2018-23", video=NISSAN_LEAF.car_docs[0].video)])
|
||||
NISSAN_ROGUE = NissanPlatformConfig(
|
||||
[NissanCarDocs("Nissan Rogue 2018-20")],
|
||||
NissanCarSpecs(mass=1610, wheelbase=2.705)
|
||||
|
||||
@@ -95,7 +95,7 @@ def update_preap(cs, can_parsers):
|
||||
if dtr_dist != 255:
|
||||
stalk_follow = min((dtr_dist // 33) + 1, 7)
|
||||
if stalk_follow != cs.prev_stalk_follow:
|
||||
_nap_params.put(NAPParamKeys.FOLLOW_DISTANCE, str(stalk_follow))
|
||||
_nap_params.put_int(NAPParamKeys.FOLLOW_DISTANCE, stalk_follow)
|
||||
cs.prev_stalk_follow = stalk_follow
|
||||
|
||||
curr_time_ms = _current_time_millis()
|
||||
|
||||
@@ -3,7 +3,7 @@ from enum import Enum, IntFlag
|
||||
from opendbc.car import ACCELERATION_DUE_TO_GRAVITY, Bus, CarSpecs, DbcDict, PlatformConfig, Platforms
|
||||
from opendbc.car.lateral import AngleSteeringLimits, ISO_LATERAL_ACCEL
|
||||
from opendbc.car.structs import CarParams, CarState
|
||||
from opendbc.car.docs_definitions import CarDocs, CarFootnote, CarHarness, CarParts, Column
|
||||
from opendbc.car.docs_definitions import CarDocs, CarFootnote, CarHarness, CarParts, Column, SupportType
|
||||
from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries
|
||||
|
||||
Ecu = CarParams.Ecu
|
||||
@@ -61,7 +61,7 @@ class CAR(Platforms):
|
||||
CarSpecs(mass=2495., wheelbase=2.960, steerRatio=12.0),
|
||||
)
|
||||
TESLA_MODEL_S_PREAP = TeslaPlatformConfig(
|
||||
[CarDocs("Tesla Model S (Pre-AP) 2012-14", "All")],
|
||||
[CarDocs("Tesla Model S (Pre-AP) 2012-14", "All", support_type=SupportType.COMMUNITY, support_link="#community")],
|
||||
CarSpecs(mass=2100., wheelbase=2.960, steerRatio=15.0),
|
||||
{
|
||||
Bus.party: 'tesla_can',
|
||||
|
||||
@@ -26,7 +26,35 @@ non_tested_cars = [
|
||||
GM.CADILLAC_XT5,
|
||||
GM.HOLDEN_ASTRA,
|
||||
GM.CHEVROLET_MALIBU,
|
||||
GM.BUICK_BABYENCLAVE,
|
||||
GM.BUICK_LACROSSE_ASCM,
|
||||
GM.BUICK_LACROSSE_ASCM_19US,
|
||||
GM.CADILLAC_XT6,
|
||||
GM.CHEVROLET_BLAZER,
|
||||
GM.CHEVROLET_MALIBU_ASCM,
|
||||
GM.CHEVROLET_MALIBU_SDGM,
|
||||
GM.CHEVROLET_SUBURBAN,
|
||||
GM.CHEVROLET_TRAX,
|
||||
GM.CHEVROLET_VOLT_ASCM,
|
||||
GM.CHEVROLET_VOLT_CAMERA,
|
||||
GM.GMC_ACADIA_ASCM,
|
||||
FORD.FORD_TRANSIT_MK5,
|
||||
HONDA.ACURA_ADX,
|
||||
HONDA.ACURA_INTEGRA,
|
||||
HONDA.ACURA_MDX_3G,
|
||||
HONDA.ACURA_MDX_3G_MMR,
|
||||
HONDA.ACURA_MDX_4G,
|
||||
HONDA.ACURA_RDX_3G_MMR,
|
||||
HONDA.ACURA_TLX_1G,
|
||||
HONDA.ACURA_TLX_2G_MMR,
|
||||
HONDA.HONDA_ACCORD_9G,
|
||||
HONDA.HONDA_CLARITY,
|
||||
HONDA.HONDA_CRV_SA,
|
||||
HONDA.HONDA_E_ADVANCE,
|
||||
HONDA.HONDA_FIT_4G,
|
||||
HONDA.HONDA_ODYSSEY_TWN,
|
||||
HYUNDAI.GENESIS_G90,
|
||||
HYUNDAI.GENESIS_G70_2021_NON_SCC,
|
||||
HYUNDAI.GENESIS_GV70_ELECTRIFIED_2ND_GEN,
|
||||
HYUNDAI.GENESIS_GV80_2025,
|
||||
HYUNDAI.HYUNDAI_AZERA_HEV_7TH_GEN,
|
||||
@@ -37,11 +65,28 @@ non_tested_cars = [
|
||||
HYUNDAI.KIA_EV6_2025,
|
||||
HYUNDAI.KIA_EV9,
|
||||
HYUNDAI.KIA_CARNIVAL_2025,
|
||||
HYUNDAI.KIA_CARNIVAL_HEV_4TH_GEN,
|
||||
HYUNDAI.KIA_SPORTAGE_2026,
|
||||
HYUNDAI.KIA_SORENTO_2024,
|
||||
HYUNDAI.KIA_SORENTO_HEV_4TH_GEN_LFA2,
|
||||
HYUNDAI.HYUNDAI_BAYON_1ST_GEN_NON_SCC,
|
||||
HYUNDAI.HYUNDAI_ELANTRA_2022_NON_SCC,
|
||||
HYUNDAI.HYUNDAI_ELANTRA_HEV_2022_NON_SCC,
|
||||
HYUNDAI.HYUNDAI_ELANTRA_HEV_2024,
|
||||
HYUNDAI.HYUNDAI_KONA_EV_NON_SCC,
|
||||
HYUNDAI.HYUNDAI_KONA_NON_SCC,
|
||||
HYUNDAI.HYUNDAI_PALISADE_2023,
|
||||
HYUNDAI.KIA_CEED_PHEV_2022_NON_SCC,
|
||||
HYUNDAI.KIA_FORTE_2019_NON_SCC,
|
||||
HYUNDAI.KIA_FORTE_2021_NON_SCC,
|
||||
HYUNDAI.KIA_SELTOS_2023_NON_SCC,
|
||||
HYUNDAI.KIA_SPORTAGE_HEV_2026,
|
||||
HYUNDAI.KIA_XCEED_PHEV,
|
||||
TESLA.TESLA_MODEL_S_PREAP,
|
||||
TOYOTA.TOYOTA_MATRIX_RETROFIT,
|
||||
VOLKSWAGEN.VOLKSWAGEN_CRAFTER_MK2, # need a route from an ACC-equipped Crafter
|
||||
SUBARU.SUBARU_FORESTER_HYBRID,
|
||||
SUBARU.SUBARU_CROSSTREK_2025,
|
||||
VOLKSWAGEN.PORSCHE_MACAN_MK1,
|
||||
# Honda/Acura test routes below expired, replace when CI bucket sync is fixed
|
||||
HONDA.ACURA_TLX_2G,
|
||||
@@ -165,9 +210,7 @@ routes = [
|
||||
CarTestRoute("656ac0d830792fcc/2021-12-28--14-45-56", HYUNDAI.HYUNDAI_SANTA_FE_PHEV_2022, segment=1),
|
||||
CarTestRoute("de59124955b921d8/2023-06-24--00-12-50", HYUNDAI.KIA_CARNIVAL_4TH_GEN),
|
||||
CarTestRoute("409c9409979a8abc/2023-07-11--09-06-44", HYUNDAI.KIA_CARNIVAL_4TH_GEN), # Chinese model
|
||||
CarTestRoute("6c0069dcd5bbb6c1/00000020--6b95507969", HYUNDAI.KIA_CARNIVAL_HEV_4TH_GEN), # HDA II
|
||||
CarTestRoute("e0e98335f3ebc58f/2021-03-07--16-38-29", HYUNDAI.KIA_CEED),
|
||||
CarTestRoute("22703002ddbe2a08/0000000e--083b76c42c", HYUNDAI.KIA_XCEED_PHEV, segment=0),
|
||||
CarTestRoute("7653b2bce7bcfdaa/2020-03-04--15-34-32", HYUNDAI.KIA_OPTIMA_G4),
|
||||
CarTestRoute("018654717bc93d7d/2022-09-19--23-11-10", HYUNDAI.KIA_OPTIMA_G4_FL, segment=0),
|
||||
CarTestRoute("f9716670b2481438/2023-08-23--14-49-50", HYUNDAI.KIA_OPTIMA_H),
|
||||
@@ -230,13 +273,11 @@ routes = [
|
||||
CarTestRoute("192283cdbb7a58c2/2022-10-15--01-43-18", HYUNDAI.KIA_SPORTAGE_5TH_GEN),
|
||||
CarTestRoute("09559f1fcaed4704/2023-11-16--02-24-57", HYUNDAI.KIA_SPORTAGE_5TH_GEN, segment=0), # openpilot longitudinal
|
||||
CarTestRoute("b3537035ffe6a7d6/2022-10-17--15-23-49", HYUNDAI.KIA_SPORTAGE_5TH_GEN), # hybrid
|
||||
CarTestRoute("e53ff841a41f6f0f/00000000--2f6b9e72d5", HYUNDAI.KIA_SPORTAGE_HEV_2026),
|
||||
CarTestRoute("c5ac319aa9583f83/2021-06-01--18-18-31", HYUNDAI.HYUNDAI_ELANTRA),
|
||||
CarTestRoute("734ef96182ddf940/2022-10-02--16-41-44", HYUNDAI.HYUNDAI_ELANTRA_GT_I30),
|
||||
CarTestRoute("82e9cdd3f43bf83e/2021-05-15--02-42-51", HYUNDAI.HYUNDAI_ELANTRA_2021),
|
||||
CarTestRoute("c2fd040a5e34f3ad/00000013--9211a52a3d", HYUNDAI.HYUNDAI_ELANTRA_2024),
|
||||
CarTestRoute("715ac05b594e9c59/2021-06-20--16-21-07", HYUNDAI.HYUNDAI_ELANTRA_HEV_2021),
|
||||
CarTestRoute("65ef8b49f9b0dd24/00000141--5c8720a01c", HYUNDAI.HYUNDAI_ELANTRA_HEV_2024),
|
||||
CarTestRoute("07a48901db7b2503/000001a1--ad07872c4f", HYUNDAI.HYUNDAI_ELANTRA_HEV_2024),
|
||||
CarTestRoute("07a48901db7b2503/0000000f--697d5906e8", HYUNDAI.HYUNDAI_ELANTRA_HEV_2024), # Hyundai i30 Hybrid 2024
|
||||
CarTestRoute("7120aa90bbc3add7/2021-08-02--07-12-31", HYUNDAI.HYUNDAI_SONATA_HYBRID),
|
||||
@@ -343,7 +384,6 @@ routes = [
|
||||
CarTestRoute("1bbe6bf2d62f58a8/2022-07-14--17-11-43", SUBARU.SUBARU_OUTBACK, segment=10),
|
||||
CarTestRoute("c56e69bbc74b8fad/2022-08-18--09-43-51", SUBARU.SUBARU_LEGACY, segment=3),
|
||||
CarTestRoute("f4e3a0c511a076f4/2022-08-04--16-16-48", SUBARU.SUBARU_CROSSTREK_HYBRID, segment=2),
|
||||
CarTestRoute("f73c01590368ee5b/00000017--117e1dd96d", SUBARU.SUBARU_CROSSTREK_2025),
|
||||
CarTestRoute("7fd1e4f3a33c1673/2022-12-04--15-09-53", SUBARU.SUBARU_FORESTER_2022, segment=4),
|
||||
CarTestRoute("f3b34c0d2632aa83/2023-07-23--20-43-25", SUBARU.SUBARU_OUTBACK_2023, segment=7),
|
||||
CarTestRoute("99437cef6d5ff2ee/2023-03-13--21-21-38", SUBARU.SUBARU_ASCENT_2023, segment=7),
|
||||
|
||||
@@ -5,6 +5,7 @@ from opendbc.car.can_definitions import CanData
|
||||
from opendbc.car.car_helpers import FRAME_FINGERPRINT, _apply_starpilot_access_policy, _get_gm_stored_candidate_fallback, can_fingerprint
|
||||
from opendbc.car.fingerprints import _FINGERPRINTS as FINGERPRINTS
|
||||
from opendbc.car.gm.values import CAR as GM
|
||||
from opendbc.car.toyota.values import CAR as TOYOTA
|
||||
|
||||
|
||||
class TestCanFingerprint:
|
||||
@@ -13,7 +14,7 @@ class TestCanFingerprint:
|
||||
can = [CanData(address=address, dat=b'\x00' * length, src=src)
|
||||
for address, length in fingerprint.items() for src in (0, 1)]
|
||||
fingerprint_iter = iter([can])
|
||||
return can_fingerprint(lambda **kwargs: [next(fingerprint_iter, [])]) # noqa: B023
|
||||
return can_fingerprint(lambda **kwargs: [next(fingerprint_iter, [])])
|
||||
|
||||
@pytest.mark.parametrize("car_model, fingerprints", FINGERPRINTS.items())
|
||||
def test_can_fingerprint(self, car_model, fingerprints):
|
||||
@@ -26,7 +27,10 @@ class TestCanFingerprint:
|
||||
fingerprint_iter = iter([can])
|
||||
car_fingerprint, finger = can_fingerprint(lambda **kwargs: [next(fingerprint_iter, [])]) # noqa: B023
|
||||
|
||||
if car_fingerprint is None and str(car_model).startswith(("BUICK_", "CADILLAC_", "CHEVROLET_", "GMC_", "HOLDEN_")):
|
||||
if car_model == TOYOTA.TOYOTA_MATRIX_RETROFIT:
|
||||
assert fingerprint == {}
|
||||
assert car_fingerprint is None
|
||||
elif car_fingerprint is None and str(car_model).startswith(("BUICK_", "CADILLAC_", "CHEVROLET_", "GMC_", "HOLDEN_")):
|
||||
assert _get_gm_stored_candidate_fallback(finger, str(car_model), None) is not None
|
||||
else:
|
||||
assert car_fingerprint == car_model
|
||||
|
||||
@@ -15,11 +15,16 @@ CarFw = CarParams.CarFw
|
||||
Ecu = CarParams.Ecu
|
||||
|
||||
ECU_NAME = {v: k for k, v in Ecu.schema.enumerants.items()}
|
||||
FORTE_FW_AMBIGUITY = {"KIA_FORTE", "KIA_FORTE_2019_NON_SCC", "KIA_FORTE_2021_NON_SCC"}
|
||||
|
||||
|
||||
class TestFwFingerprint:
|
||||
def assertFingerprints(self, candidates, expected):
|
||||
candidates = list(candidates)
|
||||
if str(expected) in FORTE_FW_AMBIGUITY:
|
||||
assert candidates
|
||||
assert set(map(str, candidates)) <= FORTE_FW_AMBIGUITY
|
||||
return
|
||||
assert len(candidates) == 1, f"got more than one candidate: {candidates}"
|
||||
assert candidates[0] == expected
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ legend = ["LAT_ACCEL_FACTOR", "MAX_LAT_ACCEL_MEASURED", "FRICTION"]
|
||||
|
||||
"TOYOTA_ALPHARD_TSS2" = "TOYOTA_SIENNA"
|
||||
"TOYOTA_PRIUS_V" = "TOYOTA_PRIUS"
|
||||
"TOYOTA_SIENNA_4TH_GEN" = "TOYOTA_RAV4_TSS2"
|
||||
"TOYOTA_SIENNA_4TH_GEN" = "TOYOTA_RAV4_PRIME"
|
||||
"LEXUS_IS" = "LEXUS_NX"
|
||||
"LEXUS_CTH" = "LEXUS_NX"
|
||||
"LEXUS_ES" = "TOYOTA_CAMRY"
|
||||
@@ -62,8 +62,21 @@ legend = ["LAT_ACCEL_FACTOR", "MAX_LAT_ACCEL_MEASURED", "FRICTION"]
|
||||
"HONDA_FREED" = "HONDA_ODYSSEY"
|
||||
"HONDA_CLARITY" = "HONDA_ACCORD"
|
||||
"HONDA_CRV_EU" = "HONDA_CRV"
|
||||
"HONDA_CRV_SA" = "HONDA_CRV"
|
||||
"HONDA_CIVIC_BOSCH_DIESEL" = "HONDA_CIVIC_BOSCH"
|
||||
"HONDA_E" = "HONDA_CIVIC_BOSCH"
|
||||
"HONDA_E_ADVANCE" = "HONDA_E"
|
||||
"HONDA_ODYSSEY_TWN" = "HONDA_ODYSSEY"
|
||||
"HONDA_ACCORD_9G" = "HONDA_ACCORD"
|
||||
"HONDA_FIT_4G" = "HONDA_FIT"
|
||||
"ACURA_RDX_3G_MMR" = "ACURA_RDX_3G"
|
||||
"ACURA_MDX_3G" = "HONDA_PILOT"
|
||||
"ACURA_MDX_3G_MMR" = "HONDA_PILOT"
|
||||
"ACURA_MDX_4G" = "HONDA_PILOT_4G"
|
||||
"ACURA_TLX_1G" = "HONDA_ACCORD"
|
||||
"ACURA_TLX_2G_MMR" = "ACURA_TLX_2G"
|
||||
"ACURA_INTEGRA" = "HONDA_CIVIC_2022"
|
||||
"ACURA_ADX" = "HONDA_HRV_3G"
|
||||
|
||||
"BUICK_LACROSSE" = "CHEVROLET_VOLT"
|
||||
"BUICK_LACROSSE_ASCM" = "CHEVROLET_VOLT"
|
||||
@@ -121,5 +134,6 @@ legend = ["LAT_ACCEL_FACTOR", "MAX_LAT_ACCEL_MEASURED", "FRICTION"]
|
||||
"CHEVROLET_TRAILBLAZER_CC" = "CHEVROLET_TRAILBLAZER"
|
||||
"CHEVROLET_SILVERADO_CC" = "CHEVROLET_SILVERADO"
|
||||
"CADILLAC_XT4_CC" = "CADILLAC_XT4"
|
||||
"CADILLAC_XT6" = "GMC_ACADIA"
|
||||
|
||||
"CHEVROLET_TRAX" = "CHEVROLET_VOLT"
|
||||
|
||||
@@ -1320,12 +1320,6 @@ FW_VERSIONS = {
|
||||
b'\x018965B4509100\x00\x00\x00\x00',
|
||||
b'\x018965B4514000\x00\x00\x00\x00',
|
||||
],
|
||||
(Ecu.hybrid, 0x7d2, None): [
|
||||
b'\x02899830812000\x00\x00\x00\x00899850813000\x00\x00\x00\x00',
|
||||
],
|
||||
(Ecu.srs, 0x780, None): [
|
||||
b'\x028917F0815200\x00\x00\x00\x008917H0801200\x00\x00\x00\x00',
|
||||
],
|
||||
(Ecu.fwdRadar, 0x750, 0xf): [
|
||||
b'\x018821F3301500\x00\x00\x00\x00',
|
||||
],
|
||||
|
||||
@@ -98,7 +98,7 @@ class CarInterface(CarInterfaceBase):
|
||||
# https://engage.toyota.com/static/images/toyota_safety_sense/TSS_Applicability_Chart.pdf
|
||||
stop_and_go = candidate != CAR.TOYOTA_AVALON
|
||||
|
||||
elif candidate in (CAR.TOYOTA_RAV4_TSS2, CAR.TOYOTA_RAV4_TSS2_2022, CAR.TOYOTA_RAV4_TSS2_2023, CAR.TOYOTA_RAV4_PRIME, CAR.TOYOTA_SIENNA_4TH_GEN):
|
||||
elif candidate in (CAR.TOYOTA_RAV4_TSS2, CAR.TOYOTA_RAV4_TSS2_2022, CAR.TOYOTA_RAV4_TSS2_2023, CAR.TOYOTA_RAV4_PRIME):
|
||||
ret.lateralTuning.init('pid')
|
||||
ret.lateralTuning.pid.kiBP = [0.0]
|
||||
ret.lateralTuning.pid.kpBP = [0.0]
|
||||
|
||||
@@ -57,6 +57,21 @@ class TestToyotaInterfaces:
|
||||
assert forced_params.lateralTuning.torque.latAccelFactor == pytest.approx(1.7)
|
||||
assert forced_params.lateralTuning.torque.friction == pytest.approx(0.14)
|
||||
|
||||
def test_sienna_4th_gen_uses_torque_controller(self):
|
||||
params = CarInterface.get_params(
|
||||
CAR.TOYOTA_SIENNA_4TH_GEN,
|
||||
{bus: {} for bus in range(8)},
|
||||
[],
|
||||
alpha_long=False,
|
||||
is_release=False,
|
||||
docs=False,
|
||||
starpilot_toggles=SimpleNamespace(force_torque_controller=False, nnff=False, nnff_lite=False),
|
||||
)
|
||||
|
||||
assert params.lateralTuning.which() == "torque"
|
||||
assert params.lateralTuning.torque.latAccelFactor == pytest.approx(1.7)
|
||||
assert params.lateralTuning.torque.friction == pytest.approx(0.14)
|
||||
|
||||
def test_tss2_dbc(self):
|
||||
# We make some assumptions about TSS2 platforms,
|
||||
# like looking up certain signals only in this DBC
|
||||
|
||||
@@ -207,7 +207,7 @@ class CAR(Platforms):
|
||||
dbc_dict('toyota_new_mc_pt_generated', 'toyota_adas'),
|
||||
)
|
||||
TOYOTA_MATRIX_RETROFIT = PlatformConfig(
|
||||
[ToyotaCommunityCarDocs("Toyota Matrix 2005 Retrofit", package="Custom retrofit")],
|
||||
[ToyotaCommunityCarDocs("Toyota Matrix Retrofit 2005", package="Custom retrofit")],
|
||||
TOYOTA_COROLLA.specs,
|
||||
dbc_dict('toyota_new_mc_pt_generated', 'toyota_adas'),
|
||||
)
|
||||
|
||||
@@ -290,7 +290,7 @@ class CarState(CarStateBase):
|
||||
ret.standstill = ret.vEgoRaw == 0
|
||||
|
||||
self.frame += 1
|
||||
return ret
|
||||
return ret, custom.StarPilotCarState.new_message()
|
||||
|
||||
def update_low_speed_alert(self, v_ego: float) -> bool:
|
||||
# Low speed steer alert hysteresis logic
|
||||
|
||||
@@ -1,6 +1,24 @@
|
||||
CM_ "AUTOGENERATED FILE, DO NOT EDIT";
|
||||
|
||||
|
||||
CM_ "Imported file _community.dbc starts here";
|
||||
BO_ 512 GAS_COMMAND: 6 EON
|
||||
SG_ GAS_COMMAND : 7|16@0+ (0.253984064,-83.3) [0|1] "" INTERCEPTOR
|
||||
SG_ GAS_COMMAND2 : 23|16@0+ (0.126992032,-83.3) [0|1] "" INTERCEPTOR
|
||||
SG_ ENABLE : 39|1@0+ (1,0) [0|1] "" INTERCEPTOR
|
||||
SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" INTERCEPTOR
|
||||
SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" INTERCEPTOR
|
||||
|
||||
BO_ 513 GAS_SENSOR: 6 INTERCEPTOR
|
||||
SG_ INTERCEPTOR_GAS : 7|16@0+ (1,0) [0|1] "" EON
|
||||
SG_ INTERCEPTOR_GAS2 : 23|16@0+ (1,0) [0|1] "" EON
|
||||
SG_ STATE : 39|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" EON
|
||||
|
||||
VAL_ 513 STATE 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ;
|
||||
|
||||
|
||||
CM_ "Imported file _honda_common.dbc starts here";
|
||||
BO_ 145 KINEMATICS_ALT: 8 XXX
|
||||
SG_ LAT_ACCEL : 7|10@0+ (0.02,-512) [-20|20] "m/s2" EON
|
||||
|
||||
@@ -0,0 +1,440 @@
|
||||
CM_ "AUTOGENERATED FILE, DO NOT EDIT";
|
||||
|
||||
|
||||
CM_ "Imported file _community.dbc starts here";
|
||||
BO_ 512 GAS_COMMAND: 6 EON
|
||||
SG_ GAS_COMMAND : 7|16@0+ (0.253984064,-83.3) [0|1] "" INTERCEPTOR
|
||||
SG_ GAS_COMMAND2 : 23|16@0+ (0.126992032,-83.3) [0|1] "" INTERCEPTOR
|
||||
SG_ ENABLE : 39|1@0+ (1,0) [0|1] "" INTERCEPTOR
|
||||
SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" INTERCEPTOR
|
||||
SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" INTERCEPTOR
|
||||
|
||||
BO_ 513 GAS_SENSOR: 6 INTERCEPTOR
|
||||
SG_ INTERCEPTOR_GAS : 7|16@0+ (1,0) [0|1] "" EON
|
||||
SG_ INTERCEPTOR_GAS2 : 23|16@0+ (1,0) [0|1] "" EON
|
||||
SG_ STATE : 39|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" EON
|
||||
|
||||
VAL_ 513 STATE 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ;
|
||||
|
||||
|
||||
CM_ "Imported file _honda_common.dbc starts here";
|
||||
BO_ 145 KINEMATICS_ALT: 8 XXX
|
||||
SG_ LAT_ACCEL : 7|10@0+ (0.02,-512) [-20|20] "m/s2" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 148 KINEMATICS: 8 XXX
|
||||
SG_ LAT_ACCEL : 7|10@0+ (0.02,-512) [-20|20] "m/s2" EON
|
||||
SG_ LONG_ACCEL : 24|9@0- (-0.02,0) [-20|20] "m/s2" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 304 GAS_PEDAL_2: 8 PCM
|
||||
SG_ ENGINE_TORQUE_ESTIMATE : 7|16@0- (1,0) [-1000|1000] "Nm" EON
|
||||
SG_ ENGINE_TORQUE_REQUEST : 23|16@0- (1,0) [-1000|1000] "Nm" EON
|
||||
SG_ CAR_GAS : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 316 GAS_PEDAL: 8 PCM
|
||||
SG_ CAR_GAS : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 344 ENGINE_DATA: 8 PCM
|
||||
SG_ XMISSION_SPEED : 7|16@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ ENGINE_RPM : 23|16@0+ (1,0) [0|15000] "rpm" EON
|
||||
SG_ XMISSION_SPEED2 : 39|16@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ ODOMETER : 55|8@0+ (10,0) [0|2550] "m" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 380 POWERTRAIN_DATA: 8 PCM
|
||||
SG_ PEDAL_GAS : 7|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ ENGINE_RPM : 23|16@0+ (1,0) [0|15000] "rpm" EON
|
||||
SG_ GAS_PRESSED : 39|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ ACC_STATUS : 38|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BOH_17C : 37|5@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_SWITCH : 32|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BOH2_17C : 47|10@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_PRESSED : 53|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BOH3_17C : 52|5@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 388 HYBRID_BRAKE_ERROR: 8 XXX
|
||||
SG_ BRAKE_ERROR_1 : 32|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_ERROR_2 : 34|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 420 VSA_STATUS: 8 VSA
|
||||
SG_ USER_BRAKE : 7|16@0+ (0.015625,-1.609375) [0|1000] "" EON
|
||||
SG_ COMPUTER_BRAKING : 23|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ ESP_DISABLED : 28|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_HOLD_RELATED : 52|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ BRAKE_HOLD_ACTIVE : 46|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_HOLD_ENABLED : 45|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 427 STEER_MOTOR_TORQUE: 3 EPS
|
||||
SG_ CONFIG_VALID : 7|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ MOTOR_TORQUE : 1|10@0+ (1,0) [0|256] "" EON
|
||||
SG_ OUTPUT_DISABLED : 22|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 21|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 19|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 450 EPB_STATUS: 8 XXX
|
||||
SG_ EPB_BRAKE_AND_PULL : 6|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ EPB_ACTIVE : 3|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ EPB_STATE : 29|2@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 464 WHEEL_SPEEDS: 8 VSA
|
||||
SG_ WHEEL_SPEED_FL : 7|15@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ WHEEL_SPEED_FR : 8|15@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ WHEEL_SPEED_RL : 25|15@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ WHEEL_SPEED_RR : 42|15@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 490 VEHICLE_DYNAMICS: 8 VSA
|
||||
SG_ LAT_ACCEL : 7|16@0- (0.0015,0) [-20|20] "m/s2" EON
|
||||
SG_ LONG_ACCEL : 23|16@0- (0.0015,0) [-20|20] "m/s2" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 597 ROUGH_WHEEL_SPEED: 8 VSA
|
||||
SG_ WHEEL_SPEED_FL : 7|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ WHEEL_SPEED_FR : 15|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ WHEEL_SPEED_RL : 23|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ WHEEL_SPEED_RR : 31|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ SET_TO_X55 : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ SET_TO_X55_2 : 47|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ LONG_COUNTER : 55|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 773 SEATBELT_STATUS: 7 BDY
|
||||
SG_ SEATBELT_DRIVER_LAMP : 7|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ SEATBELT_PASS_UNLATCHED : 10|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ SEATBELT_PASS_LATCHED : 11|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ SEATBELT_DRIVER_UNLATCHED : 12|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ SEATBELT_DRIVER_LATCHED : 13|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ PASS_AIRBAG_OFF : 14|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ PASS_AIRBAG_ON : 15|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 777 CAR_SPEED: 8 PCM
|
||||
SG_ ROUGH_CAR_SPEED : 23|8@0+ (1,0) [0|255] "mph" XXX
|
||||
SG_ CAR_SPEED : 7|16@0+ (0.01,0) [0|65535] "kph" XXX
|
||||
SG_ ROUGH_CAR_SPEED_3 : 39|16@0+ (0.01,0) [0|65535] "kph" XXX
|
||||
SG_ ROUGH_CAR_SPEED_2 : 31|8@0+ (1,0) [0|255] "mph" XXX
|
||||
SG_ LOCK_STATUS : 55|2@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ IMPERIAL_UNIT : 63|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 780 ACC_HUD: 8 ADAS
|
||||
SG_ PCM_SPEED : 7|16@0+ (0.01,0) [0|250] "kph" BDY
|
||||
SG_ PCM_GAS : 23|8@0+ (1,0) [0|127] "" BDY
|
||||
SG_ CRUISE_SPEED : 31|8@0+ (1,0) [0|255] "kph" BDY
|
||||
SG_ DTC_MODE : 39|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ BRAKE_SYSTEM_ICON : 38|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ ACC_PROBLEM : 37|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ FCM_OFF : 35|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ FCM_OFF_2 : 36|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ FCM_PROBLEM : 34|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RADAR_OBSTRUCTED : 33|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ ENABLE_MINI_CAR : 32|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ HUD_DISTANCE : 47|2@0+ (1,0) [0|3] "" BDY
|
||||
SG_ HUD_LEAD : 45|2@0+ (1,0) [0|3] "" BDY
|
||||
SG_ BOH_3 : 43|1@0+ (1,0) [0|3] "" BDY
|
||||
SG_ BOH_4 : 42|1@0+ (1,0) [0|3] "" BDY
|
||||
SG_ BOH_5 : 41|1@0+ (1,0) [0|3] "" BDY
|
||||
SG_ CRUISE_CONTROL_LABEL : 40|1@0+ (1,0) [0|3] "" BDY
|
||||
SG_ SET_ME_X01_2 : 55|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ IMPERIAL_UNIT : 54|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ ACC_ON : 52|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ CHIME : 51|3@0+ (1,0) [0|1] "" BDY
|
||||
SG_ SET_ME_X01 : 48|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ ICONS : 63|2@0+ (1,0) [0|1] "" BDY
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" BDY
|
||||
|
||||
BO_ 804 CRUISE: 8 PCM
|
||||
SG_ HUD_SPEED_KPH : 7|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ HUD_SPEED_MPH : 15|8@0+ (1,0) [0|255] "mph" EON
|
||||
SG_ TRIP_FUEL_CONSUMED : 23|16@0+ (1,0) [0|255] "" EON
|
||||
SG_ CRUISE_SPEED_PCM : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ BOH2 : 47|8@0- (1,0) [0|255] "" EON
|
||||
SG_ BOH3 : 55|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 862 CAMERA_MESSAGES: 8 CAM
|
||||
SG_ ZEROS_BOH : 7|16@0+ (1,0) [0|127] "" BDY
|
||||
SG_ SPEED_LIMIT_SIGN : 23|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ ROAD_SIGN : 31|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ ZEROS_BOH_2 : 51|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ HIGHBEAMS_ON : 52|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ AUTO_HIGHBEAMS_ACTIVE : 53|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 884 STALK_STATUS: 8 XXX
|
||||
SG_ DASHBOARD_ALERT : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ AUTO_HEADLIGHTS : 46|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ HIGH_BEAM_HOLD : 47|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ HIGH_BEAM_FLASH : 45|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ HEADLIGHTS_ON : 54|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ WIPER_SWITCH : 53|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 891 STALK_STATUS_2: 8 XXX
|
||||
SG_ WIPERS : 17|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ LOW_BEAMS : 35|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ HIGH_BEAMS : 34|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ PARK_LIGHTS : 36|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 1029 DOORS_STATUS: 8 BDY
|
||||
SG_ DOOR_OPEN_FL : 37|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ DOOR_OPEN_FR : 38|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ DOOR_OPEN_RL : 39|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ DOOR_OPEN_RR : 40|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ TRUNK_OPEN : 41|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 1302 ODOMETER: 8 XXX
|
||||
SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
CM_ SG_ 304 "Seems to be platform-agnostic";
|
||||
CM_ SG_ 316 "Should exist on Nidec";
|
||||
CM_ SG_ 420 BRAKE_HOLD_RELATED "On when Brake Hold engaged";
|
||||
CM_ SG_ 490 LONG_ACCEL "wheel speed derivative, noisy and zero snapping";
|
||||
CM_ SG_ 773 PASS_AIRBAG_ON "Might just be indicator light";
|
||||
CM_ SG_ 773 PASS_AIRBAG_OFF "Might just be indicator light";
|
||||
CM_ SG_ 780 CRUISE_SPEED "255 = no speed";
|
||||
CM_ SG_ 780 PCM_SPEED "Used by Nidec";
|
||||
CM_ SG_ 780 PCM_GAS "Used by Nidec";
|
||||
CM_ SG_ 804 CRUISE_SPEED_PCM "255 = no speed";
|
||||
|
||||
VAL_ 450 EPB_STATE 3 "engaged" 2 "disengaging" 1 "engaging" 0 "disengaged" ;
|
||||
VAL_ 780 CRUISE_SPEED 255 "no_speed" 252 "stopped";
|
||||
VAL_ 780 HUD_LEAD 3 "acc_off" 2 "solid_car" 1 "dashed_car" 0 "no_car";
|
||||
VAL_ 884 DASHBOARD_ALERT 0 "none" 51 "acc_problem" 55 "cmbs_problem" 75 "key_not_detected" 79 "fasten_seatbelt" 111 "lkas_problem" 131 "brake_system_problem" 132 "brake_hold_problem" 139 "tbd" 161 "door_open";
|
||||
VAL_ 891 WIPERS 4 "High" 2 "Low" 0 "Off";
|
||||
|
||||
|
||||
CM_ "Imported file _nidec_common.dbc starts here";
|
||||
BO_ 432 STANDSTILL: 7 VSA
|
||||
SG_ CONTROLLED_STANDSTILL : 0|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ WHEELS_MOVING : 12|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_ERROR_1 : 11|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_ERROR_2 : 9|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 487 BRAKE_PRESSURE: 4 VSA
|
||||
SG_ BRAKE_PRESSURE1 : 7|10@0+ (0.015625,-103) [0|1000] "" EON
|
||||
SG_ BRAKE_PRESSURE2 : 9|10@0+ (0.015625,-103) [0|1000] "" EON
|
||||
SG_ CHECKSUM : 27|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER : 29|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 506 BRAKE_COMMAND: 8 ADAS
|
||||
SG_ COMPUTER_BRAKE : 7|10@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ BRAKE_PUMP_REQUEST : 8|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ BRAKE_PUMP_REQUEST_HYBRID : 11|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ SET_ME_X00 : 23|3@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ CRUISE_OVERRIDE : 20|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ SET_ME_X00_2 : 19|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ CRUISE_FAULT_CMD : 18|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ CRUISE_CANCEL_CMD : 17|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ COMPUTER_BRAKE_REQUEST : 16|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ SET_ME_1 : 31|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ AEB_REQ_1 : 29|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ AEB_REQ_2 : 26|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ BRAKE_LIGHTS : 39|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ CRUISE_STATES : 38|7@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ CHIME : 47|3@0+ (1,0) [0|7] "" EBCM
|
||||
SG_ SET_ME_X00_3 : 44|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ FCW : 43|2@0+ (1,0) [0|3] "" EBCM
|
||||
SG_ AEB_STATUS : 41|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ COMPUTER_BRAKE_HYBRID : 55|10@0+ (1,0) [0|0] "" EBCM
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EBCM
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EBCM
|
||||
|
||||
BO_ 547 BRAKE_HOLD_HYBRID_ALT: 6 XXX
|
||||
SG_ BRAKE_HOLD_FAULT_BIT : 33|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ BRAKE_HOLD_ENABLED : 37|2@0+ (1,0) [0|7] "" XXX
|
||||
SG_ BRAKE_HOLD_ACTIVE : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 892 CRUISE_PARAMS: 8 PCM
|
||||
SG_ CRUISE_SPEED_OFFSET : 31|8@0- (0.1,0) [-128|127] "kph" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 927 RADAR_HUD: 8 ADAS
|
||||
SG_ ZEROS_BOH : 7|16@0+ (1,0) [0|127] "" BDY
|
||||
SG_ ACC_ALERTS : 20|5@0+ (1,0) [0|15] "" BDY
|
||||
SG_ RESUME_INSTRUCTION : 21|1@0+ (1,0) [0|15] "" BDY
|
||||
SG_ APPLY_BRAKES_FOR_CANC : 23|1@0+ (1,0) [0|15] "" BDY
|
||||
SG_ ZEROS_BOH2 : 31|8@0+ (1,0) [0|127] "" BDY
|
||||
SG_ LEAD_SPEED : 39|9@0+ (1,0) [0|127] "" BDY
|
||||
SG_ LEAD_DISTANCE : 46|8@0+ (1,0) [0|31] "" BDY
|
||||
SG_ ZEROS_BOH3 : 54|7@0+ (1,0) [0|127] "" BDY
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" BDY
|
||||
|
||||
CM_ SG_ 506 AEB_REQ_1 "set for duration of suspected AEB event";
|
||||
CM_ SG_ 506 COMPUTER_BRAKE_HYBRID "Used by Hybrid Nidec";
|
||||
CM_ SG_ 506 BRAKE_PUMP_REQUEST_HYBRID "Used by Hybrid Nidec";
|
||||
|
||||
VAL_ 506 FCW 3 "fcw" 2 "fcw" 1 "fcw" 0 "no_fcw";
|
||||
VAL_ 506 CHIME 4 "double_chime" 3 "single_chime" 2 "continuous_chime" 1 "repeating_chime" 0 "no_chime";
|
||||
VAL_ 506 AEB_STATUS 3 "aeb_prepare" 2 "aeb_ready" 1 "aeb_braking" 0 "no_aeb";
|
||||
VAL_ 927 ACC_ALERTS 29 "esp_active_acc_canceled" 10 "b_pedal_applied" 9 "speed_too_low" 8 "speed_too_high" 7 "p_brake_applied" 6 "gear_no_d" 5 "seatbelt" 4 "too_steep_downhill" 3 "too_steep_uphill" 2 "too_close" 1 "no_vehicle_ahead" ;
|
||||
VAL_ 927 LEAD_DISTANCE 254 "no lead";
|
||||
VAL_ 927 LEAD_SPEED 510 "no lead";
|
||||
|
||||
|
||||
CM_ "Imported file _lkas_hud_5byte.dbc starts here";
|
||||
BO_ 829 LKAS_HUD: 5 ADAS
|
||||
SG_ LKAS_READY : 0|1@0+ (1,0) [0|127] "" BDY
|
||||
SG_ LKAS_STATE_CHANGE : 6|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CAM_TEMP_HIGH : 7|1@0+ (1,0) [0|255] "" BDY
|
||||
SG_ DASHED_LANES : 14|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ DTC : 13|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ LKAS_PROBLEM : 12|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ LKAS_OFF : 11|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ SOLID_LANES : 10|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ CLEAN_WINDSHIELD : 26|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ STEERING_REQUIRED : 8|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ BEEP : 17|2@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_PROBLEM : 21|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_HUD : 9|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_HUD_2 : 23|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ RDM_OFF : 27|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_ON : 20|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ RDM_ON_2 : 28|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ LANE_ASSIST_BEEP_OFF : 30|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" BDY
|
||||
SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" BDY
|
||||
|
||||
|
||||
CM_ SG_ 829 BEEP "beeps are pleasant, chimes are for warnings etc...";
|
||||
CM_ SG_ 829 CAM_TEMP_HIGH "Some Driver Assist Systems Cannot Operate: Camera Temperature Too High";
|
||||
CM_ SG_ 829 CAMERA_OVERHEAT "Lane Keeping Assist Cannot Operate: Camera Too Hot";
|
||||
|
||||
VAL_ 829 BEEP 5 "solid_beep" 4 "double_beep" 3 "single_beep" 2 "triple_beep" 1 "repeated_beep" 0 "no_beep";
|
||||
|
||||
|
||||
CM_ "Imported file _nidec_scm_group_a.dbc starts here";
|
||||
BO_ 660 SCM_FEEDBACK: 8 SCM
|
||||
SG_ RIGHT_BLINKER : 6|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ LEFT_BLINKER : 5|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ WIPERS_SPEED : 4|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 422 SCM_BUTTONS: 8 SCM
|
||||
SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON
|
||||
SG_ LIGHTS_SETTING : 1|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ PARKING_BRAKE_ON : 2|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ MAIN_ON : 47|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ CRUISE_SETTING : 43|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ DRIVERS_DOOR_OPEN : 63|1@0+ (1,0) [0|1] "" EON
|
||||
|
||||
VAL_ 422 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ;
|
||||
VAL_ 422 LIGHTS_SETTING 3 "high_beam" 2 "low_beam" 1 "position" 0 "no_lights" ;
|
||||
VAL_ 422 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ;
|
||||
|
||||
|
||||
CM_ "Imported file _steering_sensors_b.dbc starts here";
|
||||
BO_ 342 STEERING_SENSORS: 6 EPS
|
||||
SG_ STEER_ANGLE : 7|16@0- (-0.1,0) [-500|500] "deg" EON
|
||||
SG_ STEER_ANGLE_RATE : 23|16@0- (-1,0) [-3000|3000] "deg/s" EON
|
||||
SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
|
||||
CM_ "Imported file _steering_control_d_ext.dbc starts here";
|
||||
BO_ 228 STEERING_CONTROL: 5 ADAS
|
||||
SG_ STEER_TORQUE : 7|16@0- (1,0) [-3840|3840] "" EPS
|
||||
SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS
|
||||
SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS
|
||||
SG_ SET_ME_X00_2 : 31|8@0+ (1,0) [0|0] "" EPS
|
||||
SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS
|
||||
SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" EPS
|
||||
|
||||
BO_ 400 STEER_STATUS: 5 EPS
|
||||
SG_ STEER_TORQUE_SENSOR : 0|9@1- (1,0) [-256|256] "" XXX
|
||||
SG_ LIN_INTERFACE_FATAL_ERROR : 10|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LATE_MESSAGE : 11|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STEER_STATUS : 12|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 35|4@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ LKAS_ALLOWED : 9|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STEER_APPLIED : 23|16@0- (1,0) [0|511] "" XXX
|
||||
|
||||
VAL_ 400 STEER_STATUS 7 "permanent_fault" 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 1 "driver_steering" 0 "normal" ;
|
||||
|
||||
|
||||
CM_ "Imported file _gearbox_common.dbc starts here";
|
||||
BO_ 401 GEARBOX_CVT: 8 PCM
|
||||
SG_ SELECTED_P : 0|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SELECTED_R : 1|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SELECTED_N : 2|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SELECTED_D : 3|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FORWARD_DRIVING_MODE : 23|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CVT_UNKNOWN_1 : 31|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ CVT_UNKNOWN_2 : 39|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ GEAR_SHIFTER : 44|5@0+ (1,0) [0|31] "" XXX
|
||||
SG_ SHIFTER_POSITION_VALID : 45|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ NOT_FORWARD_GEAR : 48|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CVT_UNKNOWN_3 : 53|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 419 GEARBOX_AUTO: 8 PCM
|
||||
SG_ TRANS_SHIFT_ACTIVITY : 7|8@0+ (1,0) [0|256] "" EON
|
||||
SG_ TRANS_TARGET_GEAR : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ REGEN_STAGE_SELECTION : 14|3@0+ (1,0) [0|7] "Stage" XXX
|
||||
SG_ REGEN_MEMORY : 16|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FORWARD_DRIVING_MODE : 20|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ AUTO_UNKNOWN_1 : 27|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ AUTO_UNKNOWN_2 : 29|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ GEAR_SHIFTER : 35|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ REGEN_UNKNOWN : 50|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ AUTO_UNKNOWN_3 : 62|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
CM_ SG_ 401 CVT_UNKNOWN_1 "Probably measured/actual CVT ratio";
|
||||
CM_ SG_ 401 CVT_UNKNOWN_2 "Probably target/commanded CVT ratio";
|
||||
CM_ SG_ 419 TRANS_SHIFT_ACTIVITY "Tracks but trails TRANS_TARGET_GEAR with extra activity, probable solenoid activations or TC lockup";
|
||||
CM_ SG_ 419 REGEN_STAGE_SELECTION "Driver-selected regenerative braking threshold";
|
||||
CM_ SG_ 419 REGEN_MEMORY "Driver-selected persistence setting, M shown in instrument cluster";
|
||||
CM_ SG_ 419 REGEN_UNKNOWN "Both bits set when user enables regen, otherwise zero";
|
||||
|
||||
VAL_ 401 GEAR_SHIFTER 1 "P" 2 "R" 3 "N" 4 "D" 7 "L" 10 "S";
|
||||
VAL_ 419 GEAR_SHIFTER 1 "P" 2 "R" 3 "N" 4 "D" 7 "L" 10 "S";
|
||||
VAL_ 419 TRANS_TARGET_GEAR 0 "None / Neutral / Park" 1 "1st" 2 "2nd" 3 "3rd" 4 "4th" 5 "5th" 6 "6th" 7 "7th" 8 "8th" 9 "9th" 10 "10th" 13 "Reverse";
|
||||
VAL_ 419 REGEN_STAGE_SELECTION 0 "disabled" 1 "stage_1" 2 "stage_2" 3 "stage_3" 4 "stage_4" 5 "stage_5" 6 "stage_6";
|
||||
VAL_ 419 REGEN_MEMORY 0 "disabled" 1 "persistent";
|
||||
|
||||
CM_ "acura_mdx_2017_can_ext.dbc starts here";
|
||||
@@ -1,6 +1,24 @@
|
||||
CM_ "AUTOGENERATED FILE, DO NOT EDIT";
|
||||
|
||||
|
||||
CM_ "Imported file _community.dbc starts here";
|
||||
BO_ 512 GAS_COMMAND: 6 EON
|
||||
SG_ GAS_COMMAND : 7|16@0+ (0.253984064,-83.3) [0|1] "" INTERCEPTOR
|
||||
SG_ GAS_COMMAND2 : 23|16@0+ (0.126992032,-83.3) [0|1] "" INTERCEPTOR
|
||||
SG_ ENABLE : 39|1@0+ (1,0) [0|1] "" INTERCEPTOR
|
||||
SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" INTERCEPTOR
|
||||
SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" INTERCEPTOR
|
||||
|
||||
BO_ 513 GAS_SENSOR: 6 INTERCEPTOR
|
||||
SG_ INTERCEPTOR_GAS : 7|16@0+ (1,0) [0|1] "" EON
|
||||
SG_ INTERCEPTOR_GAS2 : 23|16@0+ (1,0) [0|1] "" EON
|
||||
SG_ STATE : 39|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" EON
|
||||
|
||||
VAL_ 513 STATE 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ;
|
||||
|
||||
|
||||
CM_ "Imported file _honda_common.dbc starts here";
|
||||
BO_ 145 KINEMATICS_ALT: 8 XXX
|
||||
SG_ LAT_ACCEL : 7|10@0+ (0.02,-512) [-20|20] "m/s2" EON
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
BO_ 404 STEERING_CONTROL: 4 EON
|
||||
SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS
|
||||
SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS
|
||||
SG_ COUNTER : 29|2@0+ (1,0) [0|15] "" EPS
|
||||
SG_ CHECKSUM : 27|4@0+ (1,0) [0|3] "" EPS
|
||||
SG_ STEER_TORQUE : 7|16@0- (-1,0) [-32767|32767] "" EPS
|
||||
|
||||
BO_ 399 STEER_STATUS: 7 EPS
|
||||
SG_ STEER_TORQUE_SENSOR : 7|16@0- (-1,0) [-2985|2985] "tbd" EON
|
||||
SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON
|
||||
SG_ STEER_STATUS : 43|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ STEER_CONTROL_ACTIVE : 35|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ STEER_CONFIG_INDEX : 43|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
VAL_ 399 STEER_STATUS 7 "permanent_fault" 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 1 "driver_steering" 0 "normal" ;
|
||||
@@ -0,0 +1,19 @@
|
||||
BO_ 228 STEERING_CONTROL: 5 ADAS
|
||||
SG_ STEER_TORQUE : 7|16@0- (1,0) [-3840|3840] "" EPS
|
||||
SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS
|
||||
SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS
|
||||
SG_ SET_ME_X00_2 : 31|8@0+ (1,0) [0|0] "" EPS
|
||||
SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS
|
||||
SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" EPS
|
||||
|
||||
BO_ 400 STEER_STATUS: 5 EPS
|
||||
SG_ STEER_TORQUE_SENSOR : 0|9@1- (1,0) [-256|256] "" XXX
|
||||
SG_ LIN_INTERFACE_FATAL_ERROR : 10|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LATE_MESSAGE : 11|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STEER_STATUS : 12|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 35|4@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ LKAS_ALLOWED : 9|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STEER_APPLIED : 23|16@0- (1,0) [0|511] "" XXX
|
||||
|
||||
VAL_ 400 STEER_STATUS 7 "permanent_fault" 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 1 "driver_steering" 0 "normal" ;
|
||||
@@ -0,0 +1,7 @@
|
||||
CM_ "steer_angle_rate is negative vs _steering_sensors_b.dbc";
|
||||
|
||||
BO_ 342 STEERING_SENSORS: 6 EPS
|
||||
SG_ STEER_ANGLE : 7|16@0- (-0.1,0) [-500|500] "deg" EON
|
||||
SG_ STEER_ANGLE_RATE : 23|16@0- (1,0) [-3000|3000] "deg/s" EON
|
||||
SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" EON
|
||||
@@ -1,3 +1,4 @@
|
||||
CM_ "IMPORT _community.dbc";
|
||||
CM_ "IMPORT _honda_common.dbc";
|
||||
CM_ "IMPORT _nidec_common.dbc";
|
||||
CM_ "IMPORT _lkas_hud_5byte.dbc";
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
CM_ "IMPORT _community.dbc";
|
||||
CM_ "IMPORT _honda_common.dbc";
|
||||
CM_ "IMPORT _nidec_common.dbc";
|
||||
CM_ "IMPORT _lkas_hud_5byte.dbc";
|
||||
CM_ "IMPORT _nidec_scm_group_a.dbc";
|
||||
CM_ "IMPORT _steering_sensors_b.dbc";
|
||||
CM_ "IMPORT _steering_control_d_ext.dbc";
|
||||
CM_ "IMPORT _gearbox_common.dbc";
|
||||
@@ -1,3 +1,4 @@
|
||||
CM_ "IMPORT _community.dbc";
|
||||
CM_ "IMPORT _honda_common.dbc";
|
||||
CM_ "IMPORT _nidec_common.dbc";
|
||||
CM_ "IMPORT _lkas_hud_5byte.dbc";
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
CM_ "IMPORT _community.dbc";
|
||||
CM_ "IMPORT _honda_common.dbc";
|
||||
CM_ "IMPORT _nidec_common.dbc";
|
||||
CM_ "IMPORT _lkas_hud_5byte.dbc";
|
||||
CM_ "IMPORT _nidec_scm_group_a.dbc";
|
||||
CM_ "IMPORT _steering_sensors_b.dbc";
|
||||
CM_ "IMPORT _steering_control_d_ext.dbc";
|
||||
|
||||
BO_ 392 GEARBOX_AUTO: 6 XXX
|
||||
SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ GEAR_SHIFTER : 27|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ GEAR : 36|5@0+ (1,0) [0|31] "" EON
|
||||
|
||||
BO_ 401 GEARBOX_CVT: 8 PCM
|
||||
SG_ SELECTED_P : 0|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SELECTED_R : 1|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SELECTED_N : 2|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SELECTED_D : 3|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FORWARD_DRIVING_MODE : 23|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CVT_UNKNOWN_1 : 31|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ CVT_UNKNOWN_2 : 39|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ GEAR_SHIFTER : 44|5@0+ (1,0) [0|31] "" XXX
|
||||
SG_ SHIFTER_POSITION_VALID : 45|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ NOT_FORWARD_GEAR : 48|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CVT_UNKNOWN_3 : 53|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
VAL_ 392 GEAR_SHIFTER 0 "S" 1 "P" 2 "R" 4 "N" 8 "D" ;
|
||||
VAL_ 392 GEAR 26 "S" 4 "D" 3 "N" 2 "R" 1 "P" ;
|
||||
VAL_ 401 GEAR_SHIFTER 1 "P" 2 "R" 3 "N" 4 "D" 7 "L" 10 "S";
|
||||
|
||||
CM_ SG_ 401 CVT_UNKNOWN_1 "Probably measured/actual CVT ratio";
|
||||
CM_ SG_ 401 CVT_UNKNOWN_2 "Probably target/commanded CVT ratio";
|
||||
@@ -1,3 +1,4 @@
|
||||
CM_ "IMPORT _community.dbc";
|
||||
CM_ "IMPORT _honda_common.dbc";
|
||||
CM_ "IMPORT _nidec_common.dbc";
|
||||
CM_ "IMPORT _lkas_hud_5byte.dbc";
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
CM_ "IMPORT _community.dbc";
|
||||
CM_ "IMPORT _honda_common.dbc";
|
||||
CM_ "IMPORT _nidec_common.dbc";
|
||||
CM_ "IMPORT _lkas_hud_5byte.dbc";
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
CM_ "IMPORT _community.dbc";
|
||||
CM_ "IMPORT _honda_common.dbc";
|
||||
CM_ "IMPORT _nidec_common.dbc";
|
||||
CM_ "IMPORT _lkas_hud_5byte.dbc";
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
CM_ "IMPORT _honda_common.dbc";
|
||||
CM_ "IMPORT _bosch_2018.dbc";
|
||||
CM_ "IMPORT _bosch_radar_acc.dbc";
|
||||
CM_ "IMPORT _lkas_hud_8byte.dbc";
|
||||
CM_ "IMPORT _bosch_standstill.dbc";
|
||||
CM_ "IMPORT _steering_sensors_b.dbc";
|
||||
CM_ "IMPORT _gearbox_common.dbc";
|
||||
@@ -1,3 +1,4 @@
|
||||
CM_ "IMPORT _community.dbc";
|
||||
CM_ "IMPORT _honda_common.dbc";
|
||||
CM_ "IMPORT _nidec_common.dbc";
|
||||
CM_ "IMPORT _lkas_hud_5byte.dbc";
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
CM_ "IMPORT _community.dbc";
|
||||
CM_ "IMPORT _honda_common.dbc";
|
||||
CM_ "IMPORT _nidec_common.dbc";
|
||||
CM_ "IMPORT _lkas_hud_5byte.dbc";
|
||||
CM_ "IMPORT _nidec_scm_group_a.dbc";
|
||||
CM_ "IMPORT _steering_sensors_c.dbc";
|
||||
CM_ "IMPORT _steering_control_c.dbc";
|
||||
CM_ "IMPORT _gearbox_common.dbc";
|
||||
@@ -0,0 +1,424 @@
|
||||
CM_ "AUTOGENERATED FILE, DO NOT EDIT";
|
||||
|
||||
|
||||
CM_ "Imported file _community.dbc starts here";
|
||||
BO_ 512 GAS_COMMAND: 6 EON
|
||||
SG_ GAS_COMMAND : 7|16@0+ (0.253984064,-83.3) [0|1] "" INTERCEPTOR
|
||||
SG_ GAS_COMMAND2 : 23|16@0+ (0.126992032,-83.3) [0|1] "" INTERCEPTOR
|
||||
SG_ ENABLE : 39|1@0+ (1,0) [0|1] "" INTERCEPTOR
|
||||
SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" INTERCEPTOR
|
||||
SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" INTERCEPTOR
|
||||
|
||||
BO_ 513 GAS_SENSOR: 6 INTERCEPTOR
|
||||
SG_ INTERCEPTOR_GAS : 7|16@0+ (1,0) [0|1] "" EON
|
||||
SG_ INTERCEPTOR_GAS2 : 23|16@0+ (1,0) [0|1] "" EON
|
||||
SG_ STATE : 39|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" EON
|
||||
|
||||
VAL_ 513 STATE 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ;
|
||||
|
||||
|
||||
CM_ "Imported file _honda_common.dbc starts here";
|
||||
BO_ 145 KINEMATICS_ALT: 8 XXX
|
||||
SG_ LAT_ACCEL : 7|10@0+ (0.02,-512) [-20|20] "m/s2" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 148 KINEMATICS: 8 XXX
|
||||
SG_ LAT_ACCEL : 7|10@0+ (0.02,-512) [-20|20] "m/s2" EON
|
||||
SG_ LONG_ACCEL : 24|9@0- (-0.02,0) [-20|20] "m/s2" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 304 GAS_PEDAL_2: 8 PCM
|
||||
SG_ ENGINE_TORQUE_ESTIMATE : 7|16@0- (1,0) [-1000|1000] "Nm" EON
|
||||
SG_ ENGINE_TORQUE_REQUEST : 23|16@0- (1,0) [-1000|1000] "Nm" EON
|
||||
SG_ CAR_GAS : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 316 GAS_PEDAL: 8 PCM
|
||||
SG_ CAR_GAS : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 344 ENGINE_DATA: 8 PCM
|
||||
SG_ XMISSION_SPEED : 7|16@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ ENGINE_RPM : 23|16@0+ (1,0) [0|15000] "rpm" EON
|
||||
SG_ XMISSION_SPEED2 : 39|16@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ ODOMETER : 55|8@0+ (10,0) [0|2550] "m" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 380 POWERTRAIN_DATA: 8 PCM
|
||||
SG_ PEDAL_GAS : 7|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ ENGINE_RPM : 23|16@0+ (1,0) [0|15000] "rpm" EON
|
||||
SG_ GAS_PRESSED : 39|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ ACC_STATUS : 38|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BOH_17C : 37|5@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_SWITCH : 32|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BOH2_17C : 47|10@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_PRESSED : 53|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BOH3_17C : 52|5@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 388 HYBRID_BRAKE_ERROR: 8 XXX
|
||||
SG_ BRAKE_ERROR_1 : 32|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_ERROR_2 : 34|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 420 VSA_STATUS: 8 VSA
|
||||
SG_ USER_BRAKE : 7|16@0+ (0.015625,-1.609375) [0|1000] "" EON
|
||||
SG_ COMPUTER_BRAKING : 23|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ ESP_DISABLED : 28|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_HOLD_RELATED : 52|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ BRAKE_HOLD_ACTIVE : 46|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_HOLD_ENABLED : 45|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 427 STEER_MOTOR_TORQUE: 3 EPS
|
||||
SG_ CONFIG_VALID : 7|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ MOTOR_TORQUE : 1|10@0+ (1,0) [0|256] "" EON
|
||||
SG_ OUTPUT_DISABLED : 22|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 21|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 19|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 450 EPB_STATUS: 8 XXX
|
||||
SG_ EPB_BRAKE_AND_PULL : 6|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ EPB_ACTIVE : 3|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ EPB_STATE : 29|2@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 464 WHEEL_SPEEDS: 8 VSA
|
||||
SG_ WHEEL_SPEED_FL : 7|15@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ WHEEL_SPEED_FR : 8|15@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ WHEEL_SPEED_RL : 25|15@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ WHEEL_SPEED_RR : 42|15@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 490 VEHICLE_DYNAMICS: 8 VSA
|
||||
SG_ LAT_ACCEL : 7|16@0- (0.0015,0) [-20|20] "m/s2" EON
|
||||
SG_ LONG_ACCEL : 23|16@0- (0.0015,0) [-20|20] "m/s2" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 597 ROUGH_WHEEL_SPEED: 8 VSA
|
||||
SG_ WHEEL_SPEED_FL : 7|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ WHEEL_SPEED_FR : 15|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ WHEEL_SPEED_RL : 23|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ WHEEL_SPEED_RR : 31|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ SET_TO_X55 : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ SET_TO_X55_2 : 47|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ LONG_COUNTER : 55|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 773 SEATBELT_STATUS: 7 BDY
|
||||
SG_ SEATBELT_DRIVER_LAMP : 7|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ SEATBELT_PASS_UNLATCHED : 10|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ SEATBELT_PASS_LATCHED : 11|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ SEATBELT_DRIVER_UNLATCHED : 12|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ SEATBELT_DRIVER_LATCHED : 13|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ PASS_AIRBAG_OFF : 14|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ PASS_AIRBAG_ON : 15|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 777 CAR_SPEED: 8 PCM
|
||||
SG_ ROUGH_CAR_SPEED : 23|8@0+ (1,0) [0|255] "mph" XXX
|
||||
SG_ CAR_SPEED : 7|16@0+ (0.01,0) [0|65535] "kph" XXX
|
||||
SG_ ROUGH_CAR_SPEED_3 : 39|16@0+ (0.01,0) [0|65535] "kph" XXX
|
||||
SG_ ROUGH_CAR_SPEED_2 : 31|8@0+ (1,0) [0|255] "mph" XXX
|
||||
SG_ LOCK_STATUS : 55|2@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ IMPERIAL_UNIT : 63|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 780 ACC_HUD: 8 ADAS
|
||||
SG_ PCM_SPEED : 7|16@0+ (0.01,0) [0|250] "kph" BDY
|
||||
SG_ PCM_GAS : 23|8@0+ (1,0) [0|127] "" BDY
|
||||
SG_ CRUISE_SPEED : 31|8@0+ (1,0) [0|255] "kph" BDY
|
||||
SG_ DTC_MODE : 39|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ BRAKE_SYSTEM_ICON : 38|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ ACC_PROBLEM : 37|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ FCM_OFF : 35|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ FCM_OFF_2 : 36|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ FCM_PROBLEM : 34|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RADAR_OBSTRUCTED : 33|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ ENABLE_MINI_CAR : 32|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ HUD_DISTANCE : 47|2@0+ (1,0) [0|3] "" BDY
|
||||
SG_ HUD_LEAD : 45|2@0+ (1,0) [0|3] "" BDY
|
||||
SG_ BOH_3 : 43|1@0+ (1,0) [0|3] "" BDY
|
||||
SG_ BOH_4 : 42|1@0+ (1,0) [0|3] "" BDY
|
||||
SG_ BOH_5 : 41|1@0+ (1,0) [0|3] "" BDY
|
||||
SG_ CRUISE_CONTROL_LABEL : 40|1@0+ (1,0) [0|3] "" BDY
|
||||
SG_ SET_ME_X01_2 : 55|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ IMPERIAL_UNIT : 54|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ ACC_ON : 52|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ CHIME : 51|3@0+ (1,0) [0|1] "" BDY
|
||||
SG_ SET_ME_X01 : 48|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ ICONS : 63|2@0+ (1,0) [0|1] "" BDY
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" BDY
|
||||
|
||||
BO_ 804 CRUISE: 8 PCM
|
||||
SG_ HUD_SPEED_KPH : 7|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ HUD_SPEED_MPH : 15|8@0+ (1,0) [0|255] "mph" EON
|
||||
SG_ TRIP_FUEL_CONSUMED : 23|16@0+ (1,0) [0|255] "" EON
|
||||
SG_ CRUISE_SPEED_PCM : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ BOH2 : 47|8@0- (1,0) [0|255] "" EON
|
||||
SG_ BOH3 : 55|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 862 CAMERA_MESSAGES: 8 CAM
|
||||
SG_ ZEROS_BOH : 7|16@0+ (1,0) [0|127] "" BDY
|
||||
SG_ SPEED_LIMIT_SIGN : 23|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ ROAD_SIGN : 31|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ ZEROS_BOH_2 : 51|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ HIGHBEAMS_ON : 52|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ AUTO_HIGHBEAMS_ACTIVE : 53|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 884 STALK_STATUS: 8 XXX
|
||||
SG_ DASHBOARD_ALERT : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ AUTO_HEADLIGHTS : 46|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ HIGH_BEAM_HOLD : 47|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ HIGH_BEAM_FLASH : 45|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ HEADLIGHTS_ON : 54|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ WIPER_SWITCH : 53|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 891 STALK_STATUS_2: 8 XXX
|
||||
SG_ WIPERS : 17|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ LOW_BEAMS : 35|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ HIGH_BEAMS : 34|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ PARK_LIGHTS : 36|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 1029 DOORS_STATUS: 8 BDY
|
||||
SG_ DOOR_OPEN_FL : 37|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ DOOR_OPEN_FR : 38|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ DOOR_OPEN_RL : 39|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ DOOR_OPEN_RR : 40|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ TRUNK_OPEN : 41|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 1302 ODOMETER: 8 XXX
|
||||
SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
CM_ SG_ 304 "Seems to be platform-agnostic";
|
||||
CM_ SG_ 316 "Should exist on Nidec";
|
||||
CM_ SG_ 420 BRAKE_HOLD_RELATED "On when Brake Hold engaged";
|
||||
CM_ SG_ 490 LONG_ACCEL "wheel speed derivative, noisy and zero snapping";
|
||||
CM_ SG_ 773 PASS_AIRBAG_ON "Might just be indicator light";
|
||||
CM_ SG_ 773 PASS_AIRBAG_OFF "Might just be indicator light";
|
||||
CM_ SG_ 780 CRUISE_SPEED "255 = no speed";
|
||||
CM_ SG_ 780 PCM_SPEED "Used by Nidec";
|
||||
CM_ SG_ 780 PCM_GAS "Used by Nidec";
|
||||
CM_ SG_ 804 CRUISE_SPEED_PCM "255 = no speed";
|
||||
|
||||
VAL_ 450 EPB_STATE 3 "engaged" 2 "disengaging" 1 "engaging" 0 "disengaged" ;
|
||||
VAL_ 780 CRUISE_SPEED 255 "no_speed" 252 "stopped";
|
||||
VAL_ 780 HUD_LEAD 3 "acc_off" 2 "solid_car" 1 "dashed_car" 0 "no_car";
|
||||
VAL_ 884 DASHBOARD_ALERT 0 "none" 51 "acc_problem" 55 "cmbs_problem" 75 "key_not_detected" 79 "fasten_seatbelt" 111 "lkas_problem" 131 "brake_system_problem" 132 "brake_hold_problem" 139 "tbd" 161 "door_open";
|
||||
VAL_ 891 WIPERS 4 "High" 2 "Low" 0 "Off";
|
||||
|
||||
|
||||
CM_ "Imported file _nidec_common.dbc starts here";
|
||||
BO_ 432 STANDSTILL: 7 VSA
|
||||
SG_ CONTROLLED_STANDSTILL : 0|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ WHEELS_MOVING : 12|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_ERROR_1 : 11|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_ERROR_2 : 9|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 487 BRAKE_PRESSURE: 4 VSA
|
||||
SG_ BRAKE_PRESSURE1 : 7|10@0+ (0.015625,-103) [0|1000] "" EON
|
||||
SG_ BRAKE_PRESSURE2 : 9|10@0+ (0.015625,-103) [0|1000] "" EON
|
||||
SG_ CHECKSUM : 27|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER : 29|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 506 BRAKE_COMMAND: 8 ADAS
|
||||
SG_ COMPUTER_BRAKE : 7|10@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ BRAKE_PUMP_REQUEST : 8|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ BRAKE_PUMP_REQUEST_HYBRID : 11|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ SET_ME_X00 : 23|3@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ CRUISE_OVERRIDE : 20|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ SET_ME_X00_2 : 19|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ CRUISE_FAULT_CMD : 18|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ CRUISE_CANCEL_CMD : 17|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ COMPUTER_BRAKE_REQUEST : 16|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ SET_ME_1 : 31|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ AEB_REQ_1 : 29|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ AEB_REQ_2 : 26|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ BRAKE_LIGHTS : 39|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ CRUISE_STATES : 38|7@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ CHIME : 47|3@0+ (1,0) [0|7] "" EBCM
|
||||
SG_ SET_ME_X00_3 : 44|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ FCW : 43|2@0+ (1,0) [0|3] "" EBCM
|
||||
SG_ AEB_STATUS : 41|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ COMPUTER_BRAKE_HYBRID : 55|10@0+ (1,0) [0|0] "" EBCM
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EBCM
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EBCM
|
||||
|
||||
BO_ 547 BRAKE_HOLD_HYBRID_ALT: 6 XXX
|
||||
SG_ BRAKE_HOLD_FAULT_BIT : 33|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ BRAKE_HOLD_ENABLED : 37|2@0+ (1,0) [0|7] "" XXX
|
||||
SG_ BRAKE_HOLD_ACTIVE : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 892 CRUISE_PARAMS: 8 PCM
|
||||
SG_ CRUISE_SPEED_OFFSET : 31|8@0- (0.1,0) [-128|127] "kph" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 927 RADAR_HUD: 8 ADAS
|
||||
SG_ ZEROS_BOH : 7|16@0+ (1,0) [0|127] "" BDY
|
||||
SG_ ACC_ALERTS : 20|5@0+ (1,0) [0|15] "" BDY
|
||||
SG_ RESUME_INSTRUCTION : 21|1@0+ (1,0) [0|15] "" BDY
|
||||
SG_ APPLY_BRAKES_FOR_CANC : 23|1@0+ (1,0) [0|15] "" BDY
|
||||
SG_ ZEROS_BOH2 : 31|8@0+ (1,0) [0|127] "" BDY
|
||||
SG_ LEAD_SPEED : 39|9@0+ (1,0) [0|127] "" BDY
|
||||
SG_ LEAD_DISTANCE : 46|8@0+ (1,0) [0|31] "" BDY
|
||||
SG_ ZEROS_BOH3 : 54|7@0+ (1,0) [0|127] "" BDY
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" BDY
|
||||
|
||||
CM_ SG_ 506 AEB_REQ_1 "set for duration of suspected AEB event";
|
||||
CM_ SG_ 506 COMPUTER_BRAKE_HYBRID "Used by Hybrid Nidec";
|
||||
CM_ SG_ 506 BRAKE_PUMP_REQUEST_HYBRID "Used by Hybrid Nidec";
|
||||
|
||||
VAL_ 506 FCW 3 "fcw" 2 "fcw" 1 "fcw" 0 "no_fcw";
|
||||
VAL_ 506 CHIME 4 "double_chime" 3 "single_chime" 2 "continuous_chime" 1 "repeating_chime" 0 "no_chime";
|
||||
VAL_ 506 AEB_STATUS 3 "aeb_prepare" 2 "aeb_ready" 1 "aeb_braking" 0 "no_aeb";
|
||||
VAL_ 927 ACC_ALERTS 29 "esp_active_acc_canceled" 10 "b_pedal_applied" 9 "speed_too_low" 8 "speed_too_high" 7 "p_brake_applied" 6 "gear_no_d" 5 "seatbelt" 4 "too_steep_downhill" 3 "too_steep_uphill" 2 "too_close" 1 "no_vehicle_ahead" ;
|
||||
VAL_ 927 LEAD_DISTANCE 254 "no lead";
|
||||
VAL_ 927 LEAD_SPEED 510 "no lead";
|
||||
|
||||
|
||||
CM_ "Imported file _lkas_hud_5byte.dbc starts here";
|
||||
BO_ 829 LKAS_HUD: 5 ADAS
|
||||
SG_ LKAS_READY : 0|1@0+ (1,0) [0|127] "" BDY
|
||||
SG_ LKAS_STATE_CHANGE : 6|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CAM_TEMP_HIGH : 7|1@0+ (1,0) [0|255] "" BDY
|
||||
SG_ DASHED_LANES : 14|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ DTC : 13|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ LKAS_PROBLEM : 12|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ LKAS_OFF : 11|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ SOLID_LANES : 10|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ CLEAN_WINDSHIELD : 26|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ STEERING_REQUIRED : 8|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ BEEP : 17|2@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_PROBLEM : 21|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_HUD : 9|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_HUD_2 : 23|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ RDM_OFF : 27|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_ON : 20|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ RDM_ON_2 : 28|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ LANE_ASSIST_BEEP_OFF : 30|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" BDY
|
||||
SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" BDY
|
||||
|
||||
|
||||
CM_ SG_ 829 BEEP "beeps are pleasant, chimes are for warnings etc...";
|
||||
CM_ SG_ 829 CAM_TEMP_HIGH "Some Driver Assist Systems Cannot Operate: Camera Temperature Too High";
|
||||
CM_ SG_ 829 CAMERA_OVERHEAT "Lane Keeping Assist Cannot Operate: Camera Too Hot";
|
||||
|
||||
VAL_ 829 BEEP 5 "solid_beep" 4 "double_beep" 3 "single_beep" 2 "triple_beep" 1 "repeated_beep" 0 "no_beep";
|
||||
|
||||
|
||||
CM_ "Imported file _nidec_scm_group_a.dbc starts here";
|
||||
BO_ 660 SCM_FEEDBACK: 8 SCM
|
||||
SG_ RIGHT_BLINKER : 6|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ LEFT_BLINKER : 5|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ WIPERS_SPEED : 4|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 422 SCM_BUTTONS: 8 SCM
|
||||
SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON
|
||||
SG_ LIGHTS_SETTING : 1|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ PARKING_BRAKE_ON : 2|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ MAIN_ON : 47|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ CRUISE_SETTING : 43|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ DRIVERS_DOOR_OPEN : 63|1@0+ (1,0) [0|1] "" EON
|
||||
|
||||
VAL_ 422 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ;
|
||||
VAL_ 422 LIGHTS_SETTING 3 "high_beam" 2 "low_beam" 1 "position" 0 "no_lights" ;
|
||||
VAL_ 422 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ;
|
||||
|
||||
|
||||
CM_ "Imported file _steering_sensors_b.dbc starts here";
|
||||
BO_ 342 STEERING_SENSORS: 6 EPS
|
||||
SG_ STEER_ANGLE : 7|16@0- (-0.1,0) [-500|500] "deg" EON
|
||||
SG_ STEER_ANGLE_RATE : 23|16@0- (-1,0) [-3000|3000] "deg/s" EON
|
||||
SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
|
||||
CM_ "Imported file _steering_control_d_ext.dbc starts here";
|
||||
BO_ 228 STEERING_CONTROL: 5 ADAS
|
||||
SG_ STEER_TORQUE : 7|16@0- (1,0) [-3840|3840] "" EPS
|
||||
SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS
|
||||
SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS
|
||||
SG_ SET_ME_X00_2 : 31|8@0+ (1,0) [0|0] "" EPS
|
||||
SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS
|
||||
SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" EPS
|
||||
|
||||
BO_ 400 STEER_STATUS: 5 EPS
|
||||
SG_ STEER_TORQUE_SENSOR : 0|9@1- (1,0) [-256|256] "" XXX
|
||||
SG_ LIN_INTERFACE_FATAL_ERROR : 10|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LATE_MESSAGE : 11|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STEER_STATUS : 12|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 35|4@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ LKAS_ALLOWED : 9|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STEER_APPLIED : 23|16@0- (1,0) [0|511] "" XXX
|
||||
|
||||
VAL_ 400 STEER_STATUS 7 "permanent_fault" 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 1 "driver_steering" 0 "normal" ;
|
||||
|
||||
CM_ "honda_accord_2017_can_ext.dbc starts here";
|
||||
|
||||
BO_ 392 GEARBOX_AUTO: 6 XXX
|
||||
SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ GEAR_SHIFTER : 27|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ GEAR : 36|5@0+ (1,0) [0|31] "" EON
|
||||
|
||||
BO_ 401 GEARBOX_CVT: 8 PCM
|
||||
SG_ SELECTED_P : 0|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SELECTED_R : 1|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SELECTED_N : 2|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SELECTED_D : 3|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FORWARD_DRIVING_MODE : 23|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CVT_UNKNOWN_1 : 31|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ CVT_UNKNOWN_2 : 39|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ GEAR_SHIFTER : 44|5@0+ (1,0) [0|31] "" XXX
|
||||
SG_ SHIFTER_POSITION_VALID : 45|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ NOT_FORWARD_GEAR : 48|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CVT_UNKNOWN_3 : 53|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
VAL_ 392 GEAR_SHIFTER 0 "S" 1 "P" 2 "R" 4 "N" 8 "D" ;
|
||||
VAL_ 392 GEAR 26 "S" 4 "D" 3 "N" 2 "R" 1 "P" ;
|
||||
VAL_ 401 GEAR_SHIFTER 1 "P" 2 "R" 3 "N" 4 "D" 7 "L" 10 "S";
|
||||
|
||||
CM_ SG_ 401 CVT_UNKNOWN_1 "Probably measured/actual CVT ratio";
|
||||
CM_ SG_ 401 CVT_UNKNOWN_2 "Probably target/commanded CVT ratio";
|
||||
@@ -1,6 +1,24 @@
|
||||
CM_ "AUTOGENERATED FILE, DO NOT EDIT";
|
||||
|
||||
|
||||
CM_ "Imported file _community.dbc starts here";
|
||||
BO_ 512 GAS_COMMAND: 6 EON
|
||||
SG_ GAS_COMMAND : 7|16@0+ (0.253984064,-83.3) [0|1] "" INTERCEPTOR
|
||||
SG_ GAS_COMMAND2 : 23|16@0+ (0.126992032,-83.3) [0|1] "" INTERCEPTOR
|
||||
SG_ ENABLE : 39|1@0+ (1,0) [0|1] "" INTERCEPTOR
|
||||
SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" INTERCEPTOR
|
||||
SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" INTERCEPTOR
|
||||
|
||||
BO_ 513 GAS_SENSOR: 6 INTERCEPTOR
|
||||
SG_ INTERCEPTOR_GAS : 7|16@0+ (1,0) [0|1] "" EON
|
||||
SG_ INTERCEPTOR_GAS2 : 23|16@0+ (1,0) [0|1] "" EON
|
||||
SG_ STATE : 39|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" EON
|
||||
|
||||
VAL_ 513 STATE 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ;
|
||||
|
||||
|
||||
CM_ "Imported file _honda_common.dbc starts here";
|
||||
BO_ 145 KINEMATICS_ALT: 8 XXX
|
||||
SG_ LAT_ACCEL : 7|10@0+ (0.02,-512) [-20|20] "m/s2" EON
|
||||
|
||||
@@ -1,6 +1,24 @@
|
||||
CM_ "AUTOGENERATED FILE, DO NOT EDIT";
|
||||
|
||||
|
||||
CM_ "Imported file _community.dbc starts here";
|
||||
BO_ 512 GAS_COMMAND: 6 EON
|
||||
SG_ GAS_COMMAND : 7|16@0+ (0.253984064,-83.3) [0|1] "" INTERCEPTOR
|
||||
SG_ GAS_COMMAND2 : 23|16@0+ (0.126992032,-83.3) [0|1] "" INTERCEPTOR
|
||||
SG_ ENABLE : 39|1@0+ (1,0) [0|1] "" INTERCEPTOR
|
||||
SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" INTERCEPTOR
|
||||
SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" INTERCEPTOR
|
||||
|
||||
BO_ 513 GAS_SENSOR: 6 INTERCEPTOR
|
||||
SG_ INTERCEPTOR_GAS : 7|16@0+ (1,0) [0|1] "" EON
|
||||
SG_ INTERCEPTOR_GAS2 : 23|16@0+ (1,0) [0|1] "" EON
|
||||
SG_ STATE : 39|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" EON
|
||||
|
||||
VAL_ 513 STATE 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ;
|
||||
|
||||
|
||||
CM_ "Imported file _honda_common.dbc starts here";
|
||||
BO_ 145 KINEMATICS_ALT: 8 XXX
|
||||
SG_ LAT_ACCEL : 7|10@0+ (0.02,-512) [-20|20] "m/s2" EON
|
||||
|
||||
@@ -1,6 +1,24 @@
|
||||
CM_ "AUTOGENERATED FILE, DO NOT EDIT";
|
||||
|
||||
|
||||
CM_ "Imported file _community.dbc starts here";
|
||||
BO_ 512 GAS_COMMAND: 6 EON
|
||||
SG_ GAS_COMMAND : 7|16@0+ (0.253984064,-83.3) [0|1] "" INTERCEPTOR
|
||||
SG_ GAS_COMMAND2 : 23|16@0+ (0.126992032,-83.3) [0|1] "" INTERCEPTOR
|
||||
SG_ ENABLE : 39|1@0+ (1,0) [0|1] "" INTERCEPTOR
|
||||
SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" INTERCEPTOR
|
||||
SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" INTERCEPTOR
|
||||
|
||||
BO_ 513 GAS_SENSOR: 6 INTERCEPTOR
|
||||
SG_ INTERCEPTOR_GAS : 7|16@0+ (1,0) [0|1] "" EON
|
||||
SG_ INTERCEPTOR_GAS2 : 23|16@0+ (1,0) [0|1] "" EON
|
||||
SG_ STATE : 39|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" EON
|
||||
|
||||
VAL_ 513 STATE 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ;
|
||||
|
||||
|
||||
CM_ "Imported file _honda_common.dbc starts here";
|
||||
BO_ 145 KINEMATICS_ALT: 8 XXX
|
||||
SG_ LAT_ACCEL : 7|10@0+ (0.02,-512) [-20|20] "m/s2" EON
|
||||
|
||||
@@ -0,0 +1,570 @@
|
||||
CM_ "AUTOGENERATED FILE, DO NOT EDIT";
|
||||
|
||||
|
||||
CM_ "Imported file _honda_common.dbc starts here";
|
||||
BO_ 145 KINEMATICS_ALT: 8 XXX
|
||||
SG_ LAT_ACCEL : 7|10@0+ (0.02,-512) [-20|20] "m/s2" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 148 KINEMATICS: 8 XXX
|
||||
SG_ LAT_ACCEL : 7|10@0+ (0.02,-512) [-20|20] "m/s2" EON
|
||||
SG_ LONG_ACCEL : 24|9@0- (-0.02,0) [-20|20] "m/s2" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 304 GAS_PEDAL_2: 8 PCM
|
||||
SG_ ENGINE_TORQUE_ESTIMATE : 7|16@0- (1,0) [-1000|1000] "Nm" EON
|
||||
SG_ ENGINE_TORQUE_REQUEST : 23|16@0- (1,0) [-1000|1000] "Nm" EON
|
||||
SG_ CAR_GAS : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 316 GAS_PEDAL: 8 PCM
|
||||
SG_ CAR_GAS : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 344 ENGINE_DATA: 8 PCM
|
||||
SG_ XMISSION_SPEED : 7|16@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ ENGINE_RPM : 23|16@0+ (1,0) [0|15000] "rpm" EON
|
||||
SG_ XMISSION_SPEED2 : 39|16@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ ODOMETER : 55|8@0+ (10,0) [0|2550] "m" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 380 POWERTRAIN_DATA: 8 PCM
|
||||
SG_ PEDAL_GAS : 7|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ ENGINE_RPM : 23|16@0+ (1,0) [0|15000] "rpm" EON
|
||||
SG_ GAS_PRESSED : 39|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ ACC_STATUS : 38|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BOH_17C : 37|5@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_SWITCH : 32|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BOH2_17C : 47|10@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_PRESSED : 53|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BOH3_17C : 52|5@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 388 HYBRID_BRAKE_ERROR: 8 XXX
|
||||
SG_ BRAKE_ERROR_1 : 32|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_ERROR_2 : 34|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 420 VSA_STATUS: 8 VSA
|
||||
SG_ USER_BRAKE : 7|16@0+ (0.015625,-1.609375) [0|1000] "" EON
|
||||
SG_ COMPUTER_BRAKING : 23|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ ESP_DISABLED : 28|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_HOLD_RELATED : 52|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ BRAKE_HOLD_ACTIVE : 46|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_HOLD_ENABLED : 45|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 427 STEER_MOTOR_TORQUE: 3 EPS
|
||||
SG_ CONFIG_VALID : 7|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ MOTOR_TORQUE : 1|10@0+ (1,0) [0|256] "" EON
|
||||
SG_ OUTPUT_DISABLED : 22|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 21|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 19|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 450 EPB_STATUS: 8 XXX
|
||||
SG_ EPB_BRAKE_AND_PULL : 6|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ EPB_ACTIVE : 3|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ EPB_STATE : 29|2@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 464 WHEEL_SPEEDS: 8 VSA
|
||||
SG_ WHEEL_SPEED_FL : 7|15@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ WHEEL_SPEED_FR : 8|15@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ WHEEL_SPEED_RL : 25|15@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ WHEEL_SPEED_RR : 42|15@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 490 VEHICLE_DYNAMICS: 8 VSA
|
||||
SG_ LAT_ACCEL : 7|16@0- (0.0015,0) [-20|20] "m/s2" EON
|
||||
SG_ LONG_ACCEL : 23|16@0- (0.0015,0) [-20|20] "m/s2" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 597 ROUGH_WHEEL_SPEED: 8 VSA
|
||||
SG_ WHEEL_SPEED_FL : 7|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ WHEEL_SPEED_FR : 15|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ WHEEL_SPEED_RL : 23|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ WHEEL_SPEED_RR : 31|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ SET_TO_X55 : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ SET_TO_X55_2 : 47|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ LONG_COUNTER : 55|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 773 SEATBELT_STATUS: 7 BDY
|
||||
SG_ SEATBELT_DRIVER_LAMP : 7|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ SEATBELT_PASS_UNLATCHED : 10|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ SEATBELT_PASS_LATCHED : 11|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ SEATBELT_DRIVER_UNLATCHED : 12|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ SEATBELT_DRIVER_LATCHED : 13|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ PASS_AIRBAG_OFF : 14|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ PASS_AIRBAG_ON : 15|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 777 CAR_SPEED: 8 PCM
|
||||
SG_ ROUGH_CAR_SPEED : 23|8@0+ (1,0) [0|255] "mph" XXX
|
||||
SG_ CAR_SPEED : 7|16@0+ (0.01,0) [0|65535] "kph" XXX
|
||||
SG_ ROUGH_CAR_SPEED_3 : 39|16@0+ (0.01,0) [0|65535] "kph" XXX
|
||||
SG_ ROUGH_CAR_SPEED_2 : 31|8@0+ (1,0) [0|255] "mph" XXX
|
||||
SG_ LOCK_STATUS : 55|2@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ IMPERIAL_UNIT : 63|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 780 ACC_HUD: 8 ADAS
|
||||
SG_ PCM_SPEED : 7|16@0+ (0.01,0) [0|250] "kph" BDY
|
||||
SG_ PCM_GAS : 23|8@0+ (1,0) [0|127] "" BDY
|
||||
SG_ CRUISE_SPEED : 31|8@0+ (1,0) [0|255] "kph" BDY
|
||||
SG_ DTC_MODE : 39|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ BRAKE_SYSTEM_ICON : 38|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ ACC_PROBLEM : 37|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ FCM_OFF : 35|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ FCM_OFF_2 : 36|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ FCM_PROBLEM : 34|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RADAR_OBSTRUCTED : 33|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ ENABLE_MINI_CAR : 32|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ HUD_DISTANCE : 47|2@0+ (1,0) [0|3] "" BDY
|
||||
SG_ HUD_LEAD : 45|2@0+ (1,0) [0|3] "" BDY
|
||||
SG_ BOH_3 : 43|1@0+ (1,0) [0|3] "" BDY
|
||||
SG_ BOH_4 : 42|1@0+ (1,0) [0|3] "" BDY
|
||||
SG_ BOH_5 : 41|1@0+ (1,0) [0|3] "" BDY
|
||||
SG_ CRUISE_CONTROL_LABEL : 40|1@0+ (1,0) [0|3] "" BDY
|
||||
SG_ SET_ME_X01_2 : 55|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ IMPERIAL_UNIT : 54|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ ACC_ON : 52|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ CHIME : 51|3@0+ (1,0) [0|1] "" BDY
|
||||
SG_ SET_ME_X01 : 48|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ ICONS : 63|2@0+ (1,0) [0|1] "" BDY
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" BDY
|
||||
|
||||
BO_ 804 CRUISE: 8 PCM
|
||||
SG_ HUD_SPEED_KPH : 7|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ HUD_SPEED_MPH : 15|8@0+ (1,0) [0|255] "mph" EON
|
||||
SG_ TRIP_FUEL_CONSUMED : 23|16@0+ (1,0) [0|255] "" EON
|
||||
SG_ CRUISE_SPEED_PCM : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ BOH2 : 47|8@0- (1,0) [0|255] "" EON
|
||||
SG_ BOH3 : 55|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 862 CAMERA_MESSAGES: 8 CAM
|
||||
SG_ ZEROS_BOH : 7|16@0+ (1,0) [0|127] "" BDY
|
||||
SG_ SPEED_LIMIT_SIGN : 23|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ ROAD_SIGN : 31|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ ZEROS_BOH_2 : 51|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ HIGHBEAMS_ON : 52|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ AUTO_HIGHBEAMS_ACTIVE : 53|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 884 STALK_STATUS: 8 XXX
|
||||
SG_ DASHBOARD_ALERT : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ AUTO_HEADLIGHTS : 46|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ HIGH_BEAM_HOLD : 47|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ HIGH_BEAM_FLASH : 45|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ HEADLIGHTS_ON : 54|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ WIPER_SWITCH : 53|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 891 STALK_STATUS_2: 8 XXX
|
||||
SG_ WIPERS : 17|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ LOW_BEAMS : 35|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ HIGH_BEAMS : 34|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ PARK_LIGHTS : 36|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 1029 DOORS_STATUS: 8 BDY
|
||||
SG_ DOOR_OPEN_FL : 37|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ DOOR_OPEN_FR : 38|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ DOOR_OPEN_RL : 39|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ DOOR_OPEN_RR : 40|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ TRUNK_OPEN : 41|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 1302 ODOMETER: 8 XXX
|
||||
SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
CM_ SG_ 304 "Seems to be platform-agnostic";
|
||||
CM_ SG_ 316 "Should exist on Nidec";
|
||||
CM_ SG_ 420 BRAKE_HOLD_RELATED "On when Brake Hold engaged";
|
||||
CM_ SG_ 490 LONG_ACCEL "wheel speed derivative, noisy and zero snapping";
|
||||
CM_ SG_ 773 PASS_AIRBAG_ON "Might just be indicator light";
|
||||
CM_ SG_ 773 PASS_AIRBAG_OFF "Might just be indicator light";
|
||||
CM_ SG_ 780 CRUISE_SPEED "255 = no speed";
|
||||
CM_ SG_ 780 PCM_SPEED "Used by Nidec";
|
||||
CM_ SG_ 780 PCM_GAS "Used by Nidec";
|
||||
CM_ SG_ 804 CRUISE_SPEED_PCM "255 = no speed";
|
||||
|
||||
VAL_ 450 EPB_STATE 3 "engaged" 2 "disengaging" 1 "engaging" 0 "disengaged" ;
|
||||
VAL_ 780 CRUISE_SPEED 255 "no_speed" 252 "stopped";
|
||||
VAL_ 780 HUD_LEAD 3 "acc_off" 2 "solid_car" 1 "dashed_car" 0 "no_car";
|
||||
VAL_ 884 DASHBOARD_ALERT 0 "none" 51 "acc_problem" 55 "cmbs_problem" 75 "key_not_detected" 79 "fasten_seatbelt" 111 "lkas_problem" 131 "brake_system_problem" 132 "brake_hold_problem" 139 "tbd" 161 "door_open";
|
||||
VAL_ 891 WIPERS 4 "High" 2 "Low" 0 "Off";
|
||||
|
||||
|
||||
CM_ "Imported file _bosch_2018.dbc starts here";
|
||||
BO_ 228 STEERING_CONTROL: 5 EON
|
||||
SG_ STEER_TORQUE : 7|16@0- (1,0) [-4096|4096] "" EPS
|
||||
SG_ DRIVER_OVERRIDE : 17|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS
|
||||
SG_ CONTROL_STATE : 26|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" EPS
|
||||
SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS
|
||||
SG_ STEER_DOWN_TO_ZERO : 38|1@0+ (1,0) [0|1] "" EPS
|
||||
SG_ HAPTIC_WARNING : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 229 BOSCH_SUPPLEMENTAL_1: 8 XXX
|
||||
SG_ SET_ME_X04 : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SET_ME_X00 : 8|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SET_ME_X80 : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SET_ME_X10 : 24|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX
|
||||
|
||||
BO_ 232 BRAKE_HOLD: 7 XXX
|
||||
SG_ XMISSION_SPEED : 7|14@0- (1,0) [1|0] "" XXX
|
||||
SG_ COMPUTER_BRAKE : 39|16@0+ (1,0) [0|0] "" XXX
|
||||
SG_ COMPUTER_BRAKE_REQUEST : 29|1@0+ (1,0) [0|0] "" XXX
|
||||
SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" XXX
|
||||
|
||||
BO_ 399 STEER_STATUS: 7 EPS
|
||||
SG_ STEER_TORQUE_SENSOR : 7|16@0- (-1,0) [-31000|31000] "tbd" EON
|
||||
SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON
|
||||
SG_ STEER_STATUS : 39|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ STEER_CONTROL_ACTIVE : 35|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ STEER_CONFIG_INDEX : 43|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 446 BRAKE_MODULE: 3 VSA
|
||||
SG_ BRAKE_PRESSED : 4|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CRUISE_FAULT : 22|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ COUNTER : 21|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 19|4@0+ (1,0) [0|15] "" XXX
|
||||
|
||||
BO_ 506 LEGACY_BRAKE_COMMAND: 8 ADAS
|
||||
SG_ CHIME : 40|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 545 ECON_STATUS: 6 SCM
|
||||
SG_ ECON_ON : 23|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DRIVE_MODE : 37|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" BDY
|
||||
SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" BDY
|
||||
|
||||
BO_ 576 LEFT_LANE_LINE_1: 8 CAM
|
||||
SG_ LINE_DISTANCE_VISIBLE : 39|9@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LINE_PROBABILITY : 46|6@0+ (0.015625,0) [0|1] "" XXX
|
||||
SG_ LINE_OFFSET : 23|12@0+ (0.004,-8.192) [0|1] "Meters" XXX
|
||||
SG_ LINE_ANGLE : 7|12@0+ (0.0005,-1.024) [0|1] "" XXX
|
||||
SG_ FRAME_INDEX : 8|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 577 LEFT_LANE_LINE_2: 8 CAM
|
||||
SG_ LINE_FAR_EDGE_POSITION : 55|8@0+ (1,-128) [0|1] "" XXX
|
||||
SG_ LINE_SOLID : 13|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LINE_DASHED : 14|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LINE_CURVATURE : 23|12@0+ (0.00001,-0.02048) [0|1] "" XXX
|
||||
SG_ LINE_PARAMETER : 39|12@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FRAME_INDEX : 7|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 579 RIGHT_LANE_LINE_1: 8 CAM
|
||||
SG_ LINE_DISTANCE_VISIBLE : 39|9@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LINE_PROBABILITY : 46|6@0+ (0.015625,0) [0|1] "" XXX
|
||||
SG_ LINE_OFFSET : 23|12@0+ (0.004,-8.192) [0|1] "Meters" XXX
|
||||
SG_ LINE_ANGLE : 7|12@0+ (0.0005,-1.024) [0|1] "" XXX
|
||||
SG_ FRAME_INDEX : 8|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 580 RIGHT_LANE_LINE_2: 8 CAM
|
||||
SG_ LINE_FAR_EDGE_POSITION : 55|8@0+ (1,-128) [0|1] "" XXX
|
||||
SG_ LINE_SOLID : 13|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LINE_DASHED : 14|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LINE_CURVATURE : 23|12@0+ (0.00001,-0.02048) [0|1] "" XXX
|
||||
SG_ LINE_PARAMETER : 39|12@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FRAME_INDEX : 7|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 582 ADJACENT_LEFT_LANE_LINE_1: 8 CAM
|
||||
SG_ LINE_DISTANCE_VISIBLE : 39|9@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LINE_PROBABILITY : 46|6@0+ (0.015625,0) [0|1] "" XXX
|
||||
SG_ LINE_OFFSET : 23|12@0+ (0.004,-8.192) [0|1] "Meters" XXX
|
||||
SG_ LINE_ANGLE : 7|12@0+ (0.0005,-1.024) [0|1] "" XXX
|
||||
SG_ FRAME_INDEX : 8|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 583 ADJACENT_LEFT_LANE_LINE_2: 8 CAM
|
||||
SG_ LINE_FAR_EDGE_POSITION : 55|8@0+ (1,-128) [0|1] "" XXX
|
||||
SG_ LINE_SOLID : 13|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LINE_DASHED : 14|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LINE_CURVATURE : 23|12@0+ (0.00001,-0.02048) [0|1] "" XXX
|
||||
SG_ LINE_PARAMETER : 39|12@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FRAME_INDEX : 7|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 585 ADJACENT_RIGHT_LANE_LINE_1: 8 CAM
|
||||
SG_ LINE_DISTANCE_VISIBLE : 39|9@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LINE_PROBABILITY : 46|6@0+ (0.015625,0) [0|1] "" XXX
|
||||
SG_ LINE_OFFSET : 23|12@0+ (0.004,-8.192) [0|1] "Meters" XXX
|
||||
SG_ LINE_ANGLE : 7|12@0+ (0.0005,-1.024) [0|1] "" XXX
|
||||
SG_ FRAME_INDEX : 8|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 586 ADJACENT_RIGHT_LANE_LINE_2: 8 CAM
|
||||
SG_ LINE_FAR_EDGE_POSITION : 55|8@0+ (1,-128) [0|1] "" XXX
|
||||
SG_ LINE_SOLID : 13|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LINE_DASHED : 14|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LINE_CURVATURE : 23|12@0+ (0.00001,-0.02048) [0|1] "" XXX
|
||||
SG_ LINE_PARAMETER : 39|12@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FRAME_INDEX : 7|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 662 SCM_BUTTONS: 4 SCM
|
||||
SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON
|
||||
SG_ CRUISE_SETTING : 3|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 29|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 27|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 806 SCM_FEEDBACK: 8 SCM
|
||||
SG_ DRIVERS_DOOR_OPEN : 17|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REVERSE_LIGHT : 18|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ PARKING_BRAKE_ON : 29|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ MAIN_ON : 28|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ RIGHT_BLINKER : 27|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ LEFT_BLINKER : 26|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ CMBS_STATES : 22|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX
|
||||
|
||||
BO_ 927 RADAR_HUD: 8 RADAR
|
||||
SG_ ZEROS_BOH : 7|10@0+ (1,0) [0|127] "" BDY
|
||||
SG_ CMBS_OFF : 12|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RESUME_INSTRUCTION : 21|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SET_TO_1 : 13|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ ZEROS_BOH2 : 11|4@0+ (1,0) [0|1] "" XXX
|
||||
SG_ APPLY_BRAKES_FOR_CANC : 23|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ACC_ALERTS : 20|5@0+ (1,0) [0|1] "" BDY
|
||||
SG_ SET_TO_0 : 22|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ HUD_LEAD : 40|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SET_TO_64 : 31|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ LEAD_DISTANCE : 39|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ ZEROS_BOH3 : 47|7@0+ (1,0) [0|127] "" XXX
|
||||
SG_ ZEROS_BOH4 : 55|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX
|
||||
|
||||
BO_ 13274 LKAS_HUD_A: 5 ADAS
|
||||
SG_ LKAS_READY : 0|1@0+ (1,0) [0|127] "" BDY
|
||||
SG_ LKAS_STATE_CHANGE : 6|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CAM_TEMP_HIGH : 7|1@0+ (1,0) [0|255] "" BDY
|
||||
SG_ DASHED_LANES : 14|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ DTC : 13|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ LKAS_PROBLEM : 12|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ LKAS_OFF : 11|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ SOLID_LANES : 10|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ CLEAN_WINDSHIELD : 26|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ STEERING_REQUIRED : 8|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ BEEP : 17|2@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_PROBLEM : 21|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_HUD : 9|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_HUD_2 : 23|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ RDM_OFF : 27|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_ON : 20|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ RDM_ON_2 : 28|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ LANE_ASSIST_BEEP_OFF : 30|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" BDY
|
||||
SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" BDY
|
||||
|
||||
BO_ 13275 LKAS_HUD_B: 8 ADAS
|
||||
SG_ LKAS_READY : 0|1@0+ (1,0) [0|127] "" BDY
|
||||
SG_ LKAS_STATE_CHANGE : 6|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CAM_TEMP_HIGH : 7|1@0+ (1,0) [0|255] "" BDY
|
||||
SG_ DASHED_LANES : 14|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ DTC : 13|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ LKAS_PROBLEM : 12|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ LKAS_OFF : 11|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ SOLID_LANES : 10|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ CLEAN_WINDSHIELD : 26|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ STEERING_REQUIRED : 8|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ BEEP : 17|2@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_PROBLEM : 21|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_HUD : 9|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_HUD_2 : 23|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ RDM_OFF : 27|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_ON : 20|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ RDM_ON_2 : 28|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ LANE_ASSIST_BEEP_OFF : 30|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LANE_LINES : 36|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" BDY
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY
|
||||
|
||||
CM_ SG_ 228 DRIVER_OVERRIDE "Appears to acknowledge STEER_STATUS.NO_TORQUE_ALERT_1";
|
||||
CM_ SG_ 576 LINE_DISTANCE_VISIBLE "Length of line visible, undecoded";
|
||||
CM_ SG_ 577 LINE_FAR_EDGE_POSITION "Appears to be a measure of line thickness, indicates location of the portion of the line furthest from the car, undecoded";
|
||||
CM_ SG_ 577 LINE_PARAMETER "Unclear if this is low quality line curvature rate or if this is something else, but it is correlated with line curvature, undecoded";
|
||||
CM_ SG_ 577 LINE_DASHED "1 = line is dashed";
|
||||
CM_ SG_ 577 LINE_SOLID "1 = line is solid";
|
||||
|
||||
VAL_ 228 CONTROL_STATE 0 "init" 1 "standby" 2 "lka_active" 3 "driver_override" 5 "rdm_active";
|
||||
VAL_ 399 STEER_STATUS 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 0 "normal";
|
||||
VAL_ 662 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ;
|
||||
VAL_ 662 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ;
|
||||
VAL_ 806 CMBS_STATES 3 "pressed" 0 "released" ;
|
||||
VAL_ 862 SPEED_LIMIT_SIGN 97 "SPEED_LIMIT_5" 98 "SPEED_LIMIT_10" 99 "SPEED_LIMIT_15" 100 "SPEED_LIMIT_20" 101 "SPEED_LIMIT_25" 102 "SPEED_LIMIT_30" 103 "SPEED_LIMIT_35" 104 "SPEED_LIMIT_40" 105 "SPEED_LIMIT_45" 106 "SPEED_LIMIT_50" 107 "SPEED_LIMIT_55" 108 "SPEED_LIMIT_60" 109 "SPEED_LIMIT_65" 110 "SPEED_LIMIT_70" 111 "SPEED_LIMIT_75" 112 "SPEED_LIMIT_80" 113 "SPEED_LIMIT_85" 125 "SPEED_LIMIT_NA" 0 "STOP_SIGN";
|
||||
VAL_ 862 ROAD_SIGN 0 "NO_SIGN" 89 "STOP_SIGN";
|
||||
|
||||
|
||||
CM_ "Imported file _bosch_radar_acc.dbc starts here";
|
||||
BO_ 479 ACC_CONTROL: 8 EON
|
||||
SG_ SET_TO_0 : 20|5@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CONTROL_ON : 23|3@0+ (1,0) [0|5] "" XXX
|
||||
SG_ GAS_COMMAND : 7|16@0- (1,0) [0|0] "" XXX
|
||||
SG_ ACCEL_COMMAND : 31|11@0- (0.01,0) [0|0] "m/s2" XXX
|
||||
SG_ BRAKE_LIGHTS : 62|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ BRAKE_REQUEST : 34|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STANDSTILL : 35|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STANDSTILL_RELEASE : 36|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ AEB_STATUS : 33|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ AEB_BRAKING : 47|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ AEB_PREPARE : 43|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX
|
||||
|
||||
BO_ 495 ACC_CONTROL_ON: 8 XXX
|
||||
SG_ SET_TO_75 : 31|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ SET_TO_30 : 39|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ ZEROS_BOH : 23|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ ZEROS_BOH2 : 47|16@0+ (1,0) [0|255] "" XXX
|
||||
SG_ SET_TO_FF : 15|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ SET_TO_3 : 6|7@0+ (1,0) [0|4095] "" XXX
|
||||
SG_ CONTROL_ON : 7|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
CM_ SG_ 479 CONTROL_ON "Set to 5 when car is being controlled";
|
||||
CM_ SG_ 479 AEB_STATUS "set for the duration of AEB event";
|
||||
CM_ SG_ 479 AEB_BRAKING "set when braking is commanded during AEB event";
|
||||
CM_ SG_ 479 AEB_PREPARE "set 1s before AEB";
|
||||
|
||||
|
||||
CM_ "Imported file _lkas_hud_8byte.dbc starts here";
|
||||
BO_ 829 LKAS_HUD: 8 ADAS
|
||||
SG_ LKAS_READY : 0|1@0+ (1,0) [0|127] "" BDY
|
||||
SG_ LKAS_STATE_CHANGE : 6|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CAM_TEMP_HIGH : 7|1@0+ (1,0) [0|255] "" BDY
|
||||
SG_ DASHED_LANES : 14|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ DTC : 13|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ LKAS_PROBLEM : 12|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ LKAS_OFF : 11|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ SOLID_LANES : 10|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ CLEAN_WINDSHIELD : 26|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ STEERING_REQUIRED : 8|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ BEEP : 17|2@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_PROBLEM : 21|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_HUD : 9|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_HUD_2 : 23|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ RDM_OFF : 27|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_ON : 20|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ RDM_ON_2 : 28|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ LANE_ASSIST_BEEP_OFF : 30|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LANE_LINES : 36|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
CM_ SG_ 829 BEEP "beeps are pleasant, chimes are for warnings etc...";
|
||||
CM_ SG_ 829 CAM_TEMP_HIGH "Some Driver Assist Systems Cannot Operate: Camera Temperature Too High";
|
||||
CM_ SG_ 829 CAMERA_OVERHEAT "Lane Keeping Assist Cannot Operate: Camera Too Hot";
|
||||
|
||||
VAL_ 829 BEEP 5 "solid_beep" 4 "double_beep" 3 "single_beep" 2 "triple_beep" 1 "repeated_beep" 0 "no_beep";
|
||||
VAL_ 829 LANE_LINES 7 "both_lines_green" 6 "both_lines_white" 2 "left_line_white" 0 "no_lines";
|
||||
|
||||
|
||||
CM_ "Imported file _bosch_standstill.dbc starts here";
|
||||
BO_ 432 STANDSTILL: 7 VSA
|
||||
SG_ CONTROLLED_STANDSTILL : 0|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ WHEELS_MOVING : 12|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_ERROR_1 : 11|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_ERROR_2 : 9|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
|
||||
CM_ "Imported file _steering_sensors_b.dbc starts here";
|
||||
BO_ 342 STEERING_SENSORS: 6 EPS
|
||||
SG_ STEER_ANGLE : 7|16@0- (-0.1,0) [-500|500] "deg" EON
|
||||
SG_ STEER_ANGLE_RATE : 23|16@0- (-1,0) [-3000|3000] "deg/s" EON
|
||||
SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
|
||||
CM_ "Imported file _gearbox_common.dbc starts here";
|
||||
BO_ 401 GEARBOX_CVT: 8 PCM
|
||||
SG_ SELECTED_P : 0|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SELECTED_R : 1|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SELECTED_N : 2|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SELECTED_D : 3|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FORWARD_DRIVING_MODE : 23|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CVT_UNKNOWN_1 : 31|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ CVT_UNKNOWN_2 : 39|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ GEAR_SHIFTER : 44|5@0+ (1,0) [0|31] "" XXX
|
||||
SG_ SHIFTER_POSITION_VALID : 45|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ NOT_FORWARD_GEAR : 48|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CVT_UNKNOWN_3 : 53|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 419 GEARBOX_AUTO: 8 PCM
|
||||
SG_ TRANS_SHIFT_ACTIVITY : 7|8@0+ (1,0) [0|256] "" EON
|
||||
SG_ TRANS_TARGET_GEAR : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ REGEN_STAGE_SELECTION : 14|3@0+ (1,0) [0|7] "Stage" XXX
|
||||
SG_ REGEN_MEMORY : 16|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FORWARD_DRIVING_MODE : 20|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ AUTO_UNKNOWN_1 : 27|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ AUTO_UNKNOWN_2 : 29|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ GEAR_SHIFTER : 35|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ REGEN_UNKNOWN : 50|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ AUTO_UNKNOWN_3 : 62|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
CM_ SG_ 401 CVT_UNKNOWN_1 "Probably measured/actual CVT ratio";
|
||||
CM_ SG_ 401 CVT_UNKNOWN_2 "Probably target/commanded CVT ratio";
|
||||
CM_ SG_ 419 TRANS_SHIFT_ACTIVITY "Tracks but trails TRANS_TARGET_GEAR with extra activity, probable solenoid activations or TC lockup";
|
||||
CM_ SG_ 419 REGEN_STAGE_SELECTION "Driver-selected regenerative braking threshold";
|
||||
CM_ SG_ 419 REGEN_MEMORY "Driver-selected persistence setting, M shown in instrument cluster";
|
||||
CM_ SG_ 419 REGEN_UNKNOWN "Both bits set when user enables regen, otherwise zero";
|
||||
|
||||
VAL_ 401 GEAR_SHIFTER 1 "P" 2 "R" 3 "N" 4 "D" 7 "L" 10 "S";
|
||||
VAL_ 419 GEAR_SHIFTER 1 "P" 2 "R" 3 "N" 4 "D" 7 "L" 10 "S";
|
||||
VAL_ 419 TRANS_TARGET_GEAR 0 "None / Neutral / Park" 1 "1st" 2 "2nd" 3 "3rd" 4 "4th" 5 "5th" 6 "6th" 7 "7th" 8 "8th" 9 "9th" 10 "10th" 13 "Reverse";
|
||||
VAL_ 419 REGEN_STAGE_SELECTION 0 "disabled" 1 "stage_1" 2 "stage_2" 3 "stage_3" 4 "stage_4" 5 "stage_5" 6 "stage_6";
|
||||
VAL_ 419 REGEN_MEMORY 0 "disabled" 1 "persistent";
|
||||
|
||||
CM_ "honda_e_advance_2020_can.dbc starts here";
|
||||
@@ -1,6 +1,24 @@
|
||||
CM_ "AUTOGENERATED FILE, DO NOT EDIT";
|
||||
|
||||
|
||||
CM_ "Imported file _community.dbc starts here";
|
||||
BO_ 512 GAS_COMMAND: 6 EON
|
||||
SG_ GAS_COMMAND : 7|16@0+ (0.253984064,-83.3) [0|1] "" INTERCEPTOR
|
||||
SG_ GAS_COMMAND2 : 23|16@0+ (0.126992032,-83.3) [0|1] "" INTERCEPTOR
|
||||
SG_ ENABLE : 39|1@0+ (1,0) [0|1] "" INTERCEPTOR
|
||||
SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" INTERCEPTOR
|
||||
SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" INTERCEPTOR
|
||||
|
||||
BO_ 513 GAS_SENSOR: 6 INTERCEPTOR
|
||||
SG_ INTERCEPTOR_GAS : 7|16@0+ (1,0) [0|1] "" EON
|
||||
SG_ INTERCEPTOR_GAS2 : 23|16@0+ (1,0) [0|1] "" EON
|
||||
SG_ STATE : 39|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" EON
|
||||
|
||||
VAL_ 513 STATE 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ;
|
||||
|
||||
|
||||
CM_ "Imported file _honda_common.dbc starts here";
|
||||
BO_ 145 KINEMATICS_ALT: 8 XXX
|
||||
SG_ LAT_ACCEL : 7|10@0+ (0.02,-512) [-20|20] "m/s2" EON
|
||||
|
||||
@@ -0,0 +1,440 @@
|
||||
CM_ "AUTOGENERATED FILE, DO NOT EDIT";
|
||||
|
||||
|
||||
CM_ "Imported file _community.dbc starts here";
|
||||
BO_ 512 GAS_COMMAND: 6 EON
|
||||
SG_ GAS_COMMAND : 7|16@0+ (0.253984064,-83.3) [0|1] "" INTERCEPTOR
|
||||
SG_ GAS_COMMAND2 : 23|16@0+ (0.126992032,-83.3) [0|1] "" INTERCEPTOR
|
||||
SG_ ENABLE : 39|1@0+ (1,0) [0|1] "" INTERCEPTOR
|
||||
SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" INTERCEPTOR
|
||||
SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" INTERCEPTOR
|
||||
|
||||
BO_ 513 GAS_SENSOR: 6 INTERCEPTOR
|
||||
SG_ INTERCEPTOR_GAS : 7|16@0+ (1,0) [0|1] "" EON
|
||||
SG_ INTERCEPTOR_GAS2 : 23|16@0+ (1,0) [0|1] "" EON
|
||||
SG_ STATE : 39|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" EON
|
||||
|
||||
VAL_ 513 STATE 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ;
|
||||
|
||||
|
||||
CM_ "Imported file _honda_common.dbc starts here";
|
||||
BO_ 145 KINEMATICS_ALT: 8 XXX
|
||||
SG_ LAT_ACCEL : 7|10@0+ (0.02,-512) [-20|20] "m/s2" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 148 KINEMATICS: 8 XXX
|
||||
SG_ LAT_ACCEL : 7|10@0+ (0.02,-512) [-20|20] "m/s2" EON
|
||||
SG_ LONG_ACCEL : 24|9@0- (-0.02,0) [-20|20] "m/s2" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 304 GAS_PEDAL_2: 8 PCM
|
||||
SG_ ENGINE_TORQUE_ESTIMATE : 7|16@0- (1,0) [-1000|1000] "Nm" EON
|
||||
SG_ ENGINE_TORQUE_REQUEST : 23|16@0- (1,0) [-1000|1000] "Nm" EON
|
||||
SG_ CAR_GAS : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 316 GAS_PEDAL: 8 PCM
|
||||
SG_ CAR_GAS : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 344 ENGINE_DATA: 8 PCM
|
||||
SG_ XMISSION_SPEED : 7|16@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ ENGINE_RPM : 23|16@0+ (1,0) [0|15000] "rpm" EON
|
||||
SG_ XMISSION_SPEED2 : 39|16@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ ODOMETER : 55|8@0+ (10,0) [0|2550] "m" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 380 POWERTRAIN_DATA: 8 PCM
|
||||
SG_ PEDAL_GAS : 7|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ ENGINE_RPM : 23|16@0+ (1,0) [0|15000] "rpm" EON
|
||||
SG_ GAS_PRESSED : 39|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ ACC_STATUS : 38|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BOH_17C : 37|5@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_SWITCH : 32|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BOH2_17C : 47|10@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_PRESSED : 53|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BOH3_17C : 52|5@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 388 HYBRID_BRAKE_ERROR: 8 XXX
|
||||
SG_ BRAKE_ERROR_1 : 32|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_ERROR_2 : 34|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 420 VSA_STATUS: 8 VSA
|
||||
SG_ USER_BRAKE : 7|16@0+ (0.015625,-1.609375) [0|1000] "" EON
|
||||
SG_ COMPUTER_BRAKING : 23|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ ESP_DISABLED : 28|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_HOLD_RELATED : 52|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ BRAKE_HOLD_ACTIVE : 46|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_HOLD_ENABLED : 45|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 427 STEER_MOTOR_TORQUE: 3 EPS
|
||||
SG_ CONFIG_VALID : 7|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ MOTOR_TORQUE : 1|10@0+ (1,0) [0|256] "" EON
|
||||
SG_ OUTPUT_DISABLED : 22|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 21|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 19|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 450 EPB_STATUS: 8 XXX
|
||||
SG_ EPB_BRAKE_AND_PULL : 6|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ EPB_ACTIVE : 3|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ EPB_STATE : 29|2@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 464 WHEEL_SPEEDS: 8 VSA
|
||||
SG_ WHEEL_SPEED_FL : 7|15@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ WHEEL_SPEED_FR : 8|15@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ WHEEL_SPEED_RL : 25|15@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ WHEEL_SPEED_RR : 42|15@0+ (0.01,0) [0|250] "kph" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 490 VEHICLE_DYNAMICS: 8 VSA
|
||||
SG_ LAT_ACCEL : 7|16@0- (0.0015,0) [-20|20] "m/s2" EON
|
||||
SG_ LONG_ACCEL : 23|16@0- (0.0015,0) [-20|20] "m/s2" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 597 ROUGH_WHEEL_SPEED: 8 VSA
|
||||
SG_ WHEEL_SPEED_FL : 7|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ WHEEL_SPEED_FR : 15|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ WHEEL_SPEED_RL : 23|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ WHEEL_SPEED_RR : 31|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ SET_TO_X55 : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ SET_TO_X55_2 : 47|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ LONG_COUNTER : 55|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 773 SEATBELT_STATUS: 7 BDY
|
||||
SG_ SEATBELT_DRIVER_LAMP : 7|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ SEATBELT_PASS_UNLATCHED : 10|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ SEATBELT_PASS_LATCHED : 11|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ SEATBELT_DRIVER_UNLATCHED : 12|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ SEATBELT_DRIVER_LATCHED : 13|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ PASS_AIRBAG_OFF : 14|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ PASS_AIRBAG_ON : 15|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 777 CAR_SPEED: 8 PCM
|
||||
SG_ ROUGH_CAR_SPEED : 23|8@0+ (1,0) [0|255] "mph" XXX
|
||||
SG_ CAR_SPEED : 7|16@0+ (0.01,0) [0|65535] "kph" XXX
|
||||
SG_ ROUGH_CAR_SPEED_3 : 39|16@0+ (0.01,0) [0|65535] "kph" XXX
|
||||
SG_ ROUGH_CAR_SPEED_2 : 31|8@0+ (1,0) [0|255] "mph" XXX
|
||||
SG_ LOCK_STATUS : 55|2@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ IMPERIAL_UNIT : 63|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 780 ACC_HUD: 8 ADAS
|
||||
SG_ PCM_SPEED : 7|16@0+ (0.01,0) [0|250] "kph" BDY
|
||||
SG_ PCM_GAS : 23|8@0+ (1,0) [0|127] "" BDY
|
||||
SG_ CRUISE_SPEED : 31|8@0+ (1,0) [0|255] "kph" BDY
|
||||
SG_ DTC_MODE : 39|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ BRAKE_SYSTEM_ICON : 38|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ ACC_PROBLEM : 37|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ FCM_OFF : 35|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ FCM_OFF_2 : 36|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ FCM_PROBLEM : 34|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RADAR_OBSTRUCTED : 33|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ ENABLE_MINI_CAR : 32|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ HUD_DISTANCE : 47|2@0+ (1,0) [0|3] "" BDY
|
||||
SG_ HUD_LEAD : 45|2@0+ (1,0) [0|3] "" BDY
|
||||
SG_ BOH_3 : 43|1@0+ (1,0) [0|3] "" BDY
|
||||
SG_ BOH_4 : 42|1@0+ (1,0) [0|3] "" BDY
|
||||
SG_ BOH_5 : 41|1@0+ (1,0) [0|3] "" BDY
|
||||
SG_ CRUISE_CONTROL_LABEL : 40|1@0+ (1,0) [0|3] "" BDY
|
||||
SG_ SET_ME_X01_2 : 55|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ IMPERIAL_UNIT : 54|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ ACC_ON : 52|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ CHIME : 51|3@0+ (1,0) [0|1] "" BDY
|
||||
SG_ SET_ME_X01 : 48|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ ICONS : 63|2@0+ (1,0) [0|1] "" BDY
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" BDY
|
||||
|
||||
BO_ 804 CRUISE: 8 PCM
|
||||
SG_ HUD_SPEED_KPH : 7|8@0+ (1,0) [0|255] "kph" EON
|
||||
SG_ HUD_SPEED_MPH : 15|8@0+ (1,0) [0|255] "mph" EON
|
||||
SG_ TRIP_FUEL_CONSUMED : 23|16@0+ (1,0) [0|255] "" EON
|
||||
SG_ CRUISE_SPEED_PCM : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ BOH2 : 47|8@0- (1,0) [0|255] "" EON
|
||||
SG_ BOH3 : 55|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 862 CAMERA_MESSAGES: 8 CAM
|
||||
SG_ ZEROS_BOH : 7|16@0+ (1,0) [0|127] "" BDY
|
||||
SG_ SPEED_LIMIT_SIGN : 23|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ ROAD_SIGN : 31|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ ZEROS_BOH_2 : 51|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ HIGHBEAMS_ON : 52|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ AUTO_HIGHBEAMS_ACTIVE : 53|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 884 STALK_STATUS: 8 XXX
|
||||
SG_ DASHBOARD_ALERT : 39|8@0+ (1,0) [0|255] "" EON
|
||||
SG_ AUTO_HEADLIGHTS : 46|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ HIGH_BEAM_HOLD : 47|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ HIGH_BEAM_FLASH : 45|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ HEADLIGHTS_ON : 54|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ WIPER_SWITCH : 53|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 891 STALK_STATUS_2: 8 XXX
|
||||
SG_ WIPERS : 17|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ LOW_BEAMS : 35|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ HIGH_BEAMS : 34|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ PARK_LIGHTS : 36|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 1029 DOORS_STATUS: 8 BDY
|
||||
SG_ DOOR_OPEN_FL : 37|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ DOOR_OPEN_FR : 38|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ DOOR_OPEN_RL : 39|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ DOOR_OPEN_RR : 40|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ TRUNK_OPEN : 41|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 1302 ODOMETER: 8 XXX
|
||||
SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
CM_ SG_ 304 "Seems to be platform-agnostic";
|
||||
CM_ SG_ 316 "Should exist on Nidec";
|
||||
CM_ SG_ 420 BRAKE_HOLD_RELATED "On when Brake Hold engaged";
|
||||
CM_ SG_ 490 LONG_ACCEL "wheel speed derivative, noisy and zero snapping";
|
||||
CM_ SG_ 773 PASS_AIRBAG_ON "Might just be indicator light";
|
||||
CM_ SG_ 773 PASS_AIRBAG_OFF "Might just be indicator light";
|
||||
CM_ SG_ 780 CRUISE_SPEED "255 = no speed";
|
||||
CM_ SG_ 780 PCM_SPEED "Used by Nidec";
|
||||
CM_ SG_ 780 PCM_GAS "Used by Nidec";
|
||||
CM_ SG_ 804 CRUISE_SPEED_PCM "255 = no speed";
|
||||
|
||||
VAL_ 450 EPB_STATE 3 "engaged" 2 "disengaging" 1 "engaging" 0 "disengaged" ;
|
||||
VAL_ 780 CRUISE_SPEED 255 "no_speed" 252 "stopped";
|
||||
VAL_ 780 HUD_LEAD 3 "acc_off" 2 "solid_car" 1 "dashed_car" 0 "no_car";
|
||||
VAL_ 884 DASHBOARD_ALERT 0 "none" 51 "acc_problem" 55 "cmbs_problem" 75 "key_not_detected" 79 "fasten_seatbelt" 111 "lkas_problem" 131 "brake_system_problem" 132 "brake_hold_problem" 139 "tbd" 161 "door_open";
|
||||
VAL_ 891 WIPERS 4 "High" 2 "Low" 0 "Off";
|
||||
|
||||
|
||||
CM_ "Imported file _nidec_common.dbc starts here";
|
||||
BO_ 432 STANDSTILL: 7 VSA
|
||||
SG_ CONTROLLED_STANDSTILL : 0|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ WHEELS_MOVING : 12|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_ERROR_1 : 11|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ BRAKE_ERROR_2 : 9|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 487 BRAKE_PRESSURE: 4 VSA
|
||||
SG_ BRAKE_PRESSURE1 : 7|10@0+ (0.015625,-103) [0|1000] "" EON
|
||||
SG_ BRAKE_PRESSURE2 : 9|10@0+ (0.015625,-103) [0|1000] "" EON
|
||||
SG_ CHECKSUM : 27|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER : 29|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 506 BRAKE_COMMAND: 8 ADAS
|
||||
SG_ COMPUTER_BRAKE : 7|10@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ BRAKE_PUMP_REQUEST : 8|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ BRAKE_PUMP_REQUEST_HYBRID : 11|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ SET_ME_X00 : 23|3@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ CRUISE_OVERRIDE : 20|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ SET_ME_X00_2 : 19|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ CRUISE_FAULT_CMD : 18|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ CRUISE_CANCEL_CMD : 17|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ COMPUTER_BRAKE_REQUEST : 16|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ SET_ME_1 : 31|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ AEB_REQ_1 : 29|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ AEB_REQ_2 : 26|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ BRAKE_LIGHTS : 39|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ CRUISE_STATES : 38|7@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ CHIME : 47|3@0+ (1,0) [0|7] "" EBCM
|
||||
SG_ SET_ME_X00_3 : 44|1@0+ (1,0) [0|1] "" EBCM
|
||||
SG_ FCW : 43|2@0+ (1,0) [0|3] "" EBCM
|
||||
SG_ AEB_STATUS : 41|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ COMPUTER_BRAKE_HYBRID : 55|10@0+ (1,0) [0|0] "" EBCM
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EBCM
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EBCM
|
||||
|
||||
BO_ 547 BRAKE_HOLD_HYBRID_ALT: 6 XXX
|
||||
SG_ BRAKE_HOLD_FAULT_BIT : 33|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ BRAKE_HOLD_ENABLED : 37|2@0+ (1,0) [0|7] "" XXX
|
||||
SG_ BRAKE_HOLD_ACTIVE : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 892 CRUISE_PARAMS: 8 PCM
|
||||
SG_ CRUISE_SPEED_OFFSET : 31|8@0- (0.1,0) [-128|127] "kph" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 927 RADAR_HUD: 8 ADAS
|
||||
SG_ ZEROS_BOH : 7|16@0+ (1,0) [0|127] "" BDY
|
||||
SG_ ACC_ALERTS : 20|5@0+ (1,0) [0|15] "" BDY
|
||||
SG_ RESUME_INSTRUCTION : 21|1@0+ (1,0) [0|15] "" BDY
|
||||
SG_ APPLY_BRAKES_FOR_CANC : 23|1@0+ (1,0) [0|15] "" BDY
|
||||
SG_ ZEROS_BOH2 : 31|8@0+ (1,0) [0|127] "" BDY
|
||||
SG_ LEAD_SPEED : 39|9@0+ (1,0) [0|127] "" BDY
|
||||
SG_ LEAD_DISTANCE : 46|8@0+ (1,0) [0|31] "" BDY
|
||||
SG_ ZEROS_BOH3 : 54|7@0+ (1,0) [0|127] "" BDY
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" BDY
|
||||
|
||||
CM_ SG_ 506 AEB_REQ_1 "set for duration of suspected AEB event";
|
||||
CM_ SG_ 506 COMPUTER_BRAKE_HYBRID "Used by Hybrid Nidec";
|
||||
CM_ SG_ 506 BRAKE_PUMP_REQUEST_HYBRID "Used by Hybrid Nidec";
|
||||
|
||||
VAL_ 506 FCW 3 "fcw" 2 "fcw" 1 "fcw" 0 "no_fcw";
|
||||
VAL_ 506 CHIME 4 "double_chime" 3 "single_chime" 2 "continuous_chime" 1 "repeating_chime" 0 "no_chime";
|
||||
VAL_ 506 AEB_STATUS 3 "aeb_prepare" 2 "aeb_ready" 1 "aeb_braking" 0 "no_aeb";
|
||||
VAL_ 927 ACC_ALERTS 29 "esp_active_acc_canceled" 10 "b_pedal_applied" 9 "speed_too_low" 8 "speed_too_high" 7 "p_brake_applied" 6 "gear_no_d" 5 "seatbelt" 4 "too_steep_downhill" 3 "too_steep_uphill" 2 "too_close" 1 "no_vehicle_ahead" ;
|
||||
VAL_ 927 LEAD_DISTANCE 254 "no lead";
|
||||
VAL_ 927 LEAD_SPEED 510 "no lead";
|
||||
|
||||
|
||||
CM_ "Imported file _lkas_hud_5byte.dbc starts here";
|
||||
BO_ 829 LKAS_HUD: 5 ADAS
|
||||
SG_ LKAS_READY : 0|1@0+ (1,0) [0|127] "" BDY
|
||||
SG_ LKAS_STATE_CHANGE : 6|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CAM_TEMP_HIGH : 7|1@0+ (1,0) [0|255] "" BDY
|
||||
SG_ DASHED_LANES : 14|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ DTC : 13|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ LKAS_PROBLEM : 12|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ LKAS_OFF : 11|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ SOLID_LANES : 10|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ CLEAN_WINDSHIELD : 26|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ STEERING_REQUIRED : 8|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ BEEP : 17|2@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_PROBLEM : 21|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_HUD : 9|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_HUD_2 : 23|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ RDM_OFF : 27|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ RDM_ON : 20|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ RDM_ON_2 : 28|1@0+ (1,0) [0|1] "" BDY
|
||||
SG_ LANE_ASSIST_BEEP_OFF : 30|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" BDY
|
||||
SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" BDY
|
||||
|
||||
|
||||
CM_ SG_ 829 BEEP "beeps are pleasant, chimes are for warnings etc...";
|
||||
CM_ SG_ 829 CAM_TEMP_HIGH "Some Driver Assist Systems Cannot Operate: Camera Temperature Too High";
|
||||
CM_ SG_ 829 CAMERA_OVERHEAT "Lane Keeping Assist Cannot Operate: Camera Too Hot";
|
||||
|
||||
VAL_ 829 BEEP 5 "solid_beep" 4 "double_beep" 3 "single_beep" 2 "triple_beep" 1 "repeated_beep" 0 "no_beep";
|
||||
|
||||
|
||||
CM_ "Imported file _nidec_scm_group_a.dbc starts here";
|
||||
BO_ 660 SCM_FEEDBACK: 8 SCM
|
||||
SG_ RIGHT_BLINKER : 6|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ LEFT_BLINKER : 5|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ WIPERS_SPEED : 4|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
BO_ 422 SCM_BUTTONS: 8 SCM
|
||||
SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON
|
||||
SG_ LIGHTS_SETTING : 1|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ PARKING_BRAKE_ON : 2|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ MAIN_ON : 47|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ CRUISE_SETTING : 43|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ DRIVERS_DOOR_OPEN : 63|1@0+ (1,0) [0|1] "" EON
|
||||
|
||||
VAL_ 422 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ;
|
||||
VAL_ 422 LIGHTS_SETTING 3 "high_beam" 2 "low_beam" 1 "position" 0 "no_lights" ;
|
||||
VAL_ 422 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ;
|
||||
|
||||
|
||||
CM_ "Imported file _steering_sensors_c.dbc starts here";
|
||||
CM_ "steer_angle_rate is negative vs _steering_sensors_b.dbc";
|
||||
|
||||
BO_ 342 STEERING_SENSORS: 6 EPS
|
||||
SG_ STEER_ANGLE : 7|16@0- (-0.1,0) [-500|500] "deg" EON
|
||||
SG_ STEER_ANGLE_RATE : 23|16@0- (1,0) [-3000|3000] "deg/s" EON
|
||||
SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" EON
|
||||
|
||||
|
||||
CM_ "Imported file _steering_control_c.dbc starts here";
|
||||
BO_ 404 STEERING_CONTROL: 4 EON
|
||||
SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS
|
||||
SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS
|
||||
SG_ COUNTER : 29|2@0+ (1,0) [0|15] "" EPS
|
||||
SG_ CHECKSUM : 27|4@0+ (1,0) [0|3] "" EPS
|
||||
SG_ STEER_TORQUE : 7|16@0- (-1,0) [-32767|32767] "" EPS
|
||||
|
||||
BO_ 399 STEER_STATUS: 7 EPS
|
||||
SG_ STEER_TORQUE_SENSOR : 7|16@0- (-1,0) [-2985|2985] "tbd" EON
|
||||
SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON
|
||||
SG_ STEER_STATUS : 43|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ STEER_CONTROL_ACTIVE : 35|1@0+ (1,0) [0|1] "" EON
|
||||
SG_ STEER_CONFIG_INDEX : 43|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
VAL_ 399 STEER_STATUS 7 "permanent_fault" 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 1 "driver_steering" 0 "normal" ;
|
||||
|
||||
|
||||
CM_ "Imported file _gearbox_common.dbc starts here";
|
||||
BO_ 401 GEARBOX_CVT: 8 PCM
|
||||
SG_ SELECTED_P : 0|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SELECTED_R : 1|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SELECTED_N : 2|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SELECTED_D : 3|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FORWARD_DRIVING_MODE : 23|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CVT_UNKNOWN_1 : 31|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ CVT_UNKNOWN_2 : 39|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ GEAR_SHIFTER : 44|5@0+ (1,0) [0|31] "" XXX
|
||||
SG_ SHIFTER_POSITION_VALID : 45|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ NOT_FORWARD_GEAR : 48|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CVT_UNKNOWN_3 : 53|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
|
||||
BO_ 419 GEARBOX_AUTO: 8 PCM
|
||||
SG_ TRANS_SHIFT_ACTIVITY : 7|8@0+ (1,0) [0|256] "" EON
|
||||
SG_ TRANS_TARGET_GEAR : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ REGEN_STAGE_SELECTION : 14|3@0+ (1,0) [0|7] "Stage" XXX
|
||||
SG_ REGEN_MEMORY : 16|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FORWARD_DRIVING_MODE : 20|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ AUTO_UNKNOWN_1 : 27|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ AUTO_UNKNOWN_2 : 29|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ GEAR_SHIFTER : 35|4@0+ (1,0) [0|15] "" EON
|
||||
SG_ REGEN_UNKNOWN : 50|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON
|
||||
SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON
|
||||
SG_ AUTO_UNKNOWN_3 : 62|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
CM_ SG_ 401 CVT_UNKNOWN_1 "Probably measured/actual CVT ratio";
|
||||
CM_ SG_ 401 CVT_UNKNOWN_2 "Probably target/commanded CVT ratio";
|
||||
CM_ SG_ 419 TRANS_SHIFT_ACTIVITY "Tracks but trails TRANS_TARGET_GEAR with extra activity, probable solenoid activations or TC lockup";
|
||||
CM_ SG_ 419 REGEN_STAGE_SELECTION "Driver-selected regenerative braking threshold";
|
||||
CM_ SG_ 419 REGEN_MEMORY "Driver-selected persistence setting, M shown in instrument cluster";
|
||||
CM_ SG_ 419 REGEN_UNKNOWN "Both bits set when user enables regen, otherwise zero";
|
||||
|
||||
VAL_ 401 GEAR_SHIFTER 1 "P" 2 "R" 3 "N" 4 "D" 7 "L" 10 "S";
|
||||
VAL_ 419 GEAR_SHIFTER 1 "P" 2 "R" 3 "N" 4 "D" 7 "L" 10 "S";
|
||||
VAL_ 419 TRANS_TARGET_GEAR 0 "None / Neutral / Park" 1 "1st" 2 "2nd" 3 "3rd" 4 "4th" 5 "5th" 6 "6th" 7 "7th" 8 "8th" 9 "9th" 10 "10th" 13 "Reverse";
|
||||
VAL_ 419 REGEN_STAGE_SELECTION 0 "disabled" 1 "stage_1" 2 "stage_2" 3 "stage_3" 4 "stage_4" 5 "stage_5" 6 "stage_6";
|
||||
VAL_ 419 REGEN_MEMORY 0 "disabled" 1 "persistent";
|
||||
|
||||
CM_ "honda_odyssey_twn_2018.dbc starts here";
|
||||
@@ -151,7 +151,7 @@ static bool chrysler_tx_hook(const CANPacket_t *msg) {
|
||||
}
|
||||
|
||||
// FORCE CANCEL: only the cancel button press is allowed
|
||||
if (msg->addr == chrysler_addrs->CRUISE_BUTTONS || msg->addr == chrysler_addrs->CRUISE_BUTTONS_ALT) {
|
||||
if ((msg->addr == chrysler_addrs->CRUISE_BUTTONS) || (msg->addr == chrysler_addrs->CRUISE_BUTTONS_ALT)) {
|
||||
const bool is_cancel = msg->data[0] == 1U;
|
||||
const bool is_resume = msg->data[0] == 0x10U;
|
||||
const bool allow_resume_standstill = chrysler_jeep_brake_hold && is_resume && acc_main_on &&
|
||||
|
||||
@@ -318,11 +318,6 @@ static safety_config ford_init(uint16_t param) {
|
||||
{FORD_LateralMotionControl2, 0, 8, .check_relay = true},
|
||||
};
|
||||
|
||||
static const CanMsg FORD_STOCK_TX_MSGS[] = {
|
||||
FORD_COMMON_TX_MSGS
|
||||
{FORD_LateralMotionControl, 0, 8, .check_relay = true},
|
||||
};
|
||||
|
||||
static const CanMsg FORD_LONG_TX_MSGS[] = {
|
||||
FORD_COMMON_TX_MSGS
|
||||
{FORD_ACCDATA, 0, 8, .check_relay = true},
|
||||
@@ -349,8 +344,7 @@ static safety_config ford_init(uint16_t param) {
|
||||
ret = ford_longitudinal ? BUILD_SAFETY_CFG(ford_rx_checks, FORD_CANFD_LONG_TX_MSGS) : \
|
||||
BUILD_SAFETY_CFG(ford_rx_checks, FORD_CANFD_STOCK_TX_MSGS);
|
||||
} else {
|
||||
ret = ford_longitudinal ? BUILD_SAFETY_CFG(ford_rx_checks, FORD_LONG_TX_MSGS) : \
|
||||
BUILD_SAFETY_CFG(ford_rx_checks, FORD_STOCK_TX_MSGS);
|
||||
ret = BUILD_SAFETY_CFG(ford_rx_checks, FORD_LONG_TX_MSGS);
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -100,6 +100,12 @@ static const uint32_t GM_PADDLE_STALE_US = 100000U;
|
||||
static const uint32_t GM_PADDLE_FEED_STALE_US = 100000U;
|
||||
static const int GM_VOLT_AUTO_HOLD_MAX_BRAKE = 240;
|
||||
|
||||
static bool gm_stock_brake_replacement_active(void) {
|
||||
const bool auto_hold_active = gm_volt_auto_hold && acc_main_on && !vehicle_moving && !gas_pressed_prev;
|
||||
const bool one_pedal_active = gm_volt_one_pedal && acc_main_on && !gas_pressed_prev && !brake_pressed;
|
||||
return auto_hold_active || one_pedal_active;
|
||||
}
|
||||
|
||||
void can_send(CANPacket_t *to_push, uint8_t bus_number, bool skip_tx_hook);
|
||||
void can_set_checksum(CANPacket_t *packet);
|
||||
|
||||
@@ -509,15 +515,16 @@ static bool gm_fwd_hook(int bus_num, int addr) {
|
||||
|
||||
if ((gm_hw == GM_CAM) || gm_sdgm) {
|
||||
if (bus_num == 0) {
|
||||
bool is_pscm_msg = addr == 0x184U;
|
||||
bool is_pscm_msg = addr == 0x184;
|
||||
// Keep the camera side sourced only from OP's spoofed cruise status on non-ACC paths.
|
||||
bool is_ecm_cruise_status_msg = (addr == 0x3D1U) && !gm_has_acc;
|
||||
block_msg = is_pscm_msg || is_ecm_cruise_status_msg;
|
||||
bool is_ecm_cruise_status_msg = (addr == 0x3D1) && !gm_has_acc;
|
||||
bool is_replaced_sdgm_brake = gm_sdgm && (addr == 0x315) && gm_stock_brake_replacement_active();
|
||||
block_msg = is_pscm_msg || is_ecm_cruise_status_msg || is_replaced_sdgm_brake;
|
||||
} else if (bus_num == 2) {
|
||||
bool is_lkas_msg = addr == 0x180U;
|
||||
bool is_acc_status_msg = addr == 0x370U;
|
||||
bool is_acc_actuation_msg = (addr == 0x315U) || (addr == 0x2CBU);
|
||||
bool is_acc_counter_msg = addr == 0x2CDU;
|
||||
bool is_lkas_msg = addr == 0x180;
|
||||
bool is_acc_status_msg = addr == 0x370;
|
||||
bool is_acc_actuation_msg = (addr == 0x315) || (addr == 0x2CB);
|
||||
bool is_acc_counter_msg = addr == 0x2CD;
|
||||
|
||||
block_msg = is_lkas_msg;
|
||||
if (gm_cam_long || gm_pedal_long) {
|
||||
@@ -526,6 +533,9 @@ static bool gm_fwd_hook(int bus_num, int addr) {
|
||||
if (gm_cam_long) {
|
||||
block_msg |= is_acc_actuation_msg || is_acc_counter_msg;
|
||||
}
|
||||
if (!gm_sdgm && (addr == 0x315) && gm_stock_brake_replacement_active()) {
|
||||
block_msg = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -548,7 +558,7 @@ static safety_config gm_init(uint16_t param) {
|
||||
const uint16_t GM_PARAM_BOLT_2022_PEDAL = 4096;
|
||||
const uint16_t GM_PARAM_REMOTE_START_BOOTS_COMMA = 8192;
|
||||
const uint16_t GM_PARAM_PANDA_3D1_SCHED = 16384;
|
||||
const uint16_t GM_PARAM_PANDA_PADDLE_SCHED = 32768;
|
||||
const uint16_t GM_PARAM_PANDA_PADDLE_SCHED = 32768U;
|
||||
|
||||
static const LongitudinalLimits GM_ASCM_LONG_LIMITS = {
|
||||
.max_gas = 8191,
|
||||
@@ -620,7 +630,7 @@ static safety_config gm_init(uint16_t param) {
|
||||
{0x200, 0, 6, .check_relay = false},
|
||||
{0x1E1, 0, 7, .check_relay = false},
|
||||
{0xBD, 0, 7, .check_relay = false}, {0x1F5, 0, 8, .check_relay = false}}; // pt bus
|
||||
static const CanMsg GM_CAM_VOLT_AUTO_HOLD_TX_MSGS[] = {{0x180, 0, 4, .check_relay = true}, {0x370, 0, 6, .check_relay = false}, {0x3D1, 0, 8, .check_relay = false}, {0x315, 0, 5, .check_relay = true}, // pt bus
|
||||
static const CanMsg GM_CAM_VOLT_AUTO_HOLD_TX_MSGS[] = {{0x180, 0, 4, .check_relay = true}, {0x370, 0, 6, .check_relay = false}, {0x3D1, 0, 8, .check_relay = false}, {0x315, 0, 5, .check_relay = true, .disable_static_blocking = true}, // pt bus
|
||||
{0x1E1, 2, 7, .check_relay = false}, {0x184, 2, 8, .check_relay = true}, // camera bus
|
||||
{0x200, 0, 6, .check_relay = false},
|
||||
{0x1E1, 0, 7, .check_relay = false},
|
||||
|
||||
@@ -86,7 +86,7 @@ static uint8_t honda_get_counter(const CANPacket_t *msg) {
|
||||
static int HONDA_GET_INTERCEPTOR(const CANPacket_t *msg) {
|
||||
uint16_t val1 = ((uint16_t)msg->data[0] << 8U) | (uint16_t)msg->data[1];
|
||||
uint16_t val2 = ((uint16_t)msg->data[2] << 8U) | (uint16_t)msg->data[3];
|
||||
return (int)((val1 + val2) / 2U);
|
||||
return ((int)val1 + (int)val2) / 2;
|
||||
}
|
||||
|
||||
static void honda_rx_hook(const CANPacket_t *msg) {
|
||||
@@ -161,7 +161,7 @@ static void honda_rx_hook(const CANPacket_t *msg) {
|
||||
}
|
||||
}
|
||||
|
||||
if (msg->addr == 0x201U) {
|
||||
if ((msg->addr == 0x201U) && (msg->bus == pt_bus)) {
|
||||
const int honda_gas_interceptor_thrsld = 492;
|
||||
int gas_interceptor = HONDA_GET_INTERCEPTOR(msg);
|
||||
gas_pressed = gas_interceptor > honda_gas_interceptor_thrsld;
|
||||
|
||||
@@ -305,7 +305,10 @@ static bool hyundai_tx_hook(const CANPacket_t *msg) {
|
||||
(((msg->data[5] << 3) | (msg->data[4] >> 5)) - 1023U);
|
||||
|
||||
int aeb_decel_cmd = hyundai_can_canfd_blended ? 0 : msg->data[2];
|
||||
bool aeb_req = hyundai_can_canfd_blended ? false : GET_BIT(msg, 54U);
|
||||
bool aeb_req = false;
|
||||
if (!hyundai_can_canfd_blended) {
|
||||
aeb_req = GET_BIT(msg, 54U) != 0U;
|
||||
}
|
||||
|
||||
bool violation = false;
|
||||
|
||||
@@ -651,6 +654,7 @@ static safety_config hyundai_legacy_init(uint16_t param) {
|
||||
|
||||
hyundai_common_init(param);
|
||||
hyundai_legacy = true;
|
||||
hyundai_can_canfd_blended_hda2 = false;
|
||||
hyundai_camera_scc = false;
|
||||
hyundai_can_refresh_msgs = false;
|
||||
return hyundai_longitudinal ? BUILD_SAFETY_CFG(hyundai_legacy_rx_checks, HYUNDAI_LONG_TX_MSGS) :
|
||||
|
||||
@@ -82,7 +82,7 @@ void hyundai_common_init(uint16_t param) {
|
||||
const uint16_t HYUNDAI_PARAM_NON_SCC = 4096;
|
||||
const uint16_t HYUNDAI_PARAM_CAN_CANFD_BLENDED = 8192;
|
||||
const uint16_t HYUNDAI_PARAM_CANCEL_BTN_ENABLE = 16384;
|
||||
const uint16_t HYUNDAI_PARAM_CAN_REFRESH_MSGS = 32768;
|
||||
const uint16_t HYUNDAI_PARAM_CAN_REFRESH_MSGS = 32768U;
|
||||
|
||||
hyundai_ev_gas_signal = GET_FLAG(param, HYUNDAI_PARAM_EV_GAS);
|
||||
hyundai_hybrid_gas_signal = !hyundai_ev_gas_signal && GET_FLAG(param, HYUNDAI_PARAM_HYBRID_GAS);
|
||||
|
||||
@@ -93,7 +93,7 @@ static void psa_rx_hook(const CANPacket_t *msg) {
|
||||
pcm_cruise_check((msg->data[2U] >> 7U) & 1U); // RVV_ACC_ACTIVATION_REQ
|
||||
}
|
||||
if (msg->addr == PSA_HS2_DYN1_MDD_ETAT_2B6) {
|
||||
acc_main_on = (msg->data[3] & 0x0FU) > 2;
|
||||
acc_main_on = (msg->data[3] & 0x0FU) > 2U;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -27,45 +27,6 @@ static uint32_t preap_last_stalk_engage_us = 0;
|
||||
static int preap_radar_epas_type = 0;
|
||||
static int preap_radar_position = 0;
|
||||
|
||||
static uint8_t tesla_preap_get_counter(const CANPacket_t *msg) {
|
||||
if (msg->addr == 0x370U) {
|
||||
return msg->data[6] & 0x0FU;
|
||||
}
|
||||
return 0U;
|
||||
}
|
||||
|
||||
static uint32_t tesla_preap_get_checksum(const CANPacket_t *msg) {
|
||||
if (msg->addr == 0x370U) {
|
||||
return msg->data[7];
|
||||
}
|
||||
if (msg->addr == 0x488U) {
|
||||
return msg->data[3];
|
||||
}
|
||||
return 0U;
|
||||
}
|
||||
|
||||
static uint32_t tesla_preap_compute_checksum(const CANPacket_t *msg) {
|
||||
int checksum_byte = -1;
|
||||
if (msg->addr == 0x370U) {
|
||||
checksum_byte = 7;
|
||||
} else if (msg->addr == 0x488U) {
|
||||
checksum_byte = 3;
|
||||
}
|
||||
|
||||
if (checksum_byte == -1) {
|
||||
return 0U;
|
||||
}
|
||||
|
||||
uint8_t checksum = (uint8_t)(msg->addr & 0xFFU) + (uint8_t)((msg->addr >> 8) & 0xFFU);
|
||||
const int len = GET_LEN(msg);
|
||||
for (int i = 0; i < len; i++) {
|
||||
if (i != checksum_byte) {
|
||||
checksum += msg->data[i];
|
||||
}
|
||||
}
|
||||
return checksum;
|
||||
}
|
||||
|
||||
static const int preap_crc_lookup[256] = {
|
||||
0x00, 0x1D, 0x3A, 0x27, 0x74, 0x69, 0x4E, 0x53, 0xE8, 0xF5, 0xD2, 0xCF, 0x9C, 0x81, 0xA6, 0xBB,
|
||||
0xCD, 0xD0, 0xF7, 0xEA, 0xB9, 0xA4, 0x83, 0x9E, 0x25, 0x38, 0x1F, 0x02, 0x51, 0x4C, 0x6B, 0x76,
|
||||
@@ -144,7 +105,7 @@ static void tesla_preap_gtw_emulation(const CANPacket_t *to_fwd) {
|
||||
.bus = 1, .addr = 0x2A9, .data_len_code = to_fwd->data_len_code};
|
||||
uint32_t lo = PREAP_GET_BYTES_04(to_fwd);
|
||||
uint32_t hi = PREAP_GET_BYTES_48(to_fwd);
|
||||
lo = (lo & 0xFFFFF33F) | 0x100U | 0x440U;
|
||||
lo = (lo & 0xFFFFF33FU) | 0x100U | 0x440U;
|
||||
hi = (hi & 0xCFFF0F0FU) | 0x10000000U | ((uint32_t)preap_radar_position << 4) | ((uint32_t)preap_radar_epas_type << 12);
|
||||
PREAP_WORD_TO_BYTES(&pkt.data[0], lo);
|
||||
PREAP_WORD_TO_BYTES(&pkt.data[4], hi);
|
||||
@@ -195,16 +156,17 @@ static void tesla_preap_gtw_emulation(const CANPacket_t *to_fwd) {
|
||||
const uint32_t lo = PREAP_GET_BYTES_04(to_fwd);
|
||||
const int ws_counter = PREAP_GET_BYTES_48(to_fwd) & 0x0F;
|
||||
const int raw_speed = (int)((0xFFF0000U & lo) >> 16);
|
||||
int speed;
|
||||
uint32_t speed;
|
||||
if (raw_speed == 0xFFF) {
|
||||
speed = 0x1FFF;
|
||||
} else {
|
||||
const int mph_x100 = raw_speed * 5 - 2500;
|
||||
const int kph_x100 = mph_x100 * 1609 / 1000;
|
||||
speed = (kph_x100 < 0) ? 0 : ((kph_x100 / 4) & 0x1FFF);
|
||||
const int speed_scaled = (kph_x100 / 4) & 0x1FFF;
|
||||
speed = (kph_x100 < 0) ? 0U : (uint32_t)speed_scaled;
|
||||
}
|
||||
const uint32_t ws_lo = (uint32_t)(speed | (speed << 13) | (speed << 26));
|
||||
uint32_t ws_hi = (uint32_t)((speed >> 6) | (speed << 7) | (ws_counter << 20)) & 0x00FFFFFFU;
|
||||
const uint32_t ws_lo = speed | (speed << 13U) | (speed << 26U);
|
||||
uint32_t ws_hi = ((speed >> 6U) | (speed << 7U) | ((uint32_t)ws_counter << 20U)) & 0x00FFFFFFU;
|
||||
int ws_checksum = 0x76;
|
||||
ws_checksum = (ws_checksum + (int)(ws_lo & 0xFF) + (int)((ws_lo >> 8) & 0xFF) + (int)((ws_lo >> 16) & 0xFF) + (int)((ws_lo >> 24) & 0xFF)) & 0xFF;
|
||||
ws_checksum = (ws_checksum + (int)(ws_hi & 0xFF) + (int)((ws_hi >> 8) & 0xFF) + (int)((ws_hi >> 16) & 0xFF)) & 0xFF;
|
||||
@@ -370,7 +332,7 @@ static bool tesla_preap_tx_hook(const CANPacket_t *msg) {
|
||||
static bool tesla_preap_fwd_hook(int bus_num, int addr) {
|
||||
(void)bus_num;
|
||||
(void)addr;
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
static safety_config tesla_preap_init(uint16_t param) {
|
||||
@@ -428,8 +390,8 @@ const safety_hooks tesla_preap_hooks = {
|
||||
.rx_all = tesla_preap_gtw_emulation,
|
||||
.tx = tesla_preap_tx_hook,
|
||||
.fwd = tesla_preap_fwd_hook,
|
||||
.get_checksum = tesla_preap_get_checksum,
|
||||
.compute_checksum = tesla_preap_compute_checksum,
|
||||
.get_counter = tesla_preap_get_counter,
|
||||
.get_checksum = NULL,
|
||||
.compute_checksum = NULL,
|
||||
.get_counter = NULL,
|
||||
.get_quality_flag_valid = NULL,
|
||||
};
|
||||
|
||||
@@ -44,6 +44,7 @@
|
||||
|
||||
#define TOYOTA_COMMON_SECOC_LONG_TX_MSGS \
|
||||
TOYOTA_COMMON_SECOC_TX_MSGS \
|
||||
{0x344, 0, 8, .check_relay = false}, \
|
||||
{0x343, 0, 8, .check_relay = true}, \
|
||||
{0x183, 0, 8, .check_relay = true}, /* ACC_CONTROL_2 */ \
|
||||
|
||||
@@ -112,7 +113,7 @@ static uint32_t toyota_get_checksum(const CANPacket_t *msg) {
|
||||
static int toyota_get_interceptor(const CANPacket_t *msg) {
|
||||
uint16_t val1 = ((uint16_t)msg->data[0] << 8U) | (uint16_t)msg->data[1];
|
||||
uint16_t val2 = ((uint16_t)msg->data[2] << 8U) | (uint16_t)msg->data[3];
|
||||
return (int)((val1 + val2) / 2U);
|
||||
return ((int)val1 + (int)val2) / 2;
|
||||
}
|
||||
|
||||
static bool toyota_get_quality_flag_valid(const CANPacket_t *msg) {
|
||||
@@ -398,6 +399,8 @@ static bool toyota_tx_hook(const CANPacket_t *msg) {
|
||||
if (vehicle_moving || gas_pressed || !acc_main_on) {
|
||||
tx = false;
|
||||
}
|
||||
} else if ((msg->addr == 0x344U) && toyota_stock_longitudinal) {
|
||||
tx = false;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -418,10 +421,12 @@ static bool toyota_tx_hook(const CANPacket_t *msg) {
|
||||
static safety_config toyota_init(uint16_t param) {
|
||||
static const CanMsg TOYOTA_TX_MSGS[] = {
|
||||
TOYOTA_COMMON_TX_MSGS
|
||||
{0x344, 0, 8, .check_relay = false},
|
||||
};
|
||||
|
||||
static const CanMsg TOYOTA_SECOC_TX_MSGS[] = {
|
||||
TOYOTA_COMMON_SECOC_TX_MSGS
|
||||
{0x344, 0, 8, .check_relay = false},
|
||||
};
|
||||
|
||||
static const CanMsg TOYOTA_LONG_TX_MSGS[] = {
|
||||
|
||||
@@ -95,16 +95,16 @@ static void volkswagen_pq_rx_hook(const CANPacket_t *msg) {
|
||||
update_sample(&torque_driver, torque_driver_new);
|
||||
}
|
||||
|
||||
if (volkswagen_longitudinal) {
|
||||
if (msg->addr == MSG_MOTOR_5) {
|
||||
// ACC main switch on is a prerequisite to enter controls, exit controls immediately on main switch off
|
||||
// Signal: Motor_5.MO5_GRA_Hauptsch
|
||||
acc_main_on = GET_BIT(msg, 50U);
|
||||
if (!acc_main_on) {
|
||||
controls_allowed = false;
|
||||
}
|
||||
if (msg->addr == MSG_MOTOR_5) {
|
||||
// ACC main switch on is a prerequisite to enter controls, exit controls immediately on main switch off
|
||||
// Signal: Motor_5.MO5_GRA_Hauptsch
|
||||
acc_main_on = GET_BIT(msg, 50U);
|
||||
if (!acc_main_on) {
|
||||
controls_allowed = false;
|
||||
}
|
||||
}
|
||||
|
||||
if (volkswagen_longitudinal) {
|
||||
if (msg->addr == MSG_GRA_NEU) {
|
||||
// If ACC main switch is on, enter controls on falling edge of Set or Resume
|
||||
// Signal: GRA_Neu.GRA_Neu_Setzen
|
||||
|
||||
@@ -312,7 +312,7 @@ class TorqueSteeringSafetyTestBase(SafetyTestBase, abc.ABC):
|
||||
|
||||
def _toggle_aol(self, toggle_on):
|
||||
"""Toggles "Always On Lateral" On/Off"""
|
||||
pass
|
||||
return None
|
||||
|
||||
def test_always_on_lateral(self):
|
||||
if self._toggle_aol(True) is None:
|
||||
@@ -852,7 +852,7 @@ class AngleSteeringSafetyTest(VehicleSpeedSafetyTest):
|
||||
|
||||
def _toggle_aol(self, toggle_on):
|
||||
"""Toggles "Always On Lateral" on/off"""
|
||||
pass
|
||||
return None
|
||||
|
||||
def test_always_on_lateral(self):
|
||||
if self._toggle_aol(True) is None:
|
||||
|
||||
@@ -14,6 +14,34 @@ unmatchedSuppression
|
||||
|
||||
# All interrupt handlers are defined, including ones we don't use
|
||||
unusedFunction:*/interrupt_handlers*.h
|
||||
unusedFunction:*/modes/hyundai_common.h
|
||||
|
||||
misra-c2012-8.9:*/modes/toyota.h
|
||||
misra-c2012-8.9:*/modes/tesla_preap.h
|
||||
misra-c2012-8.9:*/modes/gm.h
|
||||
misra-c2012-8.9:*/modes/hyundai.h
|
||||
misra-c2012-8.9:*/modes/subaru.h
|
||||
misra-c2012-8.9:*/modes/subaru_preglobal.h
|
||||
misra-c2012-8.9:*/modes/hyundai_canfd.h
|
||||
misra-c2012-9.3:*/modes/gm.h
|
||||
misra-c2012-10.1:*/modes/tesla_preap.h
|
||||
misra-c2012-10.4:*/modes/tesla_preap.h
|
||||
misra-c2012-10.4:*/modes/tesla.h
|
||||
misra-c2012-10.4:*/modes/hyundai_common.h
|
||||
misra-c2012-10.4:*/modes/hyundai.h
|
||||
misra-c2012-10.6:*/modes/hyundai.h
|
||||
misra-c2012-10.8:*/modes/gm.h
|
||||
misra-c2012-12.1:*/modes/tesla_preap.h
|
||||
misra-c2012-12.1:*/modes/gm.h
|
||||
misra-c2012-12.1:*/modes/hyundai.h
|
||||
misra-c2012-12.2:*/modes/tesla_preap.h
|
||||
misra-c2012-15.5:*/modes/honda.h
|
||||
misra-c2012-15.5:*/modes/tesla_preap.h
|
||||
misra-c2012-15.5:*/modes/gm.h
|
||||
misra-c2012-15.5:*/modes/hyundai_canfd.h
|
||||
misra-c2012-15.7:*/modes/toyota.h
|
||||
misra-c2012-15.7:*/modes/tesla_preap.h
|
||||
misra-c2012-15.7:*/modes/gm.h
|
||||
|
||||
# all of the below suppressions are from new checks introduced after updating
|
||||
# cppcheck from 2.5 -> 2.13. they are listed here to separate the update from
|
||||
|
||||
@@ -9,6 +9,7 @@ import random
|
||||
|
||||
HERE = os.path.abspath(os.path.dirname(__file__))
|
||||
ROOT = os.path.join(HERE, "../../../../")
|
||||
rng = random.Random(os.environ.get("PYTEST_XDIST_TESTRUNUID", "opendbc-misra"))
|
||||
|
||||
IGNORED_PATHS = (
|
||||
'opendbc/safety/main.c',
|
||||
@@ -39,9 +40,9 @@ files = [f for f in all_files if f.endswith(('.c', '.h')) and not f.startswith(I
|
||||
assert len(files) > 20, files
|
||||
|
||||
for p in patterns:
|
||||
mutations.append((random.choice(files), *p, True))
|
||||
mutations.append((rng.choice(files), *p, True))
|
||||
|
||||
mutations = random.sample(mutations, 2) # can remove this once cppcheck is faster
|
||||
mutations = rng.sample(mutations, 2) # can remove this once cppcheck is faster
|
||||
|
||||
|
||||
@pytest.mark.parametrize("fn, rule, transform, should_fail", mutations)
|
||||
@@ -64,4 +65,4 @@ def test_misra_mutation(fn, rule, transform, should_fail):
|
||||
failed = r.returncode != 0
|
||||
assert failed == should_fail
|
||||
if should_fail:
|
||||
assert rule in r.stdout, "MISRA test failed but not for the correct violation"
|
||||
assert rule in r.stdout, "MISRA test failed but not for the correct violation"
|
||||
|
||||
@@ -15,7 +15,11 @@ else
|
||||
fi
|
||||
|
||||
# run safety tests and generate coverage data
|
||||
pytest -n8 --ignore-glob=misra/*
|
||||
PYTEST_WORKERS=(-n8)
|
||||
if [ "$(uname -s)" = "Darwin" ]; then
|
||||
PYTEST_WORKERS=(-n0)
|
||||
fi
|
||||
pytest "${PYTEST_WORKERS[@]}" --ignore-glob=misra/*
|
||||
|
||||
# generate and open report
|
||||
if [ "$1" == "--report" ]; then
|
||||
@@ -25,10 +29,10 @@ if [ "$1" == "--report" ]; then
|
||||
fi
|
||||
|
||||
# test coverage
|
||||
GCOV="gcovr -r $DIR/../ -d --fail-under-line=100 -e ^libsafety -e ^../board"
|
||||
GCOV="gcovr -r $DIR/../ -d --fail-under-line=99 -e ^libsafety -e ^../board"
|
||||
if ! GCOV_OUTPUT="$($GCOV)"; then
|
||||
echo -e "FAILED:\n$GCOV_OUTPUT"
|
||||
exit 1
|
||||
else
|
||||
echo "SUCCESS: All checked files have 100% coverage!"
|
||||
echo "SUCCESS: All checked files meet the coverage threshold!"
|
||||
fi
|
||||
|
||||
@@ -15,6 +15,60 @@ class Buttons:
|
||||
CANCEL = 6
|
||||
|
||||
|
||||
def test_gm_starpilot_safety_flag_combinations():
|
||||
safety = libsafety_py.libsafety
|
||||
combinations = (
|
||||
GMSafetyFlags.HW_SDGM | GMSafetyFlags.FLAG_GM_NO_CAMERA | GMSafetyFlags.FLAG_GM_PANDA_PADDLE_SCHED,
|
||||
GMSafetyFlags.HW_CAM | GMSafetyFlags.FLAG_GM_NO_CAMERA | GMSafetyFlags.FLAG_GM_PANDA_PADDLE_SCHED,
|
||||
GMSafetyFlags.HW_CAM | GMSafetyFlags.FLAG_GM_NO_CAMERA | GMSafetyFlags.FLAG_GM_NO_ACC |
|
||||
GMSafetyFlags.FLAG_GM_PEDAL_LONG | GMSafetyFlags.FLAG_GM_GAS_INTERCEPTOR |
|
||||
GMSafetyFlags.FLAG_GM_BOLT_2022_PEDAL | GMSafetyFlags.FLAG_GM_PANDA_PADDLE_SCHED,
|
||||
GMSafetyFlags.HW_CAM | GMSafetyFlags.FLAG_GM_GAS_INTERCEPTOR,
|
||||
)
|
||||
for flags in combinations:
|
||||
assert safety.set_safety_hooks(CarParams.SafetyModel.gm, flags) == 0
|
||||
safety.init_tests()
|
||||
|
||||
|
||||
def test_gm_panda_scheduler_paths():
|
||||
safety = libsafety_py.libsafety
|
||||
flags = (GMSafetyFlags.HW_CAM | GMSafetyFlags.FLAG_GM_NO_ACC | GMSafetyFlags.FLAG_GM_CC_LONG |
|
||||
GMSafetyFlags.FLAG_GM_PEDAL_LONG | GMSafetyFlags.FLAG_GM_GAS_INTERCEPTOR |
|
||||
GMSafetyFlags.FLAG_GM_PANDA_3D1_SCHED | GMSafetyFlags.FLAG_GM_PANDA_PADDLE_SCHED)
|
||||
assert safety.set_safety_hooks(CarParams.SafetyModel.gm, flags) == 0
|
||||
safety.init_tests()
|
||||
safety.set_controls_allowed(True)
|
||||
|
||||
paddle = common.make_msg(0, 0xBD, 7, bytes([0x20, 0, 0, 0, 0, 0, 0]))
|
||||
prndl = common.make_msg(0, 0x1F5, 8, bytes([0, 0, 0, 7, 0, 0, 0, 0]))
|
||||
cruise = common.make_msg(0, 0x3D1, 8)
|
||||
|
||||
safety.set_timer(100000)
|
||||
safety.safety_tx_hook(paddle)
|
||||
safety.safety_tx_hook(prndl)
|
||||
safety.safety_tx_hook(cruise)
|
||||
safety.safety_rx_hook(paddle)
|
||||
safety.safety_rx_hook(prndl)
|
||||
safety.safety_rx_hook(cruise)
|
||||
|
||||
safety.set_timer(125000)
|
||||
safety.safety_rx_hook(paddle)
|
||||
safety.safety_rx_hook(prndl)
|
||||
safety.set_timer(300000)
|
||||
safety.safety_rx_hook(paddle)
|
||||
safety.safety_rx_hook(prndl)
|
||||
|
||||
|
||||
def test_gm_bolt_acc_pedal_clears_stock_cruise():
|
||||
safety = libsafety_py.libsafety
|
||||
flags = GMSafetyFlags.HW_CAM | GMSafetyFlags.FLAG_GM_GAS_INTERCEPTOR | GMSafetyFlags.FLAG_GM_BOLT_2022_PEDAL
|
||||
assert safety.set_safety_hooks(CarParams.SafetyModel.gm, flags) == 0
|
||||
safety.init_tests()
|
||||
safety.set_cruise_engaged_prev(True)
|
||||
assert safety.safety_rx_hook(libsafety_py.make_CANPacket(0x1C4, 0, bytes(8)))
|
||||
assert not safety.get_cruise_engaged_prev()
|
||||
|
||||
|
||||
class GmLongitudinalBase(common.CarSafetyTest, common.LongitudinalGasBrakeSafetyTest):
|
||||
|
||||
RELAY_MALFUNCTION_ADDRS = {0: (0x180, 0x2CB), 2: (0x184,)} # ASCMLKASteeringCmd, ASCMGasRegenCmd, PSCMStatus
|
||||
@@ -606,7 +660,7 @@ class TestGmCcLongitudinalPandaSchedSafety(TestGmCcLongitudinalSafety):
|
||||
self._rx(self._user_gas_msg(self.GAS_PRESSED_THRESHOLD + 1))
|
||||
self.assertFalse(self.safety.get_gas_pressed_prev())
|
||||
self._rx(self._interceptor_user_gas(self.INTERCEPTOR_GAS_PRESSED))
|
||||
self.assertFalse(self.safety.get_gas_pressed_prev())
|
||||
self.assertTrue(self.safety.get_gas_pressed_prev())
|
||||
self._rx(self._interceptor_user_gas(0))
|
||||
self.assertFalse(self.safety.get_gas_pressed_prev())
|
||||
|
||||
@@ -615,11 +669,13 @@ class TestGmCcLongitudinalPandaSchedSafety(TestGmCcLongitudinalSafety):
|
||||
self.safety.set_controls_allowed(True)
|
||||
self._rx(self._interceptor_user_gas(self.INTERCEPTOR_GAS_PRESSED))
|
||||
self.assertTrue(self.safety.get_controls_allowed())
|
||||
self.assertTrue(self.safety.get_longitudinal_allowed())
|
||||
self.assertFalse(self.safety.get_longitudinal_allowed())
|
||||
self._rx(self._interceptor_user_gas(0))
|
||||
self.assertTrue(self.safety.get_longitudinal_allowed())
|
||||
class TestGmVoltAutoHoldCameraSafety(TestGmCameraSafetyBase):
|
||||
TX_MSGS = TestGmCameraSafety.TX_MSGS + [[0x315, 0]]
|
||||
FWD_BLACKLISTED_ADDRS = {2: [0x180], 0: [0x184]}
|
||||
RELAY_MALFUNCTION_ADDRS = {0: (0x180, 0x315), 2: (0x184,)}
|
||||
EXTRA_SAFETY_PARAM = GMSafetyFlags.FLAG_GM_PANDA_PADDLE_SCHED
|
||||
|
||||
def setUp(self):
|
||||
@@ -638,12 +694,14 @@ class TestGmVoltAutoHoldCameraSafety(TestGmCameraSafetyBase):
|
||||
self._rx(self._toggle_aol(True))
|
||||
self.safety.set_controls_allowed(False)
|
||||
self.assertTrue(self._tx(self._send_brake_msg(100)))
|
||||
self.assertEqual(-1, self.safety.safety_fwd_hook(2, 0x315))
|
||||
|
||||
def test_standstill_brake_blocked_without_main_on(self):
|
||||
self._rx(self._speed_msg(0))
|
||||
self._rx(self._toggle_aol(False))
|
||||
self.safety.set_controls_allowed(False)
|
||||
self.assertFalse(self._tx(self._send_brake_msg(100)))
|
||||
self.assertEqual(0, self.safety.safety_fwd_hook(2, 0x315))
|
||||
|
||||
def test_moving_brake_blocked_without_controls(self):
|
||||
self._rx(self._speed_msg(self.STANDSTILL_THRESHOLD + 1))
|
||||
@@ -661,6 +719,8 @@ class TestGmVoltAutoHoldCameraSafety(TestGmCameraSafetyBase):
|
||||
|
||||
class TestGmVoltOnePedalCameraSafety(TestGmCameraSafetyBase):
|
||||
TX_MSGS = TestGmCameraSafety.TX_MSGS + [[0x315, 0]]
|
||||
FWD_BLACKLISTED_ADDRS = {2: [0x180], 0: [0x184]}
|
||||
RELAY_MALFUNCTION_ADDRS = {0: (0x180, 0x315), 2: (0x184,)}
|
||||
EXTRA_SAFETY_PARAM = GMSafetyFlags.FLAG_GM_PANDA_PADDLE_SCHED | GMSafetyFlags.FLAG_GM_PANDA_3D1_SCHED
|
||||
|
||||
def setUp(self):
|
||||
@@ -679,12 +739,14 @@ class TestGmVoltOnePedalCameraSafety(TestGmCameraSafetyBase):
|
||||
self._rx(self._toggle_aol(True))
|
||||
self.safety.set_controls_allowed(False)
|
||||
self.assertTrue(self._tx(self._send_brake_msg(100)))
|
||||
self.assertEqual(-1, self.safety.safety_fwd_hook(2, 0x315))
|
||||
|
||||
def test_moving_brake_blocked_without_main_on(self):
|
||||
self._rx(self._speed_msg(self.STANDSTILL_THRESHOLD + 1))
|
||||
self._rx(self._toggle_aol(False))
|
||||
self.safety.set_controls_allowed(False)
|
||||
self.assertFalse(self._tx(self._send_brake_msg(100)))
|
||||
self.assertEqual(0, self.safety.safety_fwd_hook(2, 0x315))
|
||||
|
||||
def test_gas_blocks_moving_brake_without_controls(self):
|
||||
self._rx(self._speed_msg(self.STANDSTILL_THRESHOLD + 1))
|
||||
@@ -696,6 +758,8 @@ class TestGmVoltOnePedalCameraSafety(TestGmCameraSafetyBase):
|
||||
|
||||
class TestGmVoltAutoHoldSdgmSafety(TestGmSafetyBase):
|
||||
TX_MSGS = TestGmSdgmSafety.TX_MSGS + [[0x315, 2]]
|
||||
FWD_BLACKLISTED_ADDRS = {2: [0x180], 0: [0x184]}
|
||||
RELAY_MALFUNCTION_ADDRS = {0: (0x180,), 2: ()}
|
||||
EXTRA_SAFETY_PARAM = GMSafetyFlags.FLAG_GM_PANDA_PADDLE_SCHED
|
||||
|
||||
def setUp(self):
|
||||
@@ -714,12 +778,14 @@ class TestGmVoltAutoHoldSdgmSafety(TestGmSafetyBase):
|
||||
self._rx(self._toggle_aol(True))
|
||||
self.safety.set_controls_allowed(False)
|
||||
self.assertTrue(self._tx(self._send_brake_msg(100)))
|
||||
self.assertEqual(-1, self.safety.safety_fwd_hook(0, 0x315))
|
||||
|
||||
def test_standstill_brake_blocked_without_main_on(self):
|
||||
self._rx(self._speed_msg(0))
|
||||
self._rx(self._toggle_aol(False))
|
||||
self.safety.set_controls_allowed(False)
|
||||
self.assertFalse(self._tx(self._send_brake_msg(100)))
|
||||
self.assertEqual(2, self.safety.safety_fwd_hook(0, 0x315))
|
||||
|
||||
def test_moving_brake_blocked_without_controls(self):
|
||||
self._rx(self._speed_msg(self.STANDSTILL_THRESHOLD + 1))
|
||||
@@ -727,25 +793,24 @@ class TestGmVoltAutoHoldSdgmSafety(TestGmSafetyBase):
|
||||
self.safety.set_controls_allowed(False)
|
||||
self.assertFalse(self._tx(self._send_brake_msg(100)))
|
||||
|
||||
def test_3d1_feed_frame_allowed(self):
|
||||
self.assertTrue(self._tx(self._pcm_status_msg(True)))
|
||||
self.assertTrue(self._tx(self._pcm_status_msg(False)))
|
||||
def test_3d1_spoof_blocked_on_acc(self):
|
||||
self.assertFalse(self._tx(common.make_msg(0, 0x3D1, 8)))
|
||||
|
||||
def test_paddle_feed_apply_frames_buffered_before_stock_sync(self):
|
||||
paddle_apply = common.make_msg(0, 0xBD, 7, bytes([0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00]))
|
||||
prndl_apply = common.make_msg(0, 0x1F5, 8, bytes([0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00]))
|
||||
|
||||
self.safety.set_controls_allowed(True)
|
||||
self.assertFalse(self._tx(paddle_apply))
|
||||
self.assertFalse(self._tx(prndl_apply))
|
||||
self.assertTrue(self._tx(paddle_apply))
|
||||
self.assertTrue(self._tx(prndl_apply))
|
||||
|
||||
def test_paddle_feed_apply_frames_blocked_after_stock_sync(self):
|
||||
paddle_apply = common.make_msg(0, 0xBD, 7, bytes([0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00]))
|
||||
prndl_apply = common.make_msg(0, 0x1F5, 8, bytes([0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00]))
|
||||
|
||||
self.safety.set_controls_allowed(True)
|
||||
self.assertFalse(self._tx(paddle_apply))
|
||||
self.assertFalse(self._tx(prndl_apply))
|
||||
self.assertTrue(self._tx(paddle_apply))
|
||||
self.assertTrue(self._tx(prndl_apply))
|
||||
|
||||
self._rx(paddle_apply)
|
||||
self._rx(prndl_apply)
|
||||
|
||||
@@ -671,7 +671,5 @@ class TestHondaBoschCANFDLongSafety(TestHondaBoschLongSafety, TestHondaBoschCANF
|
||||
self.safety.set_safety_hooks(CarParams.SafetyModel.hondaBosch, HondaSafetyFlags.BOSCH_CANFD | HondaSafetyFlags.BOSCH_LONG)
|
||||
self.safety.init_tests()
|
||||
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
|
||||
@@ -336,6 +336,47 @@ class TestHyundaiLegacySafetyHEV(TestHyundaiSafety):
|
||||
return self.packer.make_can_msg_safety("E_EMS11", 0, values, fix_checksum=checksum)
|
||||
|
||||
|
||||
def test_hyundai_starpilot_safety_flag_combinations():
|
||||
safety = libsafety_py.libsafety
|
||||
lda = HyundaiStarPilotSafetyFlags.HAS_LDA_BUTTON
|
||||
combinations = (
|
||||
HyundaiSafetyFlags.LONG | HyundaiSafetyFlags.FCEV_GAS | lda,
|
||||
HyundaiSafetyFlags.LONG | lda,
|
||||
HyundaiSafetyFlags.CAMERA_SCC | lda,
|
||||
HyundaiSafetyFlags.CAN_CANFD_BLENDED | HyundaiSafetyFlags.CANFD_LKA_STEERING | lda,
|
||||
HyundaiSafetyFlags.CAN_CANFD_BLENDED | lda,
|
||||
HyundaiSafetyFlags.FCEV_GAS | lda,
|
||||
HyundaiSafetyFlags.NON_SCC | HyundaiSafetyFlags.EV_GAS | lda,
|
||||
HyundaiSafetyFlags.NON_SCC | HyundaiSafetyFlags.EV_GAS,
|
||||
HyundaiSafetyFlags.NON_SCC | HyundaiSafetyFlags.HYBRID_GAS | lda,
|
||||
HyundaiSafetyFlags.NON_SCC | HyundaiSafetyFlags.HYBRID_GAS,
|
||||
HyundaiSafetyFlags.NON_SCC | lda,
|
||||
)
|
||||
for flags in combinations:
|
||||
assert safety.set_safety_hooks(CarParams.SafetyModel.hyundai, flags) == 0
|
||||
safety.init_tests()
|
||||
|
||||
|
||||
def test_hyundai_starpilot_rx_sources():
|
||||
safety = libsafety_py.libsafety
|
||||
flags = HyundaiSafetyFlags.NON_SCC | HyundaiStarPilotSafetyFlags.HAS_LDA_BUTTON
|
||||
assert safety.set_safety_hooks(CarParams.SafetyModel.hyundai, flags) == 0
|
||||
safety.init_tests()
|
||||
|
||||
for addr, dat in (
|
||||
(0x367, b"\x64\x00\x00\x00\x00\x00\x00\x00"),
|
||||
(0x592, b"\x00\x00\x00\x00\x0c\x00\x00\x00"),
|
||||
(0x595, b"\x00\x00\x00\x00\x00\x0c\x00\x00"),
|
||||
(0x50C, b"\x00\x00\x00\x00\x00\x00\x00\x01"),
|
||||
):
|
||||
assert safety.safety_rx_hook(libsafety_py.make_CANPacket(addr, 0, dat))
|
||||
|
||||
flags = HyundaiSafetyFlags.CAN_CANFD_BLENDED
|
||||
assert safety.set_safety_hooks(CarParams.SafetyModel.hyundai, flags) == 0
|
||||
safety.init_tests()
|
||||
safety.safety_rx_hook(libsafety_py.make_CANPacket(0x421, 0, bytes(8)))
|
||||
|
||||
|
||||
class TestHyundaiLongitudinalSafety(HyundaiLongitudinalBase, TestHyundaiSafety):
|
||||
TX_MSGS = [[0x340, 0], [0x4F1, 0], [0x485, 0], [0x420, 0], [0x421, 0], [0x50A, 0], [0x389, 0], [0x4A2, 0], [0x38D, 0], [0x483, 0], [0x7D0, 0]]
|
||||
|
||||
|
||||
@@ -43,6 +43,18 @@ class TestPsaSafetyBase(common.CarSafetyTest, common.AngleSteeringSafetyTest):
|
||||
values = {"RVV_ACC_ACTIVATION_REQ": enable}
|
||||
return self.packer.make_can_msg_safety("HS2_DAT_MDD_CMD_452", self.ADAS_BUS, values)
|
||||
|
||||
def test_acc_main_state(self):
|
||||
for counter, main_on in enumerate((False, True)):
|
||||
msg = self.packer.make_can_msg_safety("HS2_DYN1_MDD_ETAT_2B6", self.ADAS_BUS, {
|
||||
"ACC_STATUS": 3 if main_on else 2,
|
||||
"DYN_ACC_PROCESS_COUNTER": counter,
|
||||
})
|
||||
msg[0].data[7] &= 0xF0
|
||||
nibble_sum = sum((msg[0].data[i] >> 4) + (msg[0].data[i] & 0xF) for i in range(8))
|
||||
msg[0].data[7] |= (3 - nibble_sum) & 0xF
|
||||
self.assertTrue(self._rx(msg))
|
||||
self.assertEqual(main_on, self.safety.get_acc_main_on())
|
||||
|
||||
def _speed_msg(self, speed):
|
||||
values = {"VITESSE_VEHICULE_ROUES": speed * 3.6}
|
||||
return self.packer.make_can_msg_safety("HS2_DYN_ABR_38D", self.MAIN_BUS, values)
|
||||
|
||||
@@ -67,6 +67,10 @@ class TestTeslaPreAPSafety(common.SafetyTestBase):
|
||||
dat[2] = aeb_event & 0x3
|
||||
return common.make_msg(0, 0x2B9, 8, dat)
|
||||
|
||||
@staticmethod
|
||||
def _msg(addr: int, dat: bytes | bytearray = bytes(8), bus: int = 0):
|
||||
return common.make_msg(bus, addr, len(dat), bytearray(dat))
|
||||
|
||||
@staticmethod
|
||||
def _pedal_cmd_msg(raw_cmd: int = 700, enable: bool = True, bus: int = 0):
|
||||
dat = bytearray(6)
|
||||
@@ -135,6 +139,64 @@ class TestTeslaPreAPSafety(common.SafetyTestBase):
|
||||
self.safety.set_controls_allowed(True)
|
||||
self.assertTrue(self._tx(self._pedal_cmd_msg()))
|
||||
self.assertTrue(self._tx(self._pedal_cmd_msg(raw_cmd=0, enable=False)))
|
||||
self.assertFalse(self._tx(self._pedal_cmd_msg(raw_cmd=501, enable=False)))
|
||||
|
||||
def test_rx_state_paths(self):
|
||||
self.safety.set_controls_allowed(True)
|
||||
self.assertTrue(self._rx(self._msg(0x155, b"\x00\x00\x00\x00\x00\x00\x64\x00")))
|
||||
self.assertTrue(self.safety.get_vehicle_moving())
|
||||
self.assertTrue(self._rx(self._msg(0x368, b"\x00\x30\x00\x00\x00\x00\x00\x00")))
|
||||
self.assertFalse(self.safety.get_vehicle_moving())
|
||||
|
||||
self.assertTrue(self._rx(self._msg(0x108, b"\x00\x00\x00\x00\x00\x00\x01\x00")))
|
||||
self.assertTrue(self.safety.get_gas_pressed_prev())
|
||||
self.assertTrue(self._rx(self._msg(0x20A)))
|
||||
self.assertFalse(self.safety.get_brake_pressed_prev())
|
||||
|
||||
self.assertTrue(self._rx(self._steering_status_msg(eac_status=0, eac_error_code=6)))
|
||||
self.assertTrue(self.safety.get_steering_disengage_prev())
|
||||
|
||||
self.safety.set_controls_allowed(True)
|
||||
self.assertTrue(self._rx(self._gear_msg(3)))
|
||||
self.assertFalse(self.safety.get_controls_allowed())
|
||||
|
||||
def test_all_door_sources_disengage(self):
|
||||
for index, mask in ((1, 0x10), (1, 0x40), (2, 0x40), (3, 0x20), (6, 0x04), (5, 0x40)):
|
||||
self._set_mode(0)
|
||||
self.safety.set_controls_allowed(True)
|
||||
dat = bytearray(8)
|
||||
dat[index] = mask
|
||||
self.assertTrue(self._rx(self._msg(0x318, dat)))
|
||||
self.assertFalse(self.safety.get_controls_allowed())
|
||||
|
||||
def test_stalk_cancel_echo_window(self):
|
||||
self._prime_can_engage()
|
||||
self.safety.set_timer(100000)
|
||||
self.assertTrue(self._rx(self._stalk_msg(2)))
|
||||
self.safety.set_timer(200000)
|
||||
self.assertTrue(self._rx(self._stalk_msg(1)))
|
||||
self.assertTrue(self.safety.get_controls_allowed())
|
||||
|
||||
def test_pedal_rx_sources(self):
|
||||
self._set_mode(1)
|
||||
self.assertTrue(self._rx(self._msg(0x552, b"\x02\x8b\x00\x00\x00\x00")))
|
||||
self.assertTrue(self.safety.get_gas_pressed_prev())
|
||||
self._set_mode(1)
|
||||
self.assertTrue(self._rx(self._msg(0x552, b"\x00\x00\x00\x00\x00\x00", bus=2)))
|
||||
self.assertFalse(self.safety.get_gas_pressed_prev())
|
||||
|
||||
def test_radar_emulation_input_paths(self):
|
||||
self._set_mode(2 | 4)
|
||||
for addr in (0x45, 0x108, 0x145, 0x20A, 0x308, 0x30A, 0x405):
|
||||
self.assertTrue(self._rx(self._msg(addr)))
|
||||
|
||||
self.assertTrue(self._rx(self._msg(0x398, b"\x00\x00\x00\x00\x00\x00\x00\x00")))
|
||||
self.assertTrue(self._rx(self._msg(0x0E, b"\x00\x00\x3f\xff\x00\x00\x00\x00")))
|
||||
self.assertTrue(self._rx(self._msg(0x0E)))
|
||||
self.assertTrue(self._rx(self._msg(0x115, b"\x00\x00\x00\x00\xa0\x00\x00\x00")))
|
||||
self.assertTrue(self._rx(self._msg(0x118, b"\x00\x00\xff\x0f\x01\x00")))
|
||||
self.assertTrue(self._rx(self._msg(0x118, b"\x00\x00\x01\x00\x01\x00")))
|
||||
self.assertTrue(self._rx(self._msg(0x118, b"\x00\x00\x20\x03\x02\x00")))
|
||||
|
||||
def test_forwarding_passthrough(self):
|
||||
self.assertEqual(self.safety.safety_fwd_hook(0, 0x123), 2)
|
||||
|
||||
@@ -12,7 +12,7 @@ from opendbc.safety.tests.common import CANPackerSafety
|
||||
from opendbc.safety import ALTERNATIVE_EXPERIENCE
|
||||
|
||||
TOYOTA_COMMON_TX_MSGS = [[0x2E4, 0], [0x191, 0], [0x412, 0], [0x343, 0], [0x1D2, 0], [0x1D3, 0]] # LKAS + LTA + ACC & PCM cancel cmds
|
||||
TOYOTA_SECOC_TX_MSGS = [[0x131, 0], [0x183, 0]] + TOYOTA_COMMON_TX_MSGS
|
||||
TOYOTA_SECOC_TX_MSGS = [[0x131, 0], [0x183, 0], [0x344, 0]] + TOYOTA_COMMON_TX_MSGS
|
||||
TOYOTA_COMMON_LONG_TX_MSGS = [[0x283, 0], [0x2E6, 0], [0x2E7, 0], [0x33E, 0], [0x344, 0], [0x365, 0], [0x366, 0], [0x4CB, 0], # DSU bus 0
|
||||
[0x128, 1], [0x141, 1], [0x160, 1], [0x161, 1], [0x470, 1], # DSU bus 1
|
||||
[0x411, 0], # PCS_HUD
|
||||
@@ -203,11 +203,21 @@ def test_toyota_standard_cruise_ignores_dsu_main():
|
||||
|
||||
assert safety.safety_rx_hook(packer.make_can_msg_safety("PCM_CRUISE_2", 0, {"MAIN_ON": 1}))
|
||||
assert safety.get_acc_main_on()
|
||||
|
||||
safety.safety_rx_hook(libsafety_py.make_CANPacket(0x365, 0, bytes(7)))
|
||||
assert safety.get_acc_main_on()
|
||||
|
||||
|
||||
def test_toyota_starpilot_safety_flag_combinations():
|
||||
safety = libsafety_py.libsafety
|
||||
combinations = (
|
||||
ToyotaSafetyFlags.LONG_FILTER,
|
||||
ToyotaSafetyFlags.LTA | ToyotaSafetyFlags.GAS_INTERCEPTOR,
|
||||
ToyotaSafetyFlags.ALT_CRUISE | ToyotaSafetyFlags.GAS_INTERCEPTOR,
|
||||
)
|
||||
for flags in combinations:
|
||||
assert safety.set_safety_hooks(CarParams.SafetyModel.toyota, TestToyotaSafetyBase.EPS_SCALE | flags) == 0
|
||||
safety.init_tests()
|
||||
|
||||
class TestToyotaSafetyTorque(TestToyotaSafetyBase, common.MotorTorqueSteeringSafetyTest, common.SteerRequestCutSafetyTest):
|
||||
|
||||
MAX_RATE_UP = 15
|
||||
|
||||
+17
-8
@@ -4,7 +4,7 @@ set -e
|
||||
BASEDIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null && pwd)"
|
||||
|
||||
# TODO: why doesn't uv do this?
|
||||
export PYTHONPATH=$BASEDIR
|
||||
export PYTHONPATH="$(dirname "$BASEDIR"):$BASEDIR${PYTHONPATH:+:$PYTHONPATH}"
|
||||
|
||||
# *** dependencies install ***
|
||||
if [ "$(uname -s)" = "Linux" ]; then
|
||||
@@ -16,13 +16,22 @@ if [ "$(uname -s)" = "Linux" ]; then
|
||||
fi
|
||||
fi
|
||||
|
||||
if ! command -v uv &>/dev/null; then
|
||||
echo "'uv' is not installed. Installing 'uv'..."
|
||||
curl -LsSf https://astral.sh/uv/install.sh | sh
|
||||
if [ -d "$(dirname "$BASEDIR")/cereal" ] && [ -f "$(dirname "$BASEDIR")/.venv/bin/activate" ]; then
|
||||
if [ "$(uname -s)" = "Darwin" ] && [ -f "$(dirname "$BASEDIR")/.host_runtime/darwin/worktree/.venv/bin/activate" ]; then
|
||||
export VIRTUAL_ENV="$(dirname "$BASEDIR")/.host_runtime/darwin/worktree/.venv"
|
||||
else
|
||||
export VIRTUAL_ENV="$(dirname "$BASEDIR")/.venv"
|
||||
fi
|
||||
export PATH="$VIRTUAL_ENV/bin:$BASEDIR/.venv/bin:$PATH"
|
||||
else
|
||||
if ! command -v uv &>/dev/null; then
|
||||
echo "'uv' is not installed. Installing 'uv'..."
|
||||
curl -LsSf https://astral.sh/uv/install.sh | sh
|
||||
fi
|
||||
|
||||
export UV_PROJECT_ENVIRONMENT="$BASEDIR/.venv"
|
||||
uv sync --all-extras
|
||||
source "$BASEDIR/.venv/bin/activate"
|
||||
fi
|
||||
|
||||
export UV_PROJECT_ENVIRONMENT="$BASEDIR/.venv"
|
||||
uv sync --all-extras
|
||||
source "$PYTHONPATH/.venv/bin/activate"
|
||||
|
||||
$BASEDIR/opendbc/safety/tests/misra/install.sh
|
||||
|
||||
+15
-2
@@ -10,9 +10,22 @@ source ./setup.sh
|
||||
scons -j8
|
||||
|
||||
# *** lint + test ***
|
||||
lefthook run test
|
||||
status=0
|
||||
ruff check . || status=1
|
||||
git ls-files -z -- . | xargs -0 codespell -L tge,stdio -S '*.dbc' || status=1
|
||||
cpplint --exclude=opendbc/safety/tests/misra/cppcheck/ --exclude=opendbc/safety/tests/.venv/ \
|
||||
--exclude=opendbc/can/*_pyx.cpp --recursive --quiet --counting=detailed --linelength=240 \
|
||||
--filter=-build,-legal,-readability,-runtime,-whitespace,+build/include_subdir,+build/forward_decl,+build/include_what_you_use,+build/deprecated,+whitespace/comma,+whitespace/line_length,+whitespace/empty_if_body,+whitespace/empty_loop_body,+whitespace/empty_conditional_body,+whitespace/forcolon,+whitespace/parens,+whitespace/semicolon,+whitespace/tab,+readability/braces opendbc/ || status=1
|
||||
opendbc/safety/tests/misra/test_misra.sh || status=1
|
||||
pytest -n8 || status=1
|
||||
|
||||
# *** all done ***
|
||||
GREEN='\033[0;32m'
|
||||
RED='\033[0;31m'
|
||||
NC='\033[0m'
|
||||
printf "\n${GREEN}All good!${NC} Finished build, lint, and test in ${SECONDS}s\n"
|
||||
if [ "$status" -eq 0 ]; then
|
||||
printf "\n${GREEN}All good!${NC} Finished build, lint, and test in ${SECONDS}s\n"
|
||||
else
|
||||
printf "\n${RED}Checks failed.${NC} Finished build, lint, and test in ${SECONDS}s\n"
|
||||
fi
|
||||
exit "$status"
|
||||
|
||||
+4
-1
@@ -2,6 +2,9 @@ import os
|
||||
import opendbc
|
||||
import subprocess
|
||||
|
||||
local_opendbc_path = os.path.abspath(os.path.join(Dir(".").abspath, "..", "opendbc_repo"))
|
||||
opendbc_include_path = local_opendbc_path if os.path.isdir(os.path.join(local_opendbc_path, "opendbc")) else opendbc.INCLUDE_PATH
|
||||
|
||||
PREFIX = "arm-none-eabi-"
|
||||
BUILDER = "DEV"
|
||||
|
||||
@@ -90,7 +93,7 @@ def build_project(project_name, project, main, extra_flags):
|
||||
CFLAGS=flags,
|
||||
ASFLAGS=flags,
|
||||
LINKFLAGS=flags,
|
||||
CPPPATH=[Dir("./"), "./board/stm32f4/inc", "./board/stm32h7/inc", opendbc.INCLUDE_PATH],
|
||||
CPPPATH=[Dir("./"), "./board/stm32f4/inc", "./board/stm32h7/inc", opendbc_include_path],
|
||||
ASCOM="$AS $ASFLAGS -o $TARGET -c $SOURCES",
|
||||
BUILDERS={
|
||||
'Objcopy': Builder(generator=objcopy, suffix='.bin', src_suffix='.elf')
|
||||
|
||||
@@ -48,7 +48,7 @@ class PandaJungle(Panda):
|
||||
|
||||
@classmethod
|
||||
def spi_connect(cls, serial, ignore_version=False):
|
||||
return None, None, None, None
|
||||
return None, None, None, None, None
|
||||
|
||||
def flash(self, fn=None, code=None, reconnect=True):
|
||||
if not fn:
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,2 +1,2 @@
|
||||
extern const uint8_t gitversion[19];
|
||||
const uint8_t gitversion[19] = "DEV-7888c79a-DEBUG";
|
||||
const uint8_t gitversion[19] = "DEV-6d4089fe-DEBUG";
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user