mirror of
https://github.com/sunnypilot/sunnypilot.git
synced 2026-08-07 17:27:01 +08:00
Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| ccd5141fe8 | |||
| 50313b9374 |
@@ -2,5 +2,4 @@ Wen
|
||||
REGIST
|
||||
PullRequest
|
||||
cancelled
|
||||
indeces
|
||||
FOF
|
||||
|
||||
@@ -146,7 +146,6 @@ inline static std::unordered_map<std::string, ParamKeyAttributes> keys = {
|
||||
{"CustomAccLongPressIncrement", {PERSISTENT | BACKUP, INT, "5"}},
|
||||
{"CustomAccShortPressIncrement", {PERSISTENT | BACKUP, INT, "1"}},
|
||||
{"DeviceBootMode", {PERSISTENT | BACKUP, INT, "0"}},
|
||||
{"DevUIInfo", {PERSISTENT | BACKUP, INT, "0"}},
|
||||
{"EnableCopyparty", {PERSISTENT | BACKUP, BOOL}},
|
||||
{"EnableGithubRunner", {PERSISTENT | BACKUP, BOOL}},
|
||||
{"GithubRunnerSufficientVoltage", {CLEAR_ON_MANAGER_START , BOOL}},
|
||||
@@ -223,11 +222,4 @@ inline static std::unordered_map<std::string, ParamKeyAttributes> keys = {
|
||||
{"OsmStateTitle", {PERSISTENT, STRING}},
|
||||
{"OsmWayTest", {PERSISTENT, STRING}},
|
||||
{"RoadName", {CLEAR_ON_ONROAD_TRANSITION, STRING}},
|
||||
|
||||
// Tuning keys
|
||||
{"EnableHkgTuningAngleSmoothingFactor", {PERSISTENT | BACKUP, BOOL, "1"}},
|
||||
{"HkgTuningAngleMinTorqueReductionGain", {PERSISTENT | BACKUP, INT, "10"}},
|
||||
{"HkgTuningAngleMaxTorqueReductionGain", {PERSISTENT | BACKUP, INT, "100"}},
|
||||
{"HkgTuningAngleActiveTorqueReductionGain", {PERSISTENT | BACKUP, INT, "100"}},
|
||||
{"HkgTuningOverridingCycles", {PERSISTENT | BACKUP, INT, "17"}},
|
||||
};
|
||||
|
||||
Binary file not shown.
+1
-1
@@ -1 +1 @@
|
||||
#define COMMA_VERSION "2025.09.14-3032"
|
||||
#define COMMA_VERSION "2025.09.08-3000"
|
||||
|
||||
@@ -1331,12 +1331,6 @@
|
||||
"file": "/data/openpilot/selfdrive/ui/sunnypilot/qt/onroad/buttons.cc",
|
||||
"output": "/data/openpilot/selfdrive/ui/sunnypilot/qt/onroad/buttons.o"
|
||||
},
|
||||
{
|
||||
"command": "clang++ -o selfdrive/ui/sunnypilot/qt/onroad/developer_ui/developer_ui.o -c -std=c++1z -DQCOM2 -mcpu=cortex-a57 -DSUNNYPILOT -D_REENTRANT -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_MESSAGELOGCONTEXT -Wno-deprecated-declarations -g -fPIC -O2 -Wunused -Werror -Wshadow -Wno-unknown-warning-option -Wno-inconsistent-missing-override -Wno-c99-designator -Wno-reorder-init-list -Wno-vla-cxx-extension -DQCOM2 -mcpu=cortex-a57 -DSUNNYPILOT -Ithird_party/opencl/include -I. -Ithird_party/acados/include -Ithird_party/acados/include/blasfeo/include -Ithird_party/acados/include/hpipm/include -Ithird_party/catch2/include -Ithird_party/libyuv/include -Ithird_party/json11 -Ithird_party/linux/include -Ithird_party/snpe/include -Ithird_party -Imsgq -I/usr/include -I/usr/include/aarch64-linux-gnu/qt5 -I/usr/include/aarch64-linux-gnu/qt5/QtGui/5.12.8/QtGui -I/usr/include/aarch64-linux-gnu/qt5/QtWidgets -I/usr/include/aarch64-linux-gnu/qt5/QtGui -I/usr/include/aarch64-linux-gnu/qt5/QtCore -I/usr/include/aarch64-linux-gnu/qt5/QtNetwork -I/usr/include/aarch64-linux-gnu/qt5/QtConcurrent -I/usr/include/aarch64-linux-gnu/qt5/QtDBus -I/usr/include/aarch64-linux-gnu/qt5/QtXml -Ithird_party/qrcode selfdrive/ui/sunnypilot/qt/onroad/developer_ui/developer_ui.cc",
|
||||
"directory": "/data/openpilot",
|
||||
"file": "/data/openpilot/selfdrive/ui/sunnypilot/qt/onroad/developer_ui/developer_ui.cc",
|
||||
"output": "/data/openpilot/selfdrive/ui/sunnypilot/qt/onroad/developer_ui/developer_ui.o"
|
||||
},
|
||||
{
|
||||
"command": "clang++ -o selfdrive/ui/sunnypilot/qt/onroad/hud.o -c -std=c++1z -DQCOM2 -mcpu=cortex-a57 -DSUNNYPILOT -D_REENTRANT -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_MESSAGELOGCONTEXT -Wno-deprecated-declarations -g -fPIC -O2 -Wunused -Werror -Wshadow -Wno-unknown-warning-option -Wno-inconsistent-missing-override -Wno-c99-designator -Wno-reorder-init-list -Wno-vla-cxx-extension -DQCOM2 -mcpu=cortex-a57 -DSUNNYPILOT -Ithird_party/opencl/include -I. -Ithird_party/acados/include -Ithird_party/acados/include/blasfeo/include -Ithird_party/acados/include/hpipm/include -Ithird_party/catch2/include -Ithird_party/libyuv/include -Ithird_party/json11 -Ithird_party/linux/include -Ithird_party/snpe/include -Ithird_party -Imsgq -I/usr/include -I/usr/include/aarch64-linux-gnu/qt5 -I/usr/include/aarch64-linux-gnu/qt5/QtGui/5.12.8/QtGui -I/usr/include/aarch64-linux-gnu/qt5/QtWidgets -I/usr/include/aarch64-linux-gnu/qt5/QtGui -I/usr/include/aarch64-linux-gnu/qt5/QtCore -I/usr/include/aarch64-linux-gnu/qt5/QtNetwork -I/usr/include/aarch64-linux-gnu/qt5/QtConcurrent -I/usr/include/aarch64-linux-gnu/qt5/QtDBus -I/usr/include/aarch64-linux-gnu/qt5/QtXml -Ithird_party/qrcode selfdrive/ui/sunnypilot/qt/onroad/hud.cc",
|
||||
"directory": "/data/openpilot",
|
||||
@@ -1373,12 +1367,6 @@
|
||||
"file": "/data/openpilot/selfdrive/ui/sunnypilot/qt/offroad/settings/lateral/mads_settings.cc",
|
||||
"output": "/data/openpilot/selfdrive/ui/sunnypilot/qt/offroad/settings/lateral/mads_settings.o"
|
||||
},
|
||||
{
|
||||
"command": "clang++ -o selfdrive/ui/sunnypilot/qt/offroad/settings/lateral/angle_tuning_settings.o -c -std=c++1z -DQCOM2 -mcpu=cortex-a57 -DSUNNYPILOT -D_REENTRANT -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_MESSAGELOGCONTEXT -Wno-deprecated-declarations -g -fPIC -O2 -Wunused -Werror -Wshadow -Wno-unknown-warning-option -Wno-inconsistent-missing-override -Wno-c99-designator -Wno-reorder-init-list -Wno-vla-cxx-extension -DQCOM2 -mcpu=cortex-a57 -DSUNNYPILOT -Ithird_party/opencl/include -I. -Ithird_party/acados/include -Ithird_party/acados/include/blasfeo/include -Ithird_party/acados/include/hpipm/include -Ithird_party/catch2/include -Ithird_party/libyuv/include -Ithird_party/json11 -Ithird_party/linux/include -Ithird_party/snpe/include -Ithird_party -Imsgq -I/usr/include -I/usr/include/aarch64-linux-gnu/qt5 -I/usr/include/aarch64-linux-gnu/qt5/QtGui/5.12.8/QtGui -I/usr/include/aarch64-linux-gnu/qt5/QtWidgets -I/usr/include/aarch64-linux-gnu/qt5/QtGui -I/usr/include/aarch64-linux-gnu/qt5/QtCore -I/usr/include/aarch64-linux-gnu/qt5/QtNetwork -I/usr/include/aarch64-linux-gnu/qt5/QtConcurrent -I/usr/include/aarch64-linux-gnu/qt5/QtDBus -I/usr/include/aarch64-linux-gnu/qt5/QtXml -Ithird_party/qrcode selfdrive/ui/sunnypilot/qt/offroad/settings/lateral/angle_tuning_settings.cc",
|
||||
"directory": "/data/openpilot",
|
||||
"file": "/data/openpilot/selfdrive/ui/sunnypilot/qt/offroad/settings/lateral/angle_tuning_settings.cc",
|
||||
"output": "/data/openpilot/selfdrive/ui/sunnypilot/qt/offroad/settings/lateral/angle_tuning_settings.o"
|
||||
},
|
||||
{
|
||||
"command": "clang++ -o selfdrive/ui/sunnypilot/qt/offroad/settings/lateral/neural_network_lateral_control.o -c -std=c++1z -DQCOM2 -mcpu=cortex-a57 -DSUNNYPILOT -D_REENTRANT -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_MESSAGELOGCONTEXT -Wno-deprecated-declarations -g -fPIC -O2 -Wunused -Werror -Wshadow -Wno-unknown-warning-option -Wno-inconsistent-missing-override -Wno-c99-designator -Wno-reorder-init-list -Wno-vla-cxx-extension -DQCOM2 -mcpu=cortex-a57 -DSUNNYPILOT -Ithird_party/opencl/include -I. -Ithird_party/acados/include -Ithird_party/acados/include/blasfeo/include -Ithird_party/acados/include/hpipm/include -Ithird_party/catch2/include -Ithird_party/libyuv/include -Ithird_party/json11 -Ithird_party/linux/include -Ithird_party/snpe/include -Ithird_party -Imsgq -I/usr/include -I/usr/include/aarch64-linux-gnu/qt5 -I/usr/include/aarch64-linux-gnu/qt5/QtGui/5.12.8/QtGui -I/usr/include/aarch64-linux-gnu/qt5/QtWidgets -I/usr/include/aarch64-linux-gnu/qt5/QtGui -I/usr/include/aarch64-linux-gnu/qt5/QtCore -I/usr/include/aarch64-linux-gnu/qt5/QtNetwork -I/usr/include/aarch64-linux-gnu/qt5/QtConcurrent -I/usr/include/aarch64-linux-gnu/qt5/QtDBus -I/usr/include/aarch64-linux-gnu/qt5/QtXml -Ithird_party/qrcode selfdrive/ui/sunnypilot/qt/offroad/settings/lateral/neural_network_lateral_control.cc",
|
||||
"directory": "/data/openpilot",
|
||||
@@ -1763,12 +1751,6 @@
|
||||
"file": "/data/openpilot/selfdrive/ui/sunnypilot/qt/offroad/settings/lateral/moc_mads_settings.cc",
|
||||
"output": "/data/openpilot/selfdrive/ui/sunnypilot/qt/offroad/settings/lateral/moc_mads_settings.o"
|
||||
},
|
||||
{
|
||||
"command": "clang++ -o selfdrive/ui/sunnypilot/qt/offroad/settings/lateral/moc_angle_tuning_settings.o -c -std=c++1z -DQCOM2 -mcpu=cortex-a57 -DSUNNYPILOT -D_REENTRANT -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_MESSAGELOGCONTEXT -Wno-deprecated-declarations -g -fPIC -O2 -Wunused -Werror -Wshadow -Wno-unknown-warning-option -Wno-inconsistent-missing-override -Wno-c99-designator -Wno-reorder-init-list -Wno-vla-cxx-extension -DQCOM2 -mcpu=cortex-a57 -DSUNNYPILOT -Ithird_party/opencl/include -I. -Ithird_party/acados/include -Ithird_party/acados/include/blasfeo/include -Ithird_party/acados/include/hpipm/include -Ithird_party/catch2/include -Ithird_party/libyuv/include -Ithird_party/json11 -Ithird_party/linux/include -Ithird_party/snpe/include -Ithird_party -Imsgq -I/usr/include -I/usr/include/aarch64-linux-gnu/qt5 -I/usr/include/aarch64-linux-gnu/qt5/QtGui/5.12.8/QtGui -I/usr/include/aarch64-linux-gnu/qt5/QtWidgets -I/usr/include/aarch64-linux-gnu/qt5/QtGui -I/usr/include/aarch64-linux-gnu/qt5/QtCore -I/usr/include/aarch64-linux-gnu/qt5/QtNetwork -I/usr/include/aarch64-linux-gnu/qt5/QtConcurrent -I/usr/include/aarch64-linux-gnu/qt5/QtDBus -I/usr/include/aarch64-linux-gnu/qt5/QtXml -Ithird_party/qrcode selfdrive/ui/sunnypilot/qt/offroad/settings/lateral/moc_angle_tuning_settings.cc",
|
||||
"directory": "/data/openpilot",
|
||||
"file": "/data/openpilot/selfdrive/ui/sunnypilot/qt/offroad/settings/lateral/moc_angle_tuning_settings.cc",
|
||||
"output": "/data/openpilot/selfdrive/ui/sunnypilot/qt/offroad/settings/lateral/moc_angle_tuning_settings.o"
|
||||
},
|
||||
{
|
||||
"command": "clang++ -o selfdrive/ui/sunnypilot/qt/offroad/settings/lateral/moc_neural_network_lateral_control.o -c -std=c++1z -DQCOM2 -mcpu=cortex-a57 -DSUNNYPILOT -D_REENTRANT -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_MESSAGELOGCONTEXT -Wno-deprecated-declarations -g -fPIC -O2 -Wunused -Werror -Wshadow -Wno-unknown-warning-option -Wno-inconsistent-missing-override -Wno-c99-designator -Wno-reorder-init-list -Wno-vla-cxx-extension -DQCOM2 -mcpu=cortex-a57 -DSUNNYPILOT -Ithird_party/opencl/include -I. -Ithird_party/acados/include -Ithird_party/acados/include/blasfeo/include -Ithird_party/acados/include/hpipm/include -Ithird_party/catch2/include -Ithird_party/libyuv/include -Ithird_party/json11 -Ithird_party/linux/include -Ithird_party/snpe/include -Ithird_party -Imsgq -I/usr/include -I/usr/include/aarch64-linux-gnu/qt5 -I/usr/include/aarch64-linux-gnu/qt5/QtGui/5.12.8/QtGui -I/usr/include/aarch64-linux-gnu/qt5/QtWidgets -I/usr/include/aarch64-linux-gnu/qt5/QtGui -I/usr/include/aarch64-linux-gnu/qt5/QtCore -I/usr/include/aarch64-linux-gnu/qt5/QtNetwork -I/usr/include/aarch64-linux-gnu/qt5/QtConcurrent -I/usr/include/aarch64-linux-gnu/qt5/QtDBus -I/usr/include/aarch64-linux-gnu/qt5/QtXml -Ithird_party/qrcode selfdrive/ui/sunnypilot/qt/offroad/settings/lateral/moc_neural_network_lateral_control.cc",
|
||||
"directory": "/data/openpilot",
|
||||
|
||||
Vendored
-42
@@ -1,42 +0,0 @@
|
||||
{
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
{
|
||||
"name": "Attach LLDB to Python",
|
||||
"type": "lldb",
|
||||
"request": "attach",
|
||||
"pid": "${command:pickMyProcess}",
|
||||
"initCommands": [
|
||||
"script import time; time.sleep(5)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Python Launch",
|
||||
"type": "python",
|
||||
"request": "launch",
|
||||
"program": "${workspaceFolder}/opendbc/safety/tests/safety_replay/replay_drive.py",
|
||||
"args": [
|
||||
"e1107f9d04dfb1e2/0000045c--da2e374469"
|
||||
],
|
||||
"console": "integratedTerminal",
|
||||
"justMyCode": false,
|
||||
"debugOptions": [
|
||||
"RedirectOutput"
|
||||
],
|
||||
"env": {
|
||||
"PYTHONPATH": "${workspaceFolder}"
|
||||
},
|
||||
"subProcess": true,
|
||||
"stopOnEntry": false
|
||||
}
|
||||
],
|
||||
"compounds": [
|
||||
{
|
||||
"name": "Python + Native (LLDB)",
|
||||
"configurations": [
|
||||
"Python Launch",
|
||||
"Attach LLDB to Python"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -16,7 +16,7 @@ test:
|
||||
ruff:
|
||||
run: ruff check .
|
||||
codespell:
|
||||
run: codespell {files} -L tge,stdio -S "*.dbc,*.ipynb" --ignore-words=.codespellignore
|
||||
run: codespell {files} -L tge,stdio -S *.dbc --ignore-words=.codespellignore
|
||||
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/
|
||||
|
||||
@@ -1,50 +0,0 @@
|
||||
# About Angle Steering, Baseline Model, and ISO Safety Limits
|
||||
|
||||
## Overview
|
||||
|
||||
The baseline vehicle model serves as our safety reference point for establishing universal control parameters across our entire vehicle fleet. This approach ensures that all vehicles operate within ISO safety standards regardless of their individual physics characteristics.
|
||||
|
||||
## How It Works
|
||||
|
||||
For any given speed and driving conditions, we query each vehicle model with the question: "What's the maximum steering angle I can apply right now while staying below the ISO standard limits for lateral acceleration and jerk?"
|
||||
|
||||
Each vehicle model responds differently based on its unique physics characteristics:
|
||||
- **Baseline Vehicle Model**: Has the most restrictive limits - requires the smallest steering angles to stay within ISO safety thresholds
|
||||
- **Current Vehicle Model**: May be able to handle larger steering angles while remaining within the same ISO safety standards, depending on its physical characteristics
|
||||
|
||||
## Safety Logic
|
||||
|
||||
Both the baseline and current vehicle models target the same ISO safety limits. The key difference is that the baseline vehicle's physics require more conservative steering inputs to stay within those standards.
|
||||
|
||||
By applying the baseline vehicle's more restrictive steering limits to all vehicles in the fleet:
|
||||
- Every model stays well within ISO safety thresholds
|
||||
- No vehicle will breach safety standards regardless of its individual characteristics
|
||||
- We maintain a consistent safety margin across the entire fleet
|
||||
|
||||
If we instead used a less restrictive model as our baseline, any naturally more restrictive vehicles in the fleet would exceed ISO standards and create unsafe driving conditions.
|
||||
|
||||
## Implementation Details
|
||||
|
||||
### Two-Layer Validation Process
|
||||
|
||||
We use a two-layer validation approach to balance vehicle-specific optimization with baseline safety:
|
||||
|
||||
1. **Current Vehicle Model Calculation**: We first calculate the optimal steering limits from the current vehicle model, which determines the best steering angle based on that vehicle's physical characteristics and desired maneuver.
|
||||
|
||||
2. **Baseline Model Validation**: We then pass the current vehicle's requested steering command through the baseline model as a final safety filter.
|
||||
|
||||
This two-layer approach is essential because while the current vehicle model may generally be more capable, it might sometimes request smaller jerk or lateral acceleration values to achieve specific driving goals. The baseline validation ensures that regardless of what the current vehicle requests, we never exceed the safety limits of our most restrictive vehicle.
|
||||
|
||||
### Special Case: Driving the Baseline Vehicle
|
||||
|
||||
When actually driving the baseline vehicle itself (e.g., Santa Fe), we apply an additional 80% ISO cap since that vehicle would otherwise operate right at the ISO safety threshold. This extra margin ensures safe operation even for our most restrictive vehicle model.
|
||||
|
||||
## Example Implementation
|
||||
|
||||
### Baseline Vehicle: Hyundai Santa Fe
|
||||
Due to its physics characteristics, the Santa Fe requires smaller steering angles to remain within ISO safety limits.
|
||||
|
||||
### Current Vehicle: Ioniq 5 PE
|
||||
Due to different physical characteristics, the Ioniq 5 PE can handle larger steering angles while still remaining within the same ISO safety standards.
|
||||
|
||||
By using the Santa Fe's conservative limits across all vehicles, we ensure the Ioniq 5 PE operates well within its capabilities, while preventing the Santa Fe from exceeding its safety thresholds.
|
||||
@@ -1,20 +1,7 @@
|
||||
import math
|
||||
import numpy as np
|
||||
from opendbc.car.carlog import carlog
|
||||
from opendbc.car.vehicle_model import VehicleModel
|
||||
|
||||
try:
|
||||
# TODO-SP: We shouldn't really import params from here, but it's the easiest way to get the params for
|
||||
# live tuning temporarily while we understand the angle steering better
|
||||
from openpilot.common.params import Params
|
||||
PARAMS_AVAILABLE = True
|
||||
except ImportError:
|
||||
carlog.warning("Unable to import Params from openpilot.common.params.")
|
||||
PARAMS_AVAILABLE = False
|
||||
|
||||
from opendbc.can import CANPacker
|
||||
from opendbc.car import Bus, DT_CTRL, make_tester_present_msg, structs
|
||||
from opendbc.car.lateral import apply_driver_steer_torque_limits, common_fault_avoidance, apply_steer_angle_limits_vm
|
||||
from opendbc.car.lateral import apply_driver_steer_torque_limits, common_fault_avoidance
|
||||
from opendbc.car.common.conversions import Conversions as CV
|
||||
from opendbc.car.hyundai import hyundaicanfd, hyundaican
|
||||
from opendbc.car.hyundai.hyundaicanfd import CanBus
|
||||
@@ -26,8 +13,6 @@ from opendbc.sunnypilot.car.hyundai.longitudinal.controller import LongitudinalC
|
||||
from opendbc.sunnypilot.car.hyundai.lead_data_ext import LeadDataCarController
|
||||
from opendbc.sunnypilot.car.hyundai.mads import MadsCarController
|
||||
|
||||
from opendbc.car.hyundai.torque_reduction_gain import TorqueReductionGainController
|
||||
|
||||
VisualAlert = structs.CarControl.HUDControl.VisualAlert
|
||||
LongCtrlState = structs.CarControl.Actuators.LongControlState
|
||||
|
||||
@@ -37,61 +22,6 @@ MAX_ANGLE = 85
|
||||
MAX_ANGLE_FRAMES = 89
|
||||
MAX_ANGLE_CONSECUTIVE_FRAMES = 2
|
||||
|
||||
MAX_ANGLE_RATE = 5
|
||||
ANGLE_SAFETY_BASELINE_MODEL = "HYUNDAI_SANTA_FE_HEV_5TH_GEN"
|
||||
|
||||
|
||||
def get_baseline_safety_cp():
|
||||
from opendbc.car.hyundai.interface import CarInterface
|
||||
return CarInterface.get_non_essential_params(ANGLE_SAFETY_BASELINE_MODEL)
|
||||
|
||||
|
||||
def calculate_angle_torque_reduction_gain(params, CS, apply_torque_last, target_torque_reduction_gain):
|
||||
""" Calculate the angle torque reduction gain based on the current steering state. """
|
||||
target_gain = max(target_torque_reduction_gain, params.ANGLE_ACTIVE_TORQUE_REDUCTION_GAIN)
|
||||
|
||||
driver_torque = abs(CS.out.steeringTorque)
|
||||
alpha = np.interp(driver_torque, [params.STEER_THRESHOLD * .8 , params.STEER_THRESHOLD * 2], [0.02, 0.1])
|
||||
|
||||
if CS.out.steeringPressed:
|
||||
scale = 100
|
||||
clamped_torque_gain = max(apply_torque_last, params.ANGLE_ACTIVE_TORQUE_REDUCTION_GAIN)
|
||||
target_gain = params.ANGLE_MIN_TORQUE_REDUCTION_GAIN + (clamped_torque_gain - params.ANGLE_MIN_TORQUE_REDUCTION_GAIN) \
|
||||
* math.exp(-(driver_torque - params.STEER_THRESHOLD) / scale)
|
||||
|
||||
# Smooth transition (like a rubber band returning)
|
||||
new_gain = apply_torque_last + alpha * (target_gain - apply_torque_last)
|
||||
|
||||
return float(np.clip(new_gain, params.ANGLE_MIN_TORQUE_REDUCTION_GAIN, params.ANGLE_MAX_TORQUE_REDUCTION_GAIN))
|
||||
|
||||
|
||||
def sp_smooth_angle(v_ego_raw: float, apply_angle: float, apply_angle_last: float) -> float:
|
||||
"""
|
||||
Smooth the steering angle change based on vehicle speed and an optional smoothing offset.
|
||||
|
||||
This function helps prevent abrupt steering changes by blending the new desired angle (`apply_angle`)
|
||||
with the previously applied angle (`apply_angle_last`). The blend factor (alpha) is dynamically calculated
|
||||
based on the vehicle's current speed using a predefined lookup table.
|
||||
|
||||
Behavior:
|
||||
- At low speeds, the smoothing is strong, keeping the steering more stable.
|
||||
- At higher speeds, the smoothing is relaxed, allowing quicker responses.
|
||||
- If the angle change is negligible (≤ 0.1 deg), smoothing is skipped for responsiveness.
|
||||
|
||||
Parameters:
|
||||
v_ego_raw (float): Raw vehicle speed in m/s.
|
||||
apply_angle (float): New target steering angle in degrees.
|
||||
apply_angle_last (float): Previously applied steering angle in degrees.
|
||||
|
||||
Returns:
|
||||
float: Smoothed steering angle.
|
||||
"""
|
||||
if abs(apply_angle - apply_angle_last) > 0.1:
|
||||
adjusted_alpha = np.interp(v_ego_raw, CarControllerParams.SMOOTHING_ANGLE_VEGO_MATRIX, CarControllerParams.SMOOTHING_ANGLE_ALPHA_MATRIX)
|
||||
adjusted_alpha_limited = float(min(float(adjusted_alpha), 1.)) # Limit the smoothing factor to 1 if adjusted_alpha is greater than 1
|
||||
return (apply_angle * adjusted_alpha_limited) + (apply_angle_last * (1 - adjusted_alpha_limited))
|
||||
return apply_angle
|
||||
|
||||
|
||||
def process_hud_alert(enabled, fingerprint, hud_control):
|
||||
sys_warning = (hud_control.visualAlert in (VisualAlert.steerRequired, VisualAlert.ldw))
|
||||
@@ -117,21 +47,6 @@ def process_hud_alert(enabled, fingerprint, hud_control):
|
||||
return sys_warning, sys_state, left_lane_warning, right_lane_warning
|
||||
|
||||
|
||||
def parse_tq_rdc_gain(val):
|
||||
"""
|
||||
Returns the float value divided by 100 if val is not None, else returns None.
|
||||
"""
|
||||
if val is not None:
|
||||
return float(val) / 100
|
||||
return None
|
||||
|
||||
|
||||
def parse_scaled_value(val, scale=10):
|
||||
if val is not None:
|
||||
return float(val) / scale
|
||||
return None
|
||||
|
||||
|
||||
class CarController(CarControllerBase, EsccCarController, LeadDataCarController, LongitudinalController, MadsCarController):
|
||||
def __init__(self, dbc_names, CP, CP_SP):
|
||||
CarControllerBase.__init__(self, dbc_names, CP, CP_SP)
|
||||
@@ -144,44 +59,11 @@ class CarController(CarControllerBase, EsccCarController, LeadDataCarController,
|
||||
self.packer = CANPacker(dbc_names[Bus.pt])
|
||||
self.angle_limit_counter = 0
|
||||
|
||||
# Vehicle model used for lateral limiting
|
||||
self.VM = VehicleModel(CP)
|
||||
self.BASELINE_VM = VehicleModel(get_baseline_safety_cp())
|
||||
|
||||
self.accel_last = 0
|
||||
self.apply_torque_last = 0
|
||||
self.car_fingerprint = CP.carFingerprint
|
||||
self.last_button_frame = 0
|
||||
|
||||
self.apply_angle_last = 0
|
||||
self.angle_torque_reduction_gain = 0
|
||||
|
||||
# For future parametrization / tuning
|
||||
self.angle_enable_smoothing_factor = True
|
||||
|
||||
self._params = Params() if PARAMS_AVAILABLE else None
|
||||
if PARAMS_AVAILABLE:
|
||||
self.params.ANGLE_MIN_TORQUE_REDUCTION_GAIN = parse_tq_rdc_gain(
|
||||
self._params.get("HkgTuningAngleMinTorqueReductionGain")) or self.params.ANGLE_MIN_TORQUE_REDUCTION_GAIN
|
||||
|
||||
self.params.ANGLE_MAX_TORQUE_REDUCTION_GAIN = parse_tq_rdc_gain(
|
||||
self._params.get("HkgTuningAngleMaxTorqueReductionGain")) or self.params.ANGLE_MAX_TORQUE_REDUCTION_GAIN
|
||||
|
||||
self.params.ANGLE_ACTIVE_TORQUE_REDUCTION_GAIN = parse_tq_rdc_gain(
|
||||
self._params.get("HkgTuningAngleActiveTorqueReductionGain")) or self.params.ANGLE_ACTIVE_TORQUE_REDUCTION_GAIN
|
||||
|
||||
self.params.ANGLE_TORQUE_OVERRIDE_CYCLES = int(self._params.get("HkgTuningOverridingCycles") or self.params.ANGLE_TORQUE_OVERRIDE_CYCLES)
|
||||
self.angle_enable_smoothing_factor = self._params.get_bool("EnableHkgTuningAngleSmoothingFactor")
|
||||
|
||||
self.angle_torque_reduction_gain_controller = TorqueReductionGainController(
|
||||
angle_threshold=.3,
|
||||
debounce_time=.1,
|
||||
min_gain=self.params.ANGLE_ACTIVE_TORQUE_REDUCTION_GAIN,
|
||||
max_gain=self.params.ANGLE_MAX_TORQUE_REDUCTION_GAIN,
|
||||
ramp_up_rate=self.params.ANGLE_RAMP_UP_TORQUE_REDUCTION_RATE,
|
||||
ramp_down_rate=self.params.ANGLE_RAMP_DOWN_TORQUE_REDUCTION_RATE
|
||||
)
|
||||
|
||||
def update(self, CC, CC_SP, CS, now_nanos):
|
||||
EsccCarController.update(self, CS)
|
||||
LeadDataCarController.update(self, CC_SP)
|
||||
@@ -193,49 +75,13 @@ class CarController(CarControllerBase, EsccCarController, LeadDataCarController,
|
||||
hud_control = CC.hudControl
|
||||
|
||||
# steering torque
|
||||
if not self.CP.flags & HyundaiFlags.CANFD_ANGLE_STEERING:
|
||||
self.angle_limit_counter, apply_steer_req = common_fault_avoidance(abs(CS.out.steeringAngleDeg) >= MAX_ANGLE, CC.latActive,
|
||||
self.angle_limit_counter, MAX_ANGLE_FRAMES,
|
||||
MAX_ANGLE_CONSECUTIVE_FRAMES)
|
||||
new_torque = int(round(actuators.torque * self.params.STEER_MAX))
|
||||
apply_torque = apply_driver_steer_torque_limits(new_torque, self.apply_torque_last, CS.out.steeringTorque, self.params)
|
||||
new_torque = int(round(actuators.torque * self.params.STEER_MAX))
|
||||
apply_torque = apply_driver_steer_torque_limits(new_torque, self.apply_torque_last, CS.out.steeringTorque, self.params)
|
||||
|
||||
# angle control
|
||||
else:
|
||||
v_ego_raw = CS.out.vEgoRaw
|
||||
desired_angle = np.clip(actuators.steeringAngleDeg, -self.params.ANGLE_LIMITS.STEER_ANGLE_MAX, self.params.ANGLE_LIMITS.STEER_ANGLE_MAX)
|
||||
|
||||
if self.angle_enable_smoothing_factor and abs(v_ego_raw) < CarControllerParams.SMOOTHING_ANGLE_MAX_VEGO:
|
||||
desired_angle = sp_smooth_angle(v_ego_raw, desired_angle, self.apply_angle_last)
|
||||
|
||||
apply_angle = apply_steer_angle_limits_vm(desired_angle, self.apply_angle_last, v_ego_raw, CS.out.steeringAngleDeg, CC.latActive, self.params, self.VM)
|
||||
|
||||
# if we are not the baseline model, we use the baseline model for further limits to prevent a panda block since it is hardcoded for baseline model.
|
||||
if self.CP.carFingerprint != ANGLE_SAFETY_BASELINE_MODEL:
|
||||
apply_angle = apply_steer_angle_limits_vm(apply_angle or desired_angle, self.apply_angle_last, v_ego_raw, CS.out.steeringAngleDeg, CC.latActive,
|
||||
self.params, self.BASELINE_VM)
|
||||
|
||||
# Use saturation-based torque reduction gain
|
||||
target_torque_reduction_gain = self.angle_torque_reduction_gain_controller.update(
|
||||
last_requested_angle=self.apply_angle_last,
|
||||
actual_angle=CS.out.steeringAngleDeg,
|
||||
lat_active=CC.latActive
|
||||
)
|
||||
|
||||
# This method ensures that the torque gives up when overriding and controls the ramp rate to avoid feeling jittery.
|
||||
apply_torque = calculate_angle_torque_reduction_gain(self.params, CS, self.apply_torque_last, target_torque_reduction_gain)
|
||||
|
||||
# apply_steer_req is True when we are actively attempting to steer and under the angle limit. Otherwise the user is overriding.
|
||||
apply_steer_req = CC.latActive and apply_torque != 0
|
||||
|
||||
# Failsafe if we detected we'd violate safety
|
||||
if apply_angle is None:
|
||||
apply_torque = 0
|
||||
apply_angle = CS.out.steeringAngleDeg
|
||||
apply_steer_req = False
|
||||
|
||||
# After we've used the last angle wherever we needed it, we now update it.
|
||||
self.apply_angle_last = apply_angle
|
||||
# >90 degree steering fault prevention
|
||||
self.angle_limit_counter, apply_steer_req = common_fault_avoidance(abs(CS.out.steeringAngleDeg) >= MAX_ANGLE, CC.latActive,
|
||||
self.angle_limit_counter, MAX_ANGLE_FRAMES,
|
||||
MAX_ANGLE_CONSECUTIVE_FRAMES)
|
||||
|
||||
if not CC.latActive:
|
||||
apply_torque = 0
|
||||
@@ -279,7 +125,6 @@ class CarController(CarControllerBase, EsccCarController, LeadDataCarController,
|
||||
new_actuators = actuators.as_builder()
|
||||
new_actuators.torque = apply_torque / self.params.STEER_MAX
|
||||
new_actuators.torqueOutputCan = apply_torque
|
||||
new_actuators.steeringAngleDeg = self.apply_angle_last
|
||||
new_actuators.accel = self.tuning.actual_accel
|
||||
|
||||
self.frame += 1
|
||||
@@ -340,8 +185,7 @@ class CarController(CarControllerBase, EsccCarController, LeadDataCarController,
|
||||
lka_steering_long = lka_steering and self.CP.openpilotLongitudinalControl
|
||||
|
||||
# steering control
|
||||
can_sends.extend(hyundaicanfd.create_steering_messages(self.packer, self.CP, self.CAN, CC.enabled, apply_steer_req, apply_torque, self.apply_angle_last
|
||||
, self.lkas_icon))
|
||||
can_sends.extend(hyundaicanfd.create_steering_messages(self.packer, self.CP, self.CAN, CC.enabled, apply_steer_req, apply_torque, self.lkas_icon))
|
||||
|
||||
# prevent LFA from activating on LKA steering cars by sending "no lane lines detected" to ADAS ECU
|
||||
if self.frame % 5 == 0 and lka_steering:
|
||||
|
||||
@@ -70,9 +70,6 @@ class CarState(CarStateBase, EsccCarStateBase, MadsCarState, CarStateExt):
|
||||
self.cluster_speed_counter = CLUSTER_SAMPLE_RATE
|
||||
|
||||
self.params = CarControllerParams(CP)
|
||||
self.is_canfd_angle_steering = CP.flags & HyundaiFlags.CANFD_ANGLE_STEERING
|
||||
self.imu_lateral_acceleration = 0.0 # used for CAN FD cars with angle steering
|
||||
self.hands_on_steering_grip = 0
|
||||
|
||||
def recent_button_interaction(self) -> bool:
|
||||
# On some newer model years, the CANCEL button acts as a pause/resume button based on the PCM state
|
||||
@@ -255,29 +252,21 @@ class CarState(CarStateBase, EsccCarStateBase, MadsCarState, CarStateExt):
|
||||
cp.vl["WHEEL_SPEEDS"]["WHL_SpdRLVal"] <= STANDSTILL_THRESHOLD and cp.vl["WHEEL_SPEEDS"]["WHL_SpdRRVal"] <= STANDSTILL_THRESHOLD
|
||||
|
||||
ret.steeringRateDeg = cp.vl["STEERING_SENSORS"]["STEERING_RATE"]
|
||||
ret.steeringAngleDeg = cp.vl["MDPS"]["MDPS_EstStrAnglVal"]
|
||||
ret.steeringTorque = cp.vl["MDPS"]["MDPS_StrTqSnsrVal"]
|
||||
ret.steeringTorqueEps = cp.vl["MDPS"]["MDPS_OutTqVal"]
|
||||
ret.steerFaultTemporary = cp.vl["MDPS"]["MDPS_LkaFailSta"] != 0
|
||||
if self.is_canfd_angle_steering:
|
||||
ret.steerFaultTemporary = ret.steerFaultTemporary or cp.vl["MDPS"]["MDPS_ADAS_AciFltSig_Lv2"] != 0
|
||||
self.hands_on_steering_grip = cp.vl["HOD_FD_01_100ms"]["HOD_Dir_Status"]
|
||||
torque_overriding = abs(ret.steeringTorque) > self.params.STEER_THRESHOLD
|
||||
ret.steeringPressed = self.update_steering_pressed(torque_overriding, 5)
|
||||
self.imu_lateral_acceleration = cp.vl["IMU_01_10ms"]["IMU_LatAccelVal"] * 9.81 # m/s^2
|
||||
else:
|
||||
ret.steeringPressed = self.update_steering_pressed(abs(ret.steeringTorque) > self.params.STEER_THRESHOLD, 5)
|
||||
ret.steeringAngleDeg = cp.vl["STEERING_SENSORS"]["STEERING_ANGLE"]
|
||||
ret.steeringTorque = cp.vl["MDPS"]["STEERING_COL_TORQUE"]
|
||||
ret.steeringTorqueEps = cp.vl["MDPS"]["STEERING_OUT_TORQUE"]
|
||||
ret.steeringPressed = self.update_steering_pressed(abs(ret.steeringTorque) > self.params.STEER_THRESHOLD, 5)
|
||||
ret.steerFaultTemporary = cp.vl["MDPS"]["LKA_FAULT"] != 0
|
||||
|
||||
# TODO: alt signal usage may be described by cp.vl['BLINKERS']['USE_ALT_LAMP']
|
||||
left_blinker_sig, right_blinker_sig = "LEFT_LAMP", "RIGHT_LAMP"
|
||||
if self.CP.carFingerprint == CAR.HYUNDAI_KONA_EV_2ND_GEN or self.is_canfd_angle_steering:
|
||||
if self.CP.carFingerprint == CAR.HYUNDAI_KONA_EV_2ND_GEN:
|
||||
left_blinker_sig, right_blinker_sig = "LEFT_LAMP_ALT", "RIGHT_LAMP_ALT"
|
||||
ret.leftBlinker, ret.rightBlinker = self.update_blinker_from_lamp(50, cp.vl["BLINKERS"][left_blinker_sig],
|
||||
cp.vl["BLINKERS"][right_blinker_sig])
|
||||
if self.CP.enableBsm:
|
||||
suffix = "_ALT" if self.is_canfd_angle_steering else ""
|
||||
ret.leftBlindspot = cp.vl["BLINDSPOTS_REAR_CORNERS"][f"FL_INDICATOR{suffix}"] != 0
|
||||
ret.rightBlindspot = cp.vl["BLINDSPOTS_REAR_CORNERS"][f"FR_INDICATOR{suffix}"] != 0
|
||||
ret.leftBlindspot = cp.vl["BLINDSPOTS_REAR_CORNERS"]["FL_INDICATOR"] != 0
|
||||
ret.rightBlindspot = cp.vl["BLINDSPOTS_REAR_CORNERS"]["FR_INDICATOR"] != 0
|
||||
|
||||
# cruise state
|
||||
# CAN FD cars enable on main button press, set available if no TCS faults preventing engagement
|
||||
|
||||
@@ -346,16 +346,6 @@ FW_VERSIONS = {
|
||||
b'\xf1\x00TMP MFC AT USA LHD 1.00 1.06 99211-S1500 220727',
|
||||
],
|
||||
},
|
||||
CAR.HYUNDAI_SANTA_FE_HEV_5TH_GEN: {
|
||||
(Ecu.fwdCamera, 0x7c4, None): [
|
||||
b'\xf1\x00MX5HMFC AT KOR LHD 1.00 1.07 99211-P6000 231218',
|
||||
b'\xf1\x00MX5HMFC AT USA LHD 1.00 1.06 99211-R6000 231218',
|
||||
],
|
||||
(Ecu.fwdRadar, 0x7d0, None): [
|
||||
b'\xf1\x00MX5_ RDR ----- 1.00 1.01 99110-P6000 ',
|
||||
b'\xf1\x00MX5_ RDR ----- 1.00 1.01 99110-R6000 ',
|
||||
],
|
||||
},
|
||||
CAR.HYUNDAI_CUSTIN_1ST_GEN: {
|
||||
(Ecu.abs, 0x7d1, None): [
|
||||
b'\xf1\x00KU ESC \x01 101!\x02\x03 58910-O3200',
|
||||
@@ -1031,32 +1021,6 @@ FW_VERSIONS = {
|
||||
b'\xf1\x00CV1 MFC AT USA LHD 1.00 1.06 99210-CV000 220328',
|
||||
],
|
||||
},
|
||||
CAR.KIA_EV6_2025: {
|
||||
(Ecu.fwdRadar, 0x7d0, None): [
|
||||
b'\xf1\x00CV__ RDR ----- 1.00 1.00 99110-XG500 ',
|
||||
b'\xf1\x00CV__ RDR ----- 1.00 1.01 99110-CV500 ',
|
||||
],
|
||||
(Ecu.fwdCamera, 0x7c4, None): [
|
||||
b'\xf1\x00CV MFC AT KOR LHD 1.00 1.01 99210-CV500 240405',
|
||||
b'\xf1\x00CV MFC AT USA LHD 1.00 1.02 99210-XG500 241223',
|
||||
],
|
||||
},
|
||||
CAR.KIA_EV9: {
|
||||
(Ecu.fwdRadar, 0x7d0, None): [
|
||||
b'\xf1\x00MV__ RDR ----- 1.00 1.02 99110-DO000 ',
|
||||
b'\xf1\x00MV__ RDR ----- 1.00 1.03 99110-DO000 ',
|
||||
b'\xf1\x00MV__ RDR ----- 1.00 1.04 99110-DO000 ',
|
||||
b'\xf1\x00MV__ RDR ----- 1.00 1.02 99110-DO700 ',
|
||||
],
|
||||
(Ecu.fwdCamera, 0x7c4, None): [
|
||||
b'\xf1\x00MV MFC AT KOR LHD 1.00 1.01 99211-DO000 230419',
|
||||
b'\xf1\x00MV MFC AT USA LHD 1.00 1.02 99211-DO000 230616',
|
||||
b'\xf1\x00MV MFC AT EUR LHD 1.00 1.02 99211-DO000 230616',
|
||||
b'\xf1\x00MV MFC AT CAN LHD 1.00 1.00 99211-DO100 240403',
|
||||
b'\xf1\x00MV MFC AT USA LHD 1.00 1.01 99211-XA000 241023',
|
||||
b'\xf1\x00MV MFC AT CAN LHD 1.00 1.01 99211-DO100 241023',
|
||||
],
|
||||
},
|
||||
CAR.HYUNDAI_IONIQ_5: {
|
||||
(Ecu.fwdRadar, 0x7d0, None): [
|
||||
b'\xf1\x00NE1_ RDR ----- 1.00 1.00 99110-GI000 ',
|
||||
@@ -1088,16 +1052,6 @@ FW_VERSIONS = {
|
||||
b'\xf1\x00NE1 MFC AT USA LHD 1.00 1.06 99211-GI010 230110',
|
||||
],
|
||||
},
|
||||
CAR.HYUNDAI_IONIQ_5_PE: {
|
||||
(Ecu.fwdRadar, 0x7d0, None): [
|
||||
b'\xf1\x00NE__ RDR ----- 1.00 1.00 99110-PI000 ',
|
||||
b'\xf1\x00NE__ RDR ----- 1.00 1.01 99110-GI500 '
|
||||
],
|
||||
(Ecu.fwdCamera, 0x7C4, None): [
|
||||
b'\xf1\x00NE MFC AT USA LHD 1.00 1.01 99211-PI000 240905',
|
||||
b'\xf1\x00NE MFC AT EUR LHD 1.00 1.03 99211-GI500 240809',
|
||||
],
|
||||
},
|
||||
CAR.HYUNDAI_IONIQ_6: {
|
||||
(Ecu.fwdRadar, 0x7d0, None): [
|
||||
b'\xf1\x00CE__ RDR ----- 1.00 1.01 99110-KL000 ',
|
||||
@@ -1189,14 +1143,6 @@ FW_VERSIONS = {
|
||||
b'\xf1\x00JKev SCC ----- 1.00 1.01 99110-DS000 ',
|
||||
],
|
||||
},
|
||||
CAR.GENESIS_GV70_ELECTRIFIED_2ND_GEN: {
|
||||
(Ecu.fwdCamera, 0x7c4, None): [
|
||||
b'\xf1\x00JK MFC AT USA LHD 1.00 1.03 99211-DS600 241125',
|
||||
],
|
||||
(Ecu.fwdRadar, 0x7d0, None): [
|
||||
b'\xf1\x00JK__ RDR ----- 1.00 1.01 99110-DS500 ',
|
||||
],
|
||||
},
|
||||
CAR.GENESIS_GV60_EV_1ST_GEN: {
|
||||
(Ecu.fwdCamera, 0x7c4, None): [
|
||||
b'\xf1\x00JW1 MFC AT AUS RHD 1.00 1.03 99211-CU100 221118',
|
||||
@@ -1253,14 +1199,6 @@ FW_VERSIONS = {
|
||||
b'\xf1\x00JX1_ SCC FHCUP 1.00 1.01 99110-T6100 ',
|
||||
],
|
||||
},
|
||||
CAR.GENESIS_GV80_2025: {
|
||||
(Ecu.fwdRadar, 0x7d0, None): [
|
||||
b'\xf1\x00JX__ RDR ----- 1.00 1.03 99110-T6500 ',
|
||||
],
|
||||
(Ecu.fwdCamera, 0x7c4, None): [
|
||||
b'\xf1\x00JX MFC AT USA LHD 1.00 1.03 99211-T6510 240124',
|
||||
],
|
||||
},
|
||||
CAR.KIA_CARNIVAL_4TH_GEN: {
|
||||
(Ecu.fwdCamera, 0x7c4, None): [
|
||||
b'\xf1\x00KA4 MFC AT EUR LHD 1.00 1.06 99210-R0000 220221',
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import copy
|
||||
import numpy as np
|
||||
from opendbc.car import CanBusBase
|
||||
from opendbc.car.crc import CRC16_XMODEM
|
||||
@@ -36,39 +37,33 @@ class CanBus(CanBusBase):
|
||||
return self._cam
|
||||
|
||||
|
||||
def create_steering_messages(packer, CP, CAN, enabled, lat_active, apply_torque, apply_angle, lkas_icon):
|
||||
values = {
|
||||
"LKA_OptUsmSta": 2,
|
||||
"LKA_SysIndReq": 2 if enabled else 1,
|
||||
"StrTqReqVal": apply_torque,
|
||||
"LKA_SysWrn": 0,
|
||||
"ActToiSta": 1 if lat_active else 0,
|
||||
"Damping_Gain": 100, # can potentially tuned for better perf [3, 200]
|
||||
"LKA_UsmMod": 0, # hide LKAS settings
|
||||
"LKA_RcgSta": 0, # lane recognition status (0 for "not recognized")
|
||||
def create_steering_messages(packer, CP, CAN, enabled, lat_active, apply_torque, lkas_icon):
|
||||
common_values = {
|
||||
"LKA_MODE": 2,
|
||||
"LKA_ICON": lkas_icon,
|
||||
"TORQUE_REQUEST": apply_torque,
|
||||
"LKA_ASSIST": 0,
|
||||
"STEER_REQ": 1 if lat_active else 0,
|
||||
"STEER_MODE": 0,
|
||||
"HAS_LANE_SAFETY": 0, # hide LKAS settings
|
||||
"NEW_SIGNAL_2": 0,
|
||||
"DAMP_FACTOR": 100, # can potentially tuned for better perf [3, 200]
|
||||
}
|
||||
|
||||
# Angle control doesn't support using LFA yet
|
||||
if CP.flags & HyundaiFlags.CANFD_ANGLE_STEERING:
|
||||
# LKAS messages take priority over LFA messages on HDA2.
|
||||
values |= {
|
||||
"LKA_OptUsmSta": 0, # TODO: not used by the stock system
|
||||
"StrTqReqVal": 0, # we don't use torque
|
||||
"ActToiSta": 0, # we don't use torque
|
||||
"LKA_RcgSta": 3 if lat_active else 0,
|
||||
"ADAS_StrAnglReqVal": apply_angle,
|
||||
"LKAS_ANGLE_ACTIVE": 2 if lat_active else 1,
|
||||
"ADAS_ACIAnglTqRedcGainVal": apply_torque if lat_active else 0,
|
||||
}
|
||||
lkas_values = copy.copy(common_values)
|
||||
lkas_values["LKA_AVAILABLE"] = 0
|
||||
|
||||
lfa_values = copy.copy(common_values)
|
||||
lfa_values["NEW_SIGNAL_1"] = 0
|
||||
|
||||
ret = []
|
||||
if CP.flags & HyundaiFlags.CANFD_LKA_STEERING:
|
||||
lkas_msg = "LKAS_ALT" if CP.flags & HyundaiFlags.CANFD_LKA_STEERING_ALT else "LKAS"
|
||||
if CP.openpilotLongitudinalControl:
|
||||
ret.append(packer.make_can_msg("LFA", CAN.ECAN, values))
|
||||
ret.append(packer.make_can_msg(lkas_msg, CAN.ACAN, values))
|
||||
ret.append(packer.make_can_msg("LFA", CAN.ECAN, lfa_values))
|
||||
ret.append(packer.make_can_msg(lkas_msg, CAN.ACAN, lkas_values))
|
||||
else:
|
||||
ret.append(packer.make_can_msg("LFA", CAN.ECAN, values))
|
||||
ret.append(packer.make_can_msg("LFA", CAN.ECAN, lfa_values))
|
||||
|
||||
return ret
|
||||
|
||||
|
||||
@@ -54,7 +54,6 @@ class CarInterface(CarInterfaceBase):
|
||||
if lka_steering:
|
||||
# detect LKA steering
|
||||
ret.flags |= HyundaiFlags.CANFD_LKA_STEERING.value
|
||||
# we only have validated ALT messages for angle steering cars
|
||||
if 0x110 in fingerprint[CAN.CAM]:
|
||||
ret.flags |= HyundaiFlags.CANFD_LKA_STEERING_ALT.value
|
||||
else:
|
||||
@@ -85,9 +84,6 @@ class CarInterface(CarInterfaceBase):
|
||||
ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.CANFD_ALT_BUTTONS.value
|
||||
if ret.flags & HyundaiFlags.CANFD_CAMERA_SCC:
|
||||
ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.CAMERA_SCC.value
|
||||
if ret.flags & HyundaiFlags.CANFD_ANGLE_STEERING:
|
||||
ret.steerControlType = structs.CarParams.SteerControlType.angle
|
||||
ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.CANFD_ANGLE_STEERING.value
|
||||
|
||||
else:
|
||||
# Shared configuration for non CAN-FD cars
|
||||
@@ -120,9 +116,7 @@ class CarInterface(CarInterfaceBase):
|
||||
ret.centerToFront = ret.wheelbase * 0.4
|
||||
ret.steerActuatorDelay = 0.1
|
||||
ret.steerLimitTimer = 0.4
|
||||
|
||||
if not (ret.flags & HyundaiFlags.CANFD_ANGLE_STEERING):
|
||||
CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning)
|
||||
CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning)
|
||||
|
||||
if ret.flags & HyundaiFlags.ALT_LIMITS:
|
||||
ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.ALT_LIMITS.value
|
||||
|
||||
@@ -1,74 +0,0 @@
|
||||
# CarController Debug Replay Guide
|
||||
|
||||
This guide outlines the steps needed to replay a drive and debug `carcontroller.py` using breakpoints in the `card.py` process.
|
||||
|
||||
---
|
||||
|
||||
## ✅ Step 1: Set Environment Variables
|
||||
|
||||
`card.py` requires environment variables to simulate the target vehicle. Set them before launching the process.
|
||||
|
||||
Example for KIA EV9:
|
||||
|
||||
```sh
|
||||
export FINGERPRINT=KIA_EV9
|
||||
export SKIP_FW_QUERY=1
|
||||
```
|
||||
|
||||
You can add these to your shell session or prefix the command launching `card.py`.
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Step 2: Launch `card.py` Manually
|
||||
|
||||
Start `card.py` as a standalone process so you can attach a debugger or use breakpoints.
|
||||
|
||||
```sh
|
||||
cd selfdrive/car
|
||||
python card.py
|
||||
```
|
||||
|
||||
> 🔑 Make sure your breakpoints are set **in this process**, not in the replay one.
|
||||
|
||||
---
|
||||
|
||||
## 🔁 Step 3: Run the Replay
|
||||
|
||||
Use the `replay` tool to play back a segment, blocking certain publishers to avoid conflicts with the live `card.py`.
|
||||
|
||||
### Example:
|
||||
|
||||
```sh
|
||||
./tools/replay/replay "cb6aec3054a67f94/00000273--dae50621b9" \
|
||||
--block "sendcan,carState,carParams,carOutput,liveTracks,carParamsSP,carStateSP"
|
||||
```
|
||||
|
||||
This prevents `replay` from publishing messages that `card.py` is responsible for generating.
|
||||
|
||||
---
|
||||
|
||||
|
||||
## 🔧 Common Issues
|
||||
|
||||
| Symptom | Likely Cause |
|
||||
| ---------------------------------------- | ----------------------------------------------------------------------------------- |
|
||||
| No breakpoints hit in `carcontroller.py` | Replay is blocking too much or not enough. Confirm `card.py` is running standalone. |
|
||||
| No CAN output | `sendcan` not blocked in replay; conflict with replay publisher. |
|
||||
| No data in replay | Incorrect segment path or segment not downloaded properly. |
|
||||
|
||||
---
|
||||
|
||||
## 📝 Segment Path Format
|
||||
|
||||
The path used in `replay` follows this format:
|
||||
|
||||
```
|
||||
<route_prefix>/<segment_name>
|
||||
```
|
||||
|
||||
Example:
|
||||
|
||||
```sh
|
||||
cb6aec3054a67f94/00000273--dae50621b9
|
||||
```
|
||||
|
||||
@@ -1,93 +0,0 @@
|
||||
import time
|
||||
import pytest
|
||||
from opendbc.car.hyundai.torque_reduction_gain import TorqueReductionGainController
|
||||
|
||||
|
||||
class FakeTime:
|
||||
def __init__(self):
|
||||
self._now = 1000.0
|
||||
|
||||
def monotonic(self):
|
||||
return self._now
|
||||
|
||||
def advance(self, dt):
|
||||
self._now += dt
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def fake_time(monkeypatch):
|
||||
# Patch time.monotonic to use our controllable FakeTime for deterministic tests
|
||||
ft = FakeTime()
|
||||
monkeypatch.setattr(time, 'monotonic', ft.monotonic)
|
||||
return ft
|
||||
|
||||
|
||||
def test_gain_increases_when_saturated(fake_time):
|
||||
# Test: Gain should increase when angle error is above threshold and after debounce
|
||||
ctrl = TorqueReductionGainController(angle_threshold=2.0, debounce_time=0.2, ramp_up_rate=0.5)
|
||||
gain = ctrl.update(last_requested_angle=10, actual_angle=0, lat_active=True)
|
||||
# Initially, gain should be at minimum (0.0)
|
||||
assert gain == 0.0
|
||||
fake_time.advance(0.3) # Advance time past debounce
|
||||
gain = ctrl.update(last_requested_angle=10, actual_angle=0, lat_active=True)
|
||||
# After debounce, gain should start increasing
|
||||
assert gain > 0.0
|
||||
prev_gain = gain
|
||||
fake_time.advance(1.0)
|
||||
gain = ctrl.update(last_requested_angle=10, actual_angle=0, lat_active=True)
|
||||
# Gain should continue to increase but not exceed 1.0
|
||||
assert gain > prev_gain
|
||||
assert gain <= 1.0
|
||||
|
||||
|
||||
def test_gain_resets_when_not_active(fake_time):
|
||||
# Test: Gain should reset to minimum when lateral control is not active
|
||||
ctrl = TorqueReductionGainController(angle_threshold=2.0, debounce_time=0.1, ramp_up_rate=1.0)
|
||||
ctrl.update(last_requested_angle=10, actual_angle=0, lat_active=True)
|
||||
fake_time.advance(0.2)
|
||||
ctrl.update(last_requested_angle=10, actual_angle=0, lat_active=True)
|
||||
fake_time.advance(0.2)
|
||||
gain = ctrl.update(last_requested_angle=10, actual_angle=0, lat_active=True)
|
||||
assert gain > 0.0 # Gain has increased
|
||||
gain = ctrl.update(last_requested_angle=10, actual_angle=0, lat_active=False)
|
||||
# When lat_active is False, gain should reset to 0.0
|
||||
assert gain == 0.0
|
||||
|
||||
|
||||
def test_gain_decreases_when_not_saturated(fake_time):
|
||||
# Test: Gain should decrease when angle error drops below threshold (not saturated)
|
||||
ctrl = TorqueReductionGainController(angle_threshold=2.0, debounce_time=0.1, ramp_up_rate=1.0, ramp_down_rate=0.5)
|
||||
ctrl.update(last_requested_angle=10, actual_angle=0, lat_active=True)
|
||||
fake_time.advance(0.2)
|
||||
ctrl.update(last_requested_angle=10, actual_angle=0, lat_active=True)
|
||||
fake_time.advance(0.2)
|
||||
gain = ctrl.update(last_requested_angle=10, actual_angle=0, lat_active=True)
|
||||
assert gain > 0.0 # Gain has increased
|
||||
prev_gain = gain
|
||||
fake_time.advance(0.5)
|
||||
# Now, requested and actual angles are equal (no error)
|
||||
gain = ctrl.update(last_requested_angle=10, actual_angle=10, lat_active=True)
|
||||
# Gain should decrease
|
||||
assert gain < prev_gain
|
||||
|
||||
|
||||
def test_gain_clamped(fake_time):
|
||||
# Test: Gain should be clamped between min_gain and max_gain
|
||||
ctrl = TorqueReductionGainController(angle_threshold=1.0, debounce_time=0.0, ramp_up_rate=10.0, min_gain=0.2, max_gain=0.8)
|
||||
gain = 0.
|
||||
for _ in range(10):
|
||||
fake_time.advance(0.1)
|
||||
gain = ctrl.update(last_requested_angle=10, actual_angle=0, lat_active=True)
|
||||
# Gain should not exceed max_gain and not go below min_gain
|
||||
assert 0.2 <= gain <= 0.8
|
||||
assert gain == 0.8
|
||||
|
||||
|
||||
def test_gain_no_increase_below_threshold(fake_time):
|
||||
# Test: Gain should not increase if angle error is below the threshold
|
||||
ctrl = TorqueReductionGainController(angle_threshold=5.0, debounce_time=0.1, ramp_up_rate=1.0)
|
||||
ctrl.update(last_requested_angle=2, actual_angle=0, lat_active=True)
|
||||
fake_time.advance(0.2)
|
||||
gain = ctrl.update(last_requested_angle=2, actual_angle=0, lat_active=True)
|
||||
# Since error is below threshold, gain should remain at minimum
|
||||
assert gain == 0.0
|
||||
@@ -1,50 +0,0 @@
|
||||
import time
|
||||
|
||||
|
||||
class TorqueReductionGainController:
|
||||
def __init__(self, angle_threshold=3.0, debounce_time=0.5, min_gain=0.0, max_gain=1.0, ramp_up_rate=0.1, ramp_down_rate=0.05):
|
||||
"""
|
||||
angle_threshold: degrees difference to consider as 'saturated'
|
||||
debounce_time: seconds to wait before increasing gain
|
||||
min_gain: minimum torque reduction gain (0 = no torque)
|
||||
max_gain: maximum torque reduction gain (1 = max torque)
|
||||
ramp_up_rate: gain increase per second when saturated
|
||||
ramp_down_rate: gain decrease per second when not saturated
|
||||
"""
|
||||
self.angle_threshold = angle_threshold
|
||||
self.debounce_time = debounce_time
|
||||
self.min_gain = min_gain
|
||||
self.max_gain = max_gain
|
||||
self.ramp_up_rate = ramp_up_rate
|
||||
self.ramp_down_rate = ramp_down_rate
|
||||
self.saturated_since = None
|
||||
self.gain = min_gain
|
||||
self.last_update_time = time.monotonic()
|
||||
|
||||
def update(self, last_requested_angle, actual_angle, lat_active):
|
||||
now = time.monotonic()
|
||||
dt = now - self.last_update_time
|
||||
self.last_update_time = now
|
||||
|
||||
angle_error = abs(last_requested_angle - actual_angle)
|
||||
saturated = lat_active and angle_error > self.angle_threshold
|
||||
|
||||
if saturated:
|
||||
if self.saturated_since is None:
|
||||
self.saturated_since = now
|
||||
elif (now - self.saturated_since) > self.debounce_time:
|
||||
self.gain = min(self.gain + self.ramp_up_rate * dt, self.max_gain)
|
||||
else:
|
||||
self.saturated_since = None
|
||||
self.gain = max(self.gain - self.ramp_down_rate * dt, self.min_gain)
|
||||
|
||||
if not lat_active:
|
||||
self.gain = self.min_gain
|
||||
self.saturated_since = None
|
||||
|
||||
return self.gain
|
||||
|
||||
def reset(self):
|
||||
self.gain = self.min_gain
|
||||
self.saturated_since = None
|
||||
self.last_update_time = time.monotonic()
|
||||
@@ -2,8 +2,7 @@ import re
|
||||
from dataclasses import dataclass, field
|
||||
from enum import Enum, IntFlag
|
||||
|
||||
from opendbc.car import Bus, CarSpecs, DbcDict, PlatformConfig, Platforms, uds, ACCELERATION_DUE_TO_GRAVITY
|
||||
from opendbc.car.lateral import AngleSteeringLimits, ISO_LATERAL_ACCEL
|
||||
from opendbc.car import Bus, CarSpecs, DbcDict, PlatformConfig, Platforms, uds
|
||||
from opendbc.car.common.conversions import Conversions as CV
|
||||
from opendbc.car.structs import CarParams
|
||||
from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column, Device
|
||||
@@ -13,59 +12,11 @@ from opendbc.sunnypilot.car.hyundai.values import HyundaiFlagsSP
|
||||
|
||||
Ecu = CarParams.Ecu
|
||||
|
||||
# Add extra tolerance for average banked road since safety doesn't have the roll
|
||||
AVERAGE_ROAD_ROLL = 0.06 # ~0 degrees, 0% superelevation. higher actual roll lowers lateral acceleration (it's 0 for HKG to remove margin)
|
||||
|
||||
|
||||
class CarControllerParams:
|
||||
ACCEL_MIN = -3.5 # m/s
|
||||
ACCEL_MAX = 2.0 # m/s
|
||||
|
||||
ANGLE_LIMITS: AngleSteeringLimits = AngleSteeringLimits(
|
||||
# Steering angle limits based on observed stock ADAS behavior:
|
||||
# - LKAS max requested angle is 176.7°, but no fault occurs if higher values are requested.
|
||||
# - LFA max stock value is 119.9°.
|
||||
# The ADAS ECU clamps LKAS commands above 176.7° down to 176.7°,
|
||||
# and clamps LFA commands above 119.9° down to 119.9°.
|
||||
180, # degrees (safe upper bound for command, allowing some margin)
|
||||
# HKG uses a vehicle model instead, check carcontroller.py for details
|
||||
([], []),
|
||||
([], []),
|
||||
MAX_LATERAL_ACCEL=(ISO_LATERAL_ACCEL + (ACCELERATION_DUE_TO_GRAVITY * AVERAGE_ROAD_ROLL)), # ~3.6 m/s^2
|
||||
MAX_LATERAL_JERK=(3.0 + (ACCELERATION_DUE_TO_GRAVITY * AVERAGE_ROAD_ROLL)), # ~3.6 m/s^3,
|
||||
MAX_ANGLE_RATE=5 # comfort rate limit for angle commands, in degrees per frame.
|
||||
)
|
||||
|
||||
# Torque control parameters:
|
||||
# The stock torque values we observed are:
|
||||
# - 1.0 is the max we've observed during stock LFA.
|
||||
# - 0.7 has been observed in some models as the max LKAS torque requested.
|
||||
#
|
||||
# Note: When using angle-based steering control, the Torque Reduction Gain
|
||||
# does NOT directly affect lateral acceleration or jerk limits.
|
||||
# Those limits are determined solely by the commanded steering angle and vehicle speed.
|
||||
# In contrast, torque-based control systems do not use a Torque Reduction Gain,
|
||||
# but instead rely directly on torque commands which directly influence these limits.
|
||||
#
|
||||
# The normalized torque command defines the maximum steering torque we allow the EPS to apply
|
||||
# to reach the desired steering angle, effectively limiting the maximum assist torque.
|
||||
|
||||
ANGLE_MAX_TORQUE_REDUCTION_GAIN = 1. # Maximum torque command applied to the steering actuator.
|
||||
ANGLE_MIN_TORQUE_REDUCTION_GAIN = 0.1 # Minimum torque command allowed when the driver is overriding, to maintain steering feedback.
|
||||
ANGLE_ACTIVE_TORQUE_REDUCTION_GAIN = 0.6 # Torque command when the car is stopped, to prevent steering wheel from being too loose.
|
||||
|
||||
# Rate limits for changing steering torque commands:
|
||||
ANGLE_RAMP_UP_TORQUE_REDUCTION_RATE = 0.008 # Maximum rate at which torque can increase per control cycle.
|
||||
ANGLE_RAMP_DOWN_TORQUE_REDUCTION_RATE = 0.0012 # Maximum rate at which torque can decrease per cycle
|
||||
|
||||
ANGLE_TORQUE_OVERRIDE_CYCLES = 17 # Number of control cycles over which torque ramps down to minimum after driver override is detected.
|
||||
|
||||
# More torque optimization
|
||||
# The torque is calculated based on the curvature of the road and the speed of the car and it's a percentage of the maximum torque.
|
||||
SMOOTHING_ANGLE_VEGO_MATRIX = [0, 8.5, 11, 13.8, 22.22]
|
||||
SMOOTHING_ANGLE_ALPHA_MATRIX = [0.05, 0.1, 0.3, 0.6, 1]
|
||||
SMOOTHING_ANGLE_MAX_VEGO = SMOOTHING_ANGLE_VEGO_MATRIX[-1]
|
||||
|
||||
def __init__(self, CP):
|
||||
self.STEER_DELTA_UP = 3
|
||||
self.STEER_DELTA_DOWN = 7
|
||||
@@ -83,9 +34,6 @@ class CarControllerParams:
|
||||
self.STEER_DELTA_UP = 2
|
||||
self.STEER_DELTA_DOWN = 3
|
||||
|
||||
if CP.flags & HyundaiFlags.CANFD_ANGLE_STEERING:
|
||||
self.STEER_THRESHOLD = 175
|
||||
|
||||
# To determine the limit for your car, find the maximum value that the stock LKAS will request.
|
||||
# If the max stock LKAS request is <384, add your car to this list.
|
||||
elif CP.carFingerprint in (CAR.GENESIS_G80, CAR.HYUNDAI_ELANTRA, CAR.HYUNDAI_ELANTRA_GT_I30, CAR.HYUNDAI_IONIQ,
|
||||
@@ -120,7 +68,6 @@ class HyundaiSafetyFlags(IntFlag):
|
||||
CANFD_LKA_STEERING_ALT = 128
|
||||
FCEV_GAS = 256
|
||||
ALT_LIMITS_2 = 512
|
||||
CANFD_ANGLE_STEERING = 1024
|
||||
|
||||
|
||||
class HyundaiFlags(IntFlag):
|
||||
@@ -181,8 +128,6 @@ class HyundaiFlags(IntFlag):
|
||||
|
||||
ALT_LIMITS_2 = 2 ** 26
|
||||
|
||||
CANFD_ANGLE_STEERING = 2 ** 27
|
||||
|
||||
|
||||
class Footnote(Enum):
|
||||
CANFD = CarFootnote(
|
||||
@@ -360,14 +305,6 @@ class CAR(Platforms):
|
||||
HYUNDAI_SANTA_FE.specs,
|
||||
flags=HyundaiFlags.MANDO_RADAR | HyundaiFlags.CHECKSUM_CRC8 | HyundaiFlags.HYBRID,
|
||||
)
|
||||
HYUNDAI_SANTA_FE_HEV_5TH_GEN = HyundaiCanFDPlatformConfig(
|
||||
[
|
||||
HyundaiCarDocs("Hyundai Santa Fe Hybrid (with HDA II & LFA2) 2024-25", "Highway Driving Assist II & Lane Follow Assist 2",
|
||||
car_parts=CarParts.common([CarHarness.hyundai_p])),
|
||||
],
|
||||
CarSpecs(mass=2035, wheelbase=2.81, steerRatio=13.72),
|
||||
flags=HyundaiFlags.CANFD_ANGLE_STEERING,
|
||||
)
|
||||
HYUNDAI_SONATA = HyundaiPlatformConfig(
|
||||
[HyundaiCarDocs("Hyundai Sonata 2020-23", "All", video="https://www.youtube.com/watch?v=ix63r9kE3Fw",
|
||||
car_parts=CarParts.common([CarHarness.hyundai_a]))],
|
||||
@@ -418,14 +355,6 @@ class CAR(Platforms):
|
||||
CarSpecs(mass=1948, wheelbase=2.97, steerRatio=14.26, tireStiffnessFactor=0.65),
|
||||
flags=HyundaiFlags.EV,
|
||||
)
|
||||
HYUNDAI_IONIQ_5_PE = HyundaiCanFDPlatformConfig(
|
||||
[
|
||||
HyundaiCarDocs("Hyundai Ioniq 5 PE (with HDA II & LFA2) 2025", "Highway Driving Assist II & Lane Follow Assist 2",
|
||||
car_parts=CarParts.common([CarHarness.hyundai_q]))
|
||||
],
|
||||
HYUNDAI_IONIQ_5.specs,
|
||||
flags=HyundaiFlags.EV | HyundaiFlags.CANFD_ANGLE_STEERING,
|
||||
)
|
||||
HYUNDAI_IONIQ_6 = HyundaiCanFDPlatformConfig(
|
||||
[HyundaiCarDocs("Hyundai Ioniq 6 (with HDA II) 2023-24", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_p]))],
|
||||
HYUNDAI_IONIQ_5.specs,
|
||||
@@ -601,20 +530,6 @@ class CAR(Platforms):
|
||||
CarSpecs(mass=2055, wheelbase=2.9, steerRatio=16, tireStiffnessFactor=0.65),
|
||||
flags=HyundaiFlags.EV,
|
||||
)
|
||||
KIA_EV6_2025 = HyundaiCanFDPlatformConfig(
|
||||
[
|
||||
HyundaiCarDocs("Kia EV6 (with HDA I) 2025", "Highway Driving Assist I", car_parts=CarParts.common([CarHarness.hyundai_p]))
|
||||
],
|
||||
CarSpecs(mass=2055, wheelbase=2.9, steerRatio=16, tireStiffnessFactor=0.65),
|
||||
flags=HyundaiFlags.EV | HyundaiFlags.CANFD_ANGLE_STEERING,
|
||||
)
|
||||
KIA_EV9 = HyundaiCanFDPlatformConfig(
|
||||
[
|
||||
HyundaiCarDocs("Kia EV9 2025-26", car_parts=CarParts.common([CarHarness.hyundai_r]))
|
||||
],
|
||||
CarSpecs(mass=2664, wheelbase=3.1, steerRatio=16),
|
||||
flags=HyundaiFlags.EV | HyundaiFlags.CANFD_ANGLE_STEERING,
|
||||
)
|
||||
KIA_CARNIVAL_4TH_GEN = HyundaiCanFDPlatformConfig(
|
||||
[
|
||||
HyundaiCarDocs("Kia Carnival 2022-24", car_parts=CarParts.common([CarHarness.hyundai_a])),
|
||||
@@ -665,13 +580,6 @@ class CAR(Platforms):
|
||||
CarSpecs(mass=2260, wheelbase=2.87, steerRatio=17.1),
|
||||
flags=HyundaiFlags.EV,
|
||||
)
|
||||
GENESIS_GV70_ELECTRIFIED_2ND_GEN = HyundaiCanFDPlatformConfig(
|
||||
[
|
||||
HyundaiCarDocs("Genesis GV70 Electrified 2026", "All", car_parts=CarParts.common([CarHarness.hyundai_m])),
|
||||
],
|
||||
GENESIS_GV70_ELECTRIFIED_1ST_GEN.specs,
|
||||
flags=HyundaiFlags.EV | HyundaiFlags.CANFD_ANGLE_STEERING,
|
||||
)
|
||||
GENESIS_G80 = HyundaiPlatformConfig(
|
||||
[HyundaiCarDocs("Genesis G80 2018-19", "All", car_parts=CarParts.common([CarHarness.hyundai_h]))],
|
||||
CarSpecs(mass=2060, wheelbase=3.01, steerRatio=16.5),
|
||||
@@ -690,16 +598,6 @@ class CAR(Platforms):
|
||||
CarSpecs(mass=2258, wheelbase=2.95, steerRatio=14.14),
|
||||
flags=HyundaiFlags.RADAR_SCC,
|
||||
)
|
||||
GENESIS_GV80_2025 = HyundaiCanFDPlatformConfig(
|
||||
[
|
||||
HyundaiCarDocs("Genesis GV80 (3.5T Prestige Trim, with HDA II & LFA2) 2025", "Highway Driving Assist II & Lane Follow Assist 2",
|
||||
car_parts=CarParts.common([CarHarness.hyundai_q])),
|
||||
HyundaiCarDocs("Genesis GV80 Coupe (with HDA II & LFA2) 2025", "Highway Driving Assist II & Lane Follow Assist 2",
|
||||
car_parts=CarParts.common([CarHarness.hyundai_q])),
|
||||
],
|
||||
GENESIS_GV80.specs,
|
||||
flags=HyundaiFlags.CANFD_ANGLE_STEERING,
|
||||
)
|
||||
|
||||
# port extensions
|
||||
HYUNDAI_BAYON_1ST_GEN_NON_SCC = HyundaiPlatformConfig(
|
||||
|
||||
@@ -105,7 +105,7 @@ def get_max_angle_vm(v_ego_raw: float, VM: VehicleModel, limits):
|
||||
|
||||
|
||||
def apply_steer_angle_limits_vm(apply_angle: float, apply_angle_last: float, v_ego_raw: float, steering_angle: float,
|
||||
lat_active: bool, limits, VM: VehicleModel) -> float | None:
|
||||
lat_active: bool, limits, VM: VehicleModel) -> float:
|
||||
"""Apply jerk, accel, and safety limit constraints to steering angle."""
|
||||
v_ego_raw = max(v_ego_raw, 1)
|
||||
|
||||
@@ -120,13 +120,6 @@ def apply_steer_angle_limits_vm(apply_angle: float, apply_angle_last: float, v_e
|
||||
max_angle = get_max_angle_vm(v_ego_raw, VM, limits)
|
||||
new_apply_angle = np.clip(new_apply_angle, -max_angle, max_angle)
|
||||
|
||||
# Check if lateral acceleration limits comply with max delta limits
|
||||
safety_violation = lat_active and new_apply_angle != rate_limit(new_apply_angle, apply_angle_last, -max_angle_delta, max_angle_delta)
|
||||
|
||||
# Shouldn't give any angle, since there's no good choice. We are vatiolating either way.
|
||||
if safety_violation:
|
||||
return None
|
||||
|
||||
# angle is current angle when inactive
|
||||
if not lat_active:
|
||||
new_apply_angle = steering_angle
|
||||
|
||||
@@ -41,16 +41,6 @@ non_tested_cars = [
|
||||
TOYOTA.TOYOTA_WILDLANDER,
|
||||
]
|
||||
|
||||
# HKG Angle Steering (LFA2) (Still WIP, hence why ignored)
|
||||
non_tested_cars += [
|
||||
HYUNDAI.GENESIS_GV80_2025,
|
||||
HYUNDAI.HYUNDAI_IONIQ_5_PE,
|
||||
HYUNDAI.KIA_EV6_2025,
|
||||
HYUNDAI.KIA_EV9,
|
||||
HYUNDAI.GENESIS_GV70_ELECTRIFIED_2ND_GEN,
|
||||
HYUNDAI.HYUNDAI_SANTA_FE_HEV_5TH_GEN
|
||||
]
|
||||
|
||||
|
||||
class CarTestRoute(NamedTuple):
|
||||
route: str
|
||||
@@ -146,7 +136,6 @@ routes = [
|
||||
CarTestRoute("ca4de5b12321bd98/2022-10-18--21-15-59", HYUNDAI.GENESIS_GV70_1ST_GEN),
|
||||
CarTestRoute("afe09b9f5d3f3548/00000011--15fefe1c50", HYUNDAI.GENESIS_GV70_ELECTRIFIED_1ST_GEN),
|
||||
CarTestRoute("afe09b9f5d3f3548/0000001b--a1129a4a15", HYUNDAI.GENESIS_GV70_ELECTRIFIED_1ST_GEN), # openpilot longitudinal enabled
|
||||
#CarTestRoute("afe09b9f5d3f3548/0000000b--0ac07f9835", HYUNDAI.GENESIS_GV70_ELECTRIFIED_2ND_GEN), # openpilot longitudinal enabled
|
||||
CarTestRoute("6b301bf83f10aa90/2020-11-22--16-45-07", HYUNDAI.GENESIS_G80),
|
||||
CarTestRoute("66eaa6c3b6b2afc6/00000009--3a5199aabe", HYUNDAI.GENESIS_G80_2ND_GEN_FL), # LKA steering
|
||||
CarTestRoute("0bbe367c98fa1538/2023-09-16--00-16-49", HYUNDAI.HYUNDAI_CUSTIN_1ST_GEN),
|
||||
@@ -155,7 +144,6 @@ routes = [
|
||||
CarTestRoute("bf43d9df2b660eb0/2021-09-23--14-16-37", HYUNDAI.HYUNDAI_SANTA_FE_2022),
|
||||
CarTestRoute("37398f32561a23ad/2021-11-18--00-11-35", HYUNDAI.HYUNDAI_SANTA_FE_HEV_2022),
|
||||
CarTestRoute("656ac0d830792fcc/2021-12-28--14-45-56", HYUNDAI.HYUNDAI_SANTA_FE_PHEV_2022, segment=1),
|
||||
#CarTestRoute("51489459ad31cccc/00000001--642891d0af", HYUNDAI.HYUNDAI_SANTA_FE_HEV_5TH_GEN), # 2025 HDA2 Angle Control
|
||||
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("e0e98335f3ebc58f/2021-03-07--16-38-29", HYUNDAI.KIA_CEED),
|
||||
@@ -176,7 +164,6 @@ routes = [
|
||||
CarTestRoute("628935d7d3e5f4f7/2022-11-30--01-12-46", HYUNDAI.KIA_SORENTO_HEV_4TH_GEN), # plug-in hybrid
|
||||
CarTestRoute("9c917ba0d42ffe78/2020-04-17--12-43-19", HYUNDAI.HYUNDAI_PALISADE),
|
||||
CarTestRoute("05a8f0197fdac372/2022-10-19--14-14-09", HYUNDAI.HYUNDAI_IONIQ_5), # LKA steering
|
||||
#CarTestRoute("e1107f9d04dfb1e2/00000455--9b2328ec73", HYUNDAI.HYUNDAI_IONIQ_5_PE), # LKA steering HDA2 LFA2
|
||||
CarTestRoute("eb4eae1476647463/2023-08-26--18-07-04", HYUNDAI.HYUNDAI_IONIQ_6, segment=6), # LKA steering
|
||||
CarTestRoute("3f29334d6134fcd4/2022-03-30--22-00-50", HYUNDAI.HYUNDAI_IONIQ_PHEV_2019),
|
||||
CarTestRoute("fa8db5869167f821/2021-06-10--22-50-10", HYUNDAI.HYUNDAI_IONIQ_PHEV),
|
||||
@@ -200,9 +187,6 @@ routes = [
|
||||
CarTestRoute("d624b3d19adce635/2020-08-01--14-59-12", HYUNDAI.HYUNDAI_VELOSTER),
|
||||
CarTestRoute("d545129f3ca90f28/2022-10-19--09-22-54", HYUNDAI.KIA_EV6), # LKA steering
|
||||
CarTestRoute("68d6a96e703c00c9/2022-09-10--16-09-39", HYUNDAI.KIA_EV6), # LFA steering
|
||||
#CarTestRoute("84711a8268bf3b9a|2024-11-27--00-04-53", HYUNDAI.KIA_EV6_2025), # 2025 HDA1 Angle Control
|
||||
#CarTestRoute("fab807792f63fea6/00000283--e3d8c65d78", HYUNDAI.KIA_EV6_2025), # 2025 Angle Control
|
||||
#CarTestRoute("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", HYUNDAI.KIA_EV9), # 2025 HDA1 Angle Control
|
||||
CarTestRoute("9b25e8c1484a1b67/2023-04-13--10-41-45", HYUNDAI.KIA_EV6),
|
||||
CarTestRoute("007d5e4ad9f86d13/2021-09-30--15-09-23", HYUNDAI.KIA_K5_2021),
|
||||
CarTestRoute("c58dfc9fc16590e0/2023-01-14--13-51-48", HYUNDAI.KIA_K5_HEV_2020),
|
||||
@@ -224,7 +208,6 @@ routes = [
|
||||
CarTestRoute("7120aa90bbc3add7/2021-08-02--07-12-31", HYUNDAI.HYUNDAI_SONATA_HYBRID),
|
||||
CarTestRoute("715ac05b594e9c59/2021-10-27--23-24-56", HYUNDAI.GENESIS_G70_2020),
|
||||
CarTestRoute("6b0d44d22df18134/2023-05-06--10-36-55", HYUNDAI.GENESIS_GV80),
|
||||
#CarTestRoute("bf5d5a62cc79a28e/00000002--4d370e2bc2", HYUNDAI.GENESIS_GV80_2025),
|
||||
|
||||
CarTestRoute("00c829b1b7613dea/2021-06-24--09-10-10", TOYOTA.TOYOTA_ALPHARD_TSS2),
|
||||
CarTestRoute("912119ebd02c7a42/2022-03-19--07-24-50", TOYOTA.TOYOTA_ALPHARD_TSS2), # hybrid
|
||||
|
||||
@@ -94,11 +94,3 @@ legend = ["LAT_ACCEL_FACTOR", "MAX_LAT_ACCEL_MEASURED", "FRICTION"]
|
||||
# Manually checked
|
||||
"HONDA_CIVIC_2022" = [2.5, 1.2, 0.15]
|
||||
"HONDA_HRV_3G" = [2.5, 1.2, 0.2]
|
||||
|
||||
# Hyundai/Kia/Genesis angle control
|
||||
"HYUNDAI_IONIQ_5_PE" = [3.172929, 3.5, 0.096019]
|
||||
"GENESIS_GV80_2025" = [2.5, 2.5, 0.1]
|
||||
"HYUNDAI_SANTA_FE_HEV_5TH_GEN" = [2.5, 2.5, 0.1]
|
||||
"KIA_EV6_2025" = [3.2, 2.093457, 0.005]
|
||||
"KIA_EV9" = [3.2, 2.093457, 0.005]
|
||||
"GENESIS_GV70_ELECTRIFIED_2ND_GEN" = [1.9, 1.9, 0.09]
|
||||
@@ -1,187 +0,0 @@
|
||||
CM_ "Generated from _stellantis_common.dbc"
|
||||
|
||||
BO_ 35 STEERING: 8 XXX
|
||||
SG_ STEERING_ANGLE : 5|14@0+ (0.5,-2048) [-2048|2047] "deg" XXX
|
||||
SG_ STEERING_RATE : 21|14@0+ (0.5,-2048) [-2048|2047] "deg/s" XXX
|
||||
SG_ STEERING_ANGLE_HP : 48|4@1+ (0.1,-0.4) [-0.4|0.4] "deg" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 37 ECM_1: 8 XXX
|
||||
SG_ ENGINE_RPM : 7|16@0+ (1,0) [0|65535] "" XXX
|
||||
SG_ ENGINE_TORQUE : 20|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX
|
||||
SG_ EXPECTED_ENGINE_TORQUE : 36|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 181 ECM_TRQ: 8 XXX
|
||||
SG_ ENGINE_TORQ_MAX : 4|13@0+ (.25,-500) [-500|1547.5] "NM" XXX
|
||||
SG_ ENGINE_TORQ_MIN : 20|13@0+ (.25,-500) [-500|1547.5] "NM" XXX
|
||||
|
||||
BO_ 121 ESP_8: 8 XXX
|
||||
SG_ BRK_PRESSURE : 3|12@0+ (1,0) [0|1] "" XXX
|
||||
SG_ Vehicle_Stopped : 7|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ BRAKE_PEDAL : 19|12@0+ (1,0) [0|1] "" XXX
|
||||
SG_ Vehicle_Speed : 39|16@0+ (0.0078125,0) [0|511.984375] "km/h" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 123 ECM_2: 7 XXX
|
||||
SG_ ACC_TORQUE_REQ_ENABLE : 5|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ESC_TORQUE_REQ_ENABLE : 6|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ TCM_TORQUE_REQ_ENABLE : 7|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ Accelerator_Position : 16|8@1+ (0.4,0) [0|100] "%" XXX
|
||||
SG_ CRUISE_OVERRIDE : 31|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ COUNTER : 47|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 55|8@0+ (1,0) [0|0] "" XXX
|
||||
|
||||
BO_ 131 ESP_1: 8 XXX
|
||||
SG_ Brake_State : 0|2@1+ (1,0) [0|0] "" XXX
|
||||
SG_ Brake_Pedal_State : 2|2@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_Engaged : 15|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ACC_Enabled : 23|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ Vehicle_Speed : 33|10@0+ (0.5,0) [0|511] "km/h" XXX
|
||||
SG_ ACC_OFF_REQ : 39|2@0+ (1,0) [0|0] "" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ BRAKE_PRESSED_ACC : 6|1@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 113 ESP_2: 8 ESC
|
||||
SG_ ESC_TORQUE_REQ : 4|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX
|
||||
SG_ ACC_TORQUE_REQ_ENABLE : 5|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ESC_TORQUE_REQ_MAX : 6|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ESC_TORQUE_REQ_MIN : 7|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_TORQUE_REQ : 20|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX
|
||||
SG_ TCS_ACTIVE : 21|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_TORQUE_REQ_MAX : 22|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_BRK_PREP : 40|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ DISABLE_FUEL_SHUTOFF : 47|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ DAS_REQ_ACTIVE : 48|3@1+ (1,0) [0|0] "" XXX
|
||||
SG_ COLLISION_BRK_PREP : 51|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|0] "" XXX
|
||||
|
||||
BO_ 139 ESP_6: 8 XXX
|
||||
SG_ WHEEL_SPEED_FL : 5|14@0+ (0.5,0) [0|8191] "rpm" XXX
|
||||
SG_ WHEEL_SPEED_FR : 21|14@0+ (0.5,0) [0|8191] "rpm" XXX
|
||||
SG_ WHEEL_SPEED_RL : 37|14@0+ (0.5,0) [0|8191] "rpm" XXX
|
||||
SG_ WHEEL_SPEED_RR : 53|14@0+ (0.5,0) [0|8191] "rpm" XXX
|
||||
|
||||
BO_ 147 Transmission_Status: 8 XXX
|
||||
SG_ Gear_State : 2|3@1+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 464 ORC_1: 8 XXX
|
||||
SG_ SEATBELT_DRIVER_UNLATCHED : 13|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 153 DAS_3: 8 XXX
|
||||
SG_ ENGINE_TORQUE_REQUEST : 4|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX
|
||||
SG_ ENGINE_TORQUE_REQUEST_MAX : 7|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ACC_STANDSTILL : 5|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ACC_GO : 6|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_DECEL : 19|12@0+ (0.004885,-16) [-16|4] "m/s2" XXX
|
||||
SG_ ACC_AVAILABLE : 20|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ACC_ACTIVE : 21|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DISABLE_FUEL_SHUTOFF : 23|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ GR_MAX_REQ : 32|4@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_DECEL_REQ : 36|3@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_FAULTED : 46|2@1+ (1,0) [0|0] "" XXX
|
||||
SG_ COLLISION_BRK_PREP : 48|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_BRK_PREP : 49|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 232 DAS_4: 8 XXX
|
||||
SG_ ACC_SET_SPEED_KPH : 15|8@0+ (1,0) [0|3] "km/h" XXX
|
||||
SG_ ACC_SET_SPEED_MPH : 23|8@0+ (1,0) [0|3] "mph" XXX
|
||||
SG_ ACC_DISTANCE_CONFIG_1 : 1|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ ACC_DISTANCE_CONFIG_2 : 41|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ SPEED_DIGITAL : 63|8@0+ (1,0) [0|255] "mph" XXX
|
||||
SG_ ACC_STATE : 38|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ FCW_OFF : 25|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ FCW_ERROR : 27|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ FCW_BRAKE_ENABLED : 29|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FCW_BRAKE_DISABLED : 47|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ACC_FAULTED : 50|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 49 EPS_2: 8 XXX
|
||||
SG_ LKAS_STATE : 23|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COLUMN_TORQUE : 2|11@0+ (1,-1024) [-1024|1023] "" XXX
|
||||
SG_ TORQUE_OVERLAY_STATUS : 6|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ EPS_TORQUE_MOTOR_RAW : 19|12@0+ (1,-2048) [-2048|2047] "" XXX
|
||||
SG_ EPS_TORQUE_MOTOR : 34|11@0+ (1,-1024) [-1024|1023] "" XXX
|
||||
SG_ LKAS_TEMPORARY_FAULT : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ AUTO_PARK_HAS_CONTROL_2 : 51|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 157 ECM_5: 8 XXX
|
||||
SG_ Accelerator_Position : 0|8@1+ (0.4,0) [0|100] "%" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 177 CRUISE_BUTTONS: 3 XXX
|
||||
SG_ ACC_Cancel : 0|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_Distance_Dec : 1|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_Accel : 2|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_Decel : 3|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_Resume : 4|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ Cruise_OnOff : 6|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_OnOff : 7|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_Distance_Inc : 8|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ COUNTER : 15|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 23|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 163 DAS_5: 8 XXX
|
||||
SG_ FCW_STATE : 2|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ FCW_DISTANCE : 3|2@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACCFCW_MESSAGE : 12|4@1+ (1,0) [0|0] "" XXX
|
||||
SG_ SET_SPEED_KPH : 24|8@1+ (1,0) [0|250] "km/h" XXX
|
||||
SG_ WHEEL_TORQUE_REQUEST : 38|15@0+ (1,-7767) [-7767|24999] "Nm" XXX
|
||||
SG_ WHEEL_TORQUE_REQUEST_ACTIVE : 39|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 213 EPB_1: 3 XXX
|
||||
SG_ PARKING_BRAKE_STATUS : 11|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ COUNTER : 15|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 23|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 250 DAS_6: 8 XXX
|
||||
SG_ LKAS_ICON_COLOR : 1|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ LKAS_LANE_LINES : 19|4@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LKAS_ALERTS : 27|4@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CAR_MODEL : 15|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ AUTO_HIGH_BEAM_ON : 47|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ LKAS_DISABLED : 56|1@1+ (1,0) [0|0] "" XXX
|
||||
|
||||
BO_ 720 BSM_1: 6 XXX
|
||||
SG_ RIGHT_STATUS : 5|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LEFT_STATUS : 2|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 792 STEERING_LEVERS: 8 XXX
|
||||
SG_ TURN_SIGNALS : 0|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ HIGH_BEAM_PRESSED : 2|1@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 657 BCM_1: 8 XXX
|
||||
SG_ DOOR_OPEN_FL : 17|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DOOR_OPEN_FR : 18|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DOOR_OPEN_RL : 19|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DOOR_OPEN_RR : 20|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DOOR_OPEN_TRUNK : 22|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ PARKING_BRAKE_SWITCH : 23|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ TURN_LIGHT_LEFT : 31|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ TURN_LIGHT_RIGHT : 30|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ HIGH_BEAM_DISPLAY : 58|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
VAL_ 131 ACC_OFF_REQ 2 "PERMANENT" 1 "TEMPORARY" 0 "NONE"
|
||||
VAL_ 147 Gear_State 4 "D" 2 "N" 1 "R" 0 "P" ;
|
||||
VAL_ 213 PARKING_BRAKE_STATUS 3 "RELEASING" 2 "APPLYING" 1 "APPLIED" 0 "OFF" ;
|
||||
|
||||
CM_ SG_ 258 STEERING_ANGLE_HP "Steering angle high precision";
|
||||
CM_ SG_ 264 ENGINE_TORQUE "Effective engine torque";
|
||||
CM_ SG_ 264 EXPECTED_ENGINE_TORQUE "Expected Engine Torque based on target engine speed";
|
||||
CM_ SG_ 678 LKAS_ICON_COLOR "3 is yellow, 2 is green, 1 is white, 0 is null";
|
||||
CM_ SG_ 678 LKAS_LANE_LINES "0x01 transparent lines, 0x02 left white, 0x03 right white, 0x04 left yellow with car on top, 0x05 left yellow with car on top, 0x06 both white, 0x07 left yellow, 0x08 left yellow right white, 0x09 right yellow, 0x0a right yellow left white, 0x0b left yellow with car on top right white, 0x0c right yellow with car on top left white, (0x00, 0x0d, 0x0e, 0x0f) null";
|
||||
CM_ SG_ 678 LKAS_ALERTS "(0x01, 0x02) lane sense off, (0x03, 0x04, 0x06) place hands on steering wheel, 0x07 lane departure detected + place hands on steering wheel, (0x08, 0x09) lane sense unavailable + clean front windshield, 0x0b lane sense and auto high beam unavailable + clean front windshield, 0x0c lane sense unavailable + service required, (0x00, 0x05, 0x0a, 0x0d, 0x0e, 0x0f) null";
|
||||
@@ -1,187 +0,0 @@
|
||||
CM_ "Generated from _stellantis_common.dbc"
|
||||
|
||||
BO_ 258 STEERING: 8 XXX
|
||||
SG_ STEERING_ANGLE : 5|14@0+ (0.5,-2048) [-2048|2047] "deg" XXX
|
||||
SG_ STEERING_RATE : 21|14@0+ (0.5,-2048) [-2048|2047] "deg/s" XXX
|
||||
SG_ STEERING_ANGLE_HP : 48|4@1+ (0.1,-0.4) [-0.4|0.4] "deg" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 264 ECM_1: 8 XXX
|
||||
SG_ ENGINE_RPM : 7|16@0+ (1,0) [0|65535] "" XXX
|
||||
SG_ ENGINE_TORQUE : 20|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX
|
||||
SG_ EXPECTED_ENGINE_TORQUE : 36|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 280 ECM_TRQ: 8 XXX
|
||||
SG_ ENGINE_TORQ_MAX : 4|13@0+ (.25,-500) [-500|1547.5] "NM" XXX
|
||||
SG_ ENGINE_TORQ_MIN : 20|13@0+ (.25,-500) [-500|1547.5] "NM" XXX
|
||||
|
||||
BO_ 284 ESP_8: 8 XXX
|
||||
SG_ BRK_PRESSURE : 3|12@0+ (1,0) [0|1] "" XXX
|
||||
SG_ Vehicle_Stopped : 7|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ BRAKE_PEDAL : 19|12@0+ (1,0) [0|1] "" XXX
|
||||
SG_ Vehicle_Speed : 39|16@0+ (0.0078125,0) [0|511.984375] "km/h" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 288 ECM_2: 7 XXX
|
||||
SG_ ACC_TORQUE_REQ_ENABLE : 5|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ESC_TORQUE_REQ_ENABLE : 6|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ TCM_TORQUE_REQ_ENABLE : 7|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ Accelerator_Position : 16|8@1+ (0.4,0) [0|100] "%" XXX
|
||||
SG_ CRUISE_OVERRIDE : 31|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ COUNTER : 47|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 55|8@0+ (1,0) [0|0] "" XXX
|
||||
|
||||
BO_ 320 ESP_1: 8 XXX
|
||||
SG_ Brake_State : 0|2@1+ (1,0) [0|0] "" XXX
|
||||
SG_ Brake_Pedal_State : 2|2@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_Engaged : 15|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ACC_Enabled : 23|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ Vehicle_Speed : 33|10@0+ (0.5,0) [0|511] "km/h" XXX
|
||||
SG_ ACC_OFF_REQ : 39|2@0+ (1,0) [0|0] "" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ BRAKE_PRESSED_ACC : 6|1@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 268 ESP_2: 8 ESC
|
||||
SG_ ESC_TORQUE_REQ : 4|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX
|
||||
SG_ ACC_TORQUE_REQ_ENABLE : 5|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ESC_TORQUE_REQ_MAX : 6|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ESC_TORQUE_REQ_MIN : 7|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_TORQUE_REQ : 20|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX
|
||||
SG_ TCS_ACTIVE : 21|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_TORQUE_REQ_MAX : 22|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_BRK_PREP : 40|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ DISABLE_FUEL_SHUTOFF : 47|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ DAS_REQ_ACTIVE : 48|3@1+ (1,0) [0|0] "" XXX
|
||||
SG_ COLLISION_BRK_PREP : 51|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|0] "" XXX
|
||||
|
||||
BO_ 344 ESP_6: 8 XXX
|
||||
SG_ WHEEL_SPEED_FL : 5|14@0+ (0.5,0) [0|8191] "rpm" XXX
|
||||
SG_ WHEEL_SPEED_FR : 21|14@0+ (0.5,0) [0|8191] "rpm" XXX
|
||||
SG_ WHEEL_SPEED_RL : 37|14@0+ (0.5,0) [0|8191] "rpm" XXX
|
||||
SG_ WHEEL_SPEED_RR : 53|14@0+ (0.5,0) [0|8191] "rpm" XXX
|
||||
|
||||
BO_ 368 Transmission_Status: 8 XXX
|
||||
SG_ Gear_State : 2|3@1+ (1,0) [0|15] "" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 464 ORC_1: 8 XXX
|
||||
SG_ SEATBELT_DRIVER_UNLATCHED : 13|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 500 DAS_3: 8 XXX
|
||||
SG_ ENGINE_TORQUE_REQUEST : 4|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX
|
||||
SG_ ENGINE_TORQUE_REQUEST_MAX : 7|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ACC_STANDSTILL : 5|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ACC_GO : 6|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_DECEL : 19|12@0+ (0.004885,-16) [-16|4] "m/s2" XXX
|
||||
SG_ ACC_AVAILABLE : 20|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ACC_ACTIVE : 21|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DISABLE_FUEL_SHUTOFF : 23|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ GR_MAX_REQ : 32|4@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_DECEL_REQ : 36|3@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_FAULTED : 46|2@1+ (1,0) [0|0] "" XXX
|
||||
SG_ COLLISION_BRK_PREP : 48|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_BRK_PREP : 49|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 501 DAS_4: 8 XXX
|
||||
SG_ ACC_SET_SPEED_KPH : 15|8@0+ (1,0) [0|3] "km/h" XXX
|
||||
SG_ ACC_SET_SPEED_MPH : 23|8@0+ (1,0) [0|3] "mph" XXX
|
||||
SG_ ACC_DISTANCE_CONFIG_1 : 1|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ ACC_DISTANCE_CONFIG_2 : 41|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ SPEED_DIGITAL : 63|8@0+ (1,0) [0|255] "mph" XXX
|
||||
SG_ ACC_STATE : 38|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ FCW_OFF : 25|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ FCW_ERROR : 27|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ FCW_BRAKE_ENABLED : 29|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FCW_BRAKE_DISABLED : 47|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ACC_FAULTED : 50|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 544 EPS_2: 8 XXX
|
||||
SG_ LKAS_STATE : 23|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ COLUMN_TORQUE : 2|11@0+ (1,-1024) [-1024|1023] "" XXX
|
||||
SG_ TORQUE_OVERLAY_STATUS : 6|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ EPS_TORQUE_MOTOR_RAW : 19|12@0+ (1,-2048) [-2048|2047] "" XXX
|
||||
SG_ EPS_TORQUE_MOTOR : 34|11@0+ (1,-1024) [-1024|1023] "" XXX
|
||||
SG_ LKAS_TEMPORARY_FAULT : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ AUTO_PARK_HAS_CONTROL_2 : 51|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 559 ECM_5: 8 XXX
|
||||
SG_ Accelerator_Position : 0|8@1+ (0.4,0) [0|100] "%" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 570 CRUISE_BUTTONS: 3 XXX
|
||||
SG_ ACC_Cancel : 0|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_Distance_Dec : 1|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_Accel : 2|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_Decel : 3|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_Resume : 4|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ Cruise_OnOff : 6|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_OnOff : 7|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACC_Distance_Inc : 8|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ COUNTER : 15|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 23|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 625 DAS_5: 8 XXX
|
||||
SG_ FCW_STATE : 2|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ FCW_DISTANCE : 3|2@1+ (1,0) [0|0] "" XXX
|
||||
SG_ ACCFCW_MESSAGE : 12|4@1+ (1,0) [0|0] "" XXX
|
||||
SG_ SET_SPEED_KPH : 24|8@1+ (1,0) [0|250] "km/h" XXX
|
||||
SG_ WHEEL_TORQUE_REQUEST : 38|15@0+ (1,-7767) [-7767|24999] "Nm" XXX
|
||||
SG_ WHEEL_TORQUE_REQUEST_ACTIVE : 39|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 669 EPB_1: 3 XXX
|
||||
SG_ PARKING_BRAKE_STATUS : 11|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ COUNTER : 15|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ CHECKSUM : 23|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 629 DAS_6: 8 XXX
|
||||
SG_ LKAS_ICON_COLOR : 1|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ LKAS_LANE_LINES : 19|4@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LKAS_ALERTS : 27|4@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CAR_MODEL : 15|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ AUTO_HIGH_BEAM_ON : 47|1@1+ (1,0) [0|0] "" XXX
|
||||
SG_ LKAS_DISABLED : 56|1@1+ (1,0) [0|0] "" XXX
|
||||
|
||||
BO_ 720 BSM_1: 6 XXX
|
||||
SG_ RIGHT_STATUS : 5|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LEFT_STATUS : 2|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 792 STEERING_LEVERS: 8 XXX
|
||||
SG_ TURN_SIGNALS : 0|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ HIGH_BEAM_PRESSED : 2|1@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 820 BCM_1: 8 XXX
|
||||
SG_ DOOR_OPEN_FL : 17|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DOOR_OPEN_FR : 18|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DOOR_OPEN_RL : 19|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DOOR_OPEN_RR : 20|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DOOR_OPEN_TRUNK : 22|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ PARKING_BRAKE_SWITCH : 23|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ TURN_LIGHT_LEFT : 31|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ TURN_LIGHT_RIGHT : 30|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ HIGH_BEAM_DISPLAY : 58|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
VAL_ 320 ACC_OFF_REQ 2 "PERMANENT" 1 "TEMPORARY" 0 "NONE"
|
||||
VAL_ 368 Gear_State 4 "D" 2 "N" 1 "R" 0 "P" ;
|
||||
VAL_ 669 PARKING_BRAKE_STATUS 3 "RELEASING" 2 "APPLYING" 1 "APPLIED" 0 "OFF" ;
|
||||
|
||||
CM_ SG_ 258 STEERING_ANGLE_HP "Steering angle high precision";
|
||||
CM_ SG_ 264 ENGINE_TORQUE "Effective engine torque";
|
||||
CM_ SG_ 264 EXPECTED_ENGINE_TORQUE "Expected Engine Torque based on target engine speed";
|
||||
CM_ SG_ 678 LKAS_ICON_COLOR "3 is yellow, 2 is green, 1 is white, 0 is null";
|
||||
CM_ SG_ 678 LKAS_LANE_LINES "0x01 transparent lines, 0x02 left white, 0x03 right white, 0x04 left yellow with car on top, 0x05 left yellow with car on top, 0x06 both white, 0x07 left yellow, 0x08 left yellow right white, 0x09 right yellow, 0x0a right yellow left white, 0x0b left yellow with car on top right white, 0x0c right yellow with car on top left white, (0x00, 0x0d, 0x0e, 0x0f) null";
|
||||
CM_ SG_ 678 LKAS_ALERTS "(0x01, 0x02) lane sense off, (0x03, 0x04, 0x06) place hands on steering wheel, 0x07 lane departure detected + place hands on steering wheel, (0x08, 0x09) lane sense unavailable + clean front windshield, 0x0b lane sense and auto high beam unavailable + clean front windshield, 0x0c lane sense unavailable + service required, (0x00, 0x05, 0x0a, 0x0d, 0x0e, 0x0f) null";
|
||||
-6501
File diff suppressed because it is too large
Load Diff
@@ -1,43 +0,0 @@
|
||||
BO_ 74 IMU_01_10ms: 32 CGW_CCU
|
||||
SG_ IMU_Crc1Val : 0|16@1+ (1,0) [0|0] "" ECS,ESC,FCU_C,GW_RGW,ICSC,MDPS,RCU,RWS,SFA,VPC_C
|
||||
SG_ IMU_AlvCnt1Val : 16|8@1+ (1,0) [0|0] "" ECS,ESC,FCU_C,GW_RGW,ICSC,MDPS,RCU,RWS,SFA,VPC_C
|
||||
SG_ IMU_YawSigSta : 24|4@1+ (1,0) [0|15] "" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ IMU_LatAccelSigSta : 28|4@1+ (1,0) [0|15] "" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ IMU_LongAccelSigSta : 32|4@1+ (1,0) [0|15] "" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ IMU_VerAccelSigSta : 36|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ IMU_McuVoltSta : 40|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ IMU_AcuRstSta : 44|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ IMU_SnsrTyp : 48|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ IMU_RollSigSta : 56|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ IMU_YawRtVal : 64|16@1+ (0.005,-163.84) [-163.84|163.835] "Deg/s" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ IMU_LatAccelVal : 80|16@1+ (0.000127465,-4.17677312) [-4.17677312|4.176645655] "g" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ IMU_LongAccelVal : 96|16@1+ (0.000127465,-4.17677312) [-4.17677312|4.176645655] "g" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ IMU_SnsrTempVal : 112|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ IMU_SeralNumVal : 128|64@1+ (1,0) [0|1.84467440737096e+19] "" XXX
|
||||
SG_ IMU_RollRtVal : 192|16@1+ (0.005,-163.84) [0|0] "º/s" XXX
|
||||
SG_ IMU_VerAccelVal : 208|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 229 ESC_02_10ms: 32 CGW
|
||||
SG_ ESC_YawSigSta : 24|4@1+ (1,0) [0|15] "" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ ESC_LatAccelSigSta : 28|4@1+ (1,0) [0|15] "" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ ESC_LongAccelSigSta : 32|4@1+ (1,0) [0|15] "" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ ESC_YawRtVal : 64|16@1+ (0.005,-163.84) [-163.84|163.835] "Deg/s" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ ESC_LatAccelVal : 80|16@1+ (0.000127465,-4.17677312) [-4.17677312|4.176645655] "g" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ ESC_LongAccelVal : 96|16@1+ (0.000127465,-4.17677312) [-4.17677312|4.176645655] "g" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
|
||||
CM_ BO_ 74 "[P] Periodic";
|
||||
CM_ SG_ 74 IMU_Crc1Val "The data area for CRC calculation is based on the data length (DLC) of the message DB.The CRC shall be calculated over the entire data block (excluding the CRC bytes) including the user data, alive counter and Data ID- CRC Polynomial (0x1021) , Ini";
|
||||
CM_ SG_ 74 IMU_AlvCnt1Val "For the first transmission request for a data element the counter shall be initialized with 0 and shall be incremented by 1 for every subsequent send request. When the counter reaches the maximum value(0xFF), then it shall restart with 0 for the next s";
|
||||
CM_ SG_ 74 IMU_YawSigSta "This signal indicates failure status of yaw rate signal and yaw rate sensing element.0000B : No failure xxx1B : IMU_Yawrate_failurexx1xB : Initialization is runningx1xxB : Reserved1xxxB : ReservedThis signal represents the physica";
|
||||
CM_ SG_ 74 IMU_LatAccelSigSta "This signal indicates failure status of lateral acceleration signal and sensing element.0000B : No failurexxx1B : IMU_Lateral acceleration failurexx1xB : Initialization is runningx1xxB : Reserved1xxxB : ReservedThis signal represe";
|
||||
CM_ SG_ 74 IMU_AcuRstSta "This signal indicates the status of IMU.0000B : Normal mode xxx1B : IMU Reset modexx1xB : Reservedx1xxB : Reserved1xxxB : ReservedIf ACU reset is required, ACU will send IMU RESET bit(XXX1B) up to 30 times and perform a reset. If ";
|
||||
CM_ SG_ 74 IMU_YawRtVal "This signal indicates Information regarding yaw rate.physical range : -163.84..163.83 ˚/s = 0000H..FFFEhConversion : (PH) = ((HEX)-8000H)*0.005[˚/s/digit] = (HEX)*0.005[˚/s/digit] - 163.84[˚/s] ";
|
||||
CM_ SG_ 74 IMU_LatAccelVal "This signal indicates Information regarding lateral acceleration.physical range : -4.1768g..4.1765g = 0000H..FFFEhConversion : (PH) = ((HEX)-8000H)*0.000127465[g/digit] = (HEX)*0.000127465[g/digit] - 4.17677312[g]";
|
||||
|
||||
CM_ BO_ 229 "[P] Periodic";
|
||||
CM_ SG_ 229 ESC_YawSigSta "ESC_YawSigSta";
|
||||
CM_ SG_ 229 ESC_LatAccelSigSta "ESC_LatAccelSigSta";
|
||||
CM_ SG_ 229 ESC_LongAccelSigSta "ESC_LongAccelSigSta";
|
||||
CM_ SG_ 229 ESC_YawRtVal "ESC_YawRtVal";
|
||||
CM_ SG_ 229 ESC_LatAccelVal "ESC_LatAccelVal";
|
||||
CM_ SG_ 229 ESC_LongAccelVal "ESC_LongAccelVal";
|
||||
@@ -1,125 +0,0 @@
|
||||
BO_ 203 ADAS_CMD_35_10ms: 24 CGW_CCU
|
||||
SG_ ADAS_CMD_Crc35Val : 0|16@1+ (1,0) [0|0] "0" FCU_C,GW_RGW,MDPS,SFA
|
||||
SG_ ADAS_CMD_AlvCnt35Val : 16|8@1+ (1,0) [0|0] "0" FCU_C,GW_RGW,MDPS,SFA
|
||||
SG_ ADAS_ActvACISta : 24|4@1+ (1,0) [0|0] "" GW_RGW,MDPS,SFA
|
||||
SG_ ADAS_ActvACILvl2Sta : 28|4@1+ (1,0) [0|0] "" ESC,FCU_C,GW_RGW,MDPS,SFA,VPC_C
|
||||
SG_ ADAS_StrAnglReqVal : 32|14@1- (0.1,0) [0|0] "Deg" GW_RGW,MDPS,SFA
|
||||
SG_ ADAS_ACIAnglTqRedcGainVal : 48|8@1+ (0.004,0) [0|0] "" GW_RGW,MDPS,SFA
|
||||
SG_ FCA_ESA_ActvSta : 56|2@1+ (1,0) [0|0] "" GW_RGW,MDPS,SFA
|
||||
SG_ FCA_ESA_TqBstGainVal : 64|8@1+ (0.004,0) [0|0] "" GW_RGW,MDPS,SFA
|
||||
|
||||
BO_ 272 ESC_06_200ms: 32 XXX
|
||||
SG_ ESC_Crc6Val : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ ESC_AlvCnt6Val : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ IEB_BrkMod_Sta : 24|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ IEB_BrkMod_Type : 27|2@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LFA2_USING_LEAD_MAYBE : 30|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ LKA_SysIndReq : 38|3@1+ (1,0) [0|7] "" CLU,RR_C_RDR,CGW
|
||||
SG_ ADAS_StrTqReqVal : 41|11@1+ (0.0078125,-8) [-8|7.9921875] "Nm" CGW
|
||||
SG_ ADAS_ActToiSta : 52|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ ADAS_ToiFltSta : 54|2@1+ (1,0) [0|3] "" CGW
|
||||
SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_ASSIST : 62|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ STEER_MODE : 65|3@1+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_2 : 70|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ NEW_SIGNAL_3_LDW_UNK : 72|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ LKAS_ANGLE_ACTIVE : 77|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ HAS_LANE_SAFETY : 80|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LKAS_ANGLE_CMD : 82|14@1- (0.1,0) [0|511] "" XXX
|
||||
SG_ LKAS_ANGLE_MAX_TORQUE : 96|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LDW_SHAKE_STEERING : 105|2@0+ (1,0) [0|255] "" XXX
|
||||
SG_ FCA_ESA_CtrlSta : 107|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CAR_IN_DRIVE_MAYBE : 232|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 298 ADAS_CMD_30_10ms: 16 FR_CMR
|
||||
SG_ ADAS_CMD_Crc30Val : 0|16@1+ (1,0) [0|65535] "" CLU,CGW
|
||||
SG_ ADAS_CMD_AlvCnt30Val : 16|8@1+ (1,0) [0|255] "" CLU,CGW
|
||||
SG_ LKA_OptUsmSta : 24|3@1+ (1,0) [0|7] "" CLU,CGW
|
||||
SG_ LKA_RcgSta : 27|3@1+ (1,0) [0|7] "" CLU,CGW
|
||||
SG_ LKA_LHLnWrnSta : 30|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ LKA_RHLnWrnSta : 32|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ LKA_HndsoffSnd : 34|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ LKA_StrSnd : 36|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ LKA_SysIndReq : 38|3@1+ (1,0) [0|7] "" CLU,RR_C_RDR,CGW
|
||||
SG_ ADAS_StrTqReqVal : 41|11@1+ (0.0078125,-8) [-8|7.9921875] "Nm" CGW
|
||||
SG_ ADAS_ActToiSta : 52|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ ADAS_ToiFltSta : 54|2@1+ (1,0) [0|3] "" CGW
|
||||
SG_ LFA_BUTTON : 56|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ BCA_Rear_WrnSta : 57|3@1+ (1,0) [0|255] "" ADRV
|
||||
SG_ LKA_SysWrn : 60|4@1+ (1,0) [0|15] "" CLU,CGW
|
||||
SG_ FCA_LO_WrnSta : 64|1@1+ (1,0) [0|1] "" ADRV
|
||||
SG_ STEER_MODE : 65|3@1+ (1,0) [0|1] "" ADRV
|
||||
SG_ FCA_LS_WrnSta : 68|2@1+ (1,0) [0|3] "" ADRV
|
||||
SG_ NEW_SIGNAL_2 : 70|1@0+ (1,0) [0|3] "" ADRV
|
||||
SG_ SCC_TakeoverReq_CLU_AMP_PE_02_Warn_Sound : 72|2@1+ (1,0) [0|255] "" ADRV
|
||||
SG_ NEW_SIGNAL_1 : 79|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LKA_UsmMod : 80|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ LDW_SHAKE_STEERING : 82|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ ELK_SysFlrSta : 85|5@1+ (1,0) [0|31] "" ADRV
|
||||
SG_ ELK_SymbDisp : 90|3@1+ (1,0) [0|7] "" ADRV
|
||||
SG_ FCA_ESA_CtrlSta : 98|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ADAS_Damping_Gain : 104|8@1+ (1,0) [0|255] "" CGW
|
||||
|
||||
CM_ BO_ 203 "[P] Periodic";
|
||||
CM_ SG_ 203 ADAS_CMD_Crc35Val "ADAS_CMD_CyclicRedundancyCheck35Value";
|
||||
CM_ SG_ 203 ADAS_CMD_AlvCnt35Val "ADAS_CMD_AliveCounter35Value";
|
||||
CM_ SG_ 203 ADAS_ActvACISta "ADAS Active AngleControlInterface State";
|
||||
CM_ SG_ 203 ADAS_ActvACILvl2Sta "ADAS Active AngleControlInterface Level 2 State";
|
||||
CM_ SG_ 203 ADAS_StrAnglReqVal "ADAS Steering Angle Request Value";
|
||||
CM_ SG_ 203 ADAS_ACIAnglTqRedcGainVal "ADAS AngleControlInterface Angle Torque Reduction Gain Value";
|
||||
CM_ SG_ 203 FCA_ESA_ActvSta "State for FCA w/ESA";
|
||||
CM_ SG_ 203 FCA_ESA_TqBstGainVal "FCA w/ESA Torque boost Gain";
|
||||
CM_ SG_ 272 IEB_BrkMod_Sta "Brake Mode State";
|
||||
CM_ SG_ 272 IEB_BrkMod_Type "Brake Mode Type";
|
||||
CM_ SG_ 272 LFA2_USING_LEAD_MAYBE "I don't know about this signal much. But I noticed that it flipped to 1 when the lane was dubious but we had a lead in front";
|
||||
CM_ SG_ 272 LKA_SysIndReq "LKA_SystemIndicatorRequest ##2G##LDW_LKA - LKA11 - CF_LKA_SymbolState";
|
||||
CM_ SG_ 272 NEW_SIGNAL_3_LDW_UNK "I don't know what this signal is meant to do or convery. I just know it the 2 bits changed together when I manually disabled LKAS. ";
|
||||
CM_ SG_ 272 LDW_SHAKE_STEERING "I am not 100% sure on this signal. I believe that when this happens, the steering vibrates. Same as ADAS_CMD_30_10ms";
|
||||
CM_ SG_ 272 FCA_ESA_CtrlSta "Signal is a best guess. It went \"off\" when I disabled LKAS on a route. Same as ADAS_CMD_30_10ms";
|
||||
CM_ SG_ 272 CAR_IN_DRIVE_MAYBE "This seems to indicate when the car is on D maybe. I am not sure. I saw it twice on a route on hoth times I do remember stopping completely and in one instance I remember putting park. ";
|
||||
CM_ BO_ 298 "[P] Periodic";
|
||||
CM_ SG_ 298 ADAS_CMD_Crc30Val "ADAS_CMD_CyclicRedundancyCheck30Value";
|
||||
CM_ SG_ 298 ADAS_CMD_AlvCnt30Val "ADAS_CMD_AliveCounter30Value";
|
||||
CM_ SG_ 298 LKA_OptUsmSta "LKA_OptionUsmStatus ##2G##LDW_LKA - LKA11 - CF_LKA_Opt_USM";
|
||||
CM_ SG_ 298 LKA_RcgSta "LKA_RecognitionStatus ##2G##LDW_LKA - LKA11 - CF_LKA_LaneRecogState";
|
||||
CM_ SG_ 298 LKA_LHLnWrnSta "LKA_LHLaneWarningStatus ##2G##LDW_LKA - LKA11 - CF_LKA_LHWarning";
|
||||
CM_ SG_ 298 LKA_RHLnWrnSta "LKA_RHLaneWarningStatus ##2G##LDW_LKA - LKA11 - CF_LKA_RHWarning";
|
||||
CM_ SG_ 298 LKA_HndsoffSnd "LKA_HandsoffSound ##2G##LDW_LKA - LKA11 - CF_LKA_HandsOff_Snd";
|
||||
CM_ SG_ 298 LKA_StrSnd "LKA_SteeringSound ##2G##LDW_LKA - LKA11 - CF_LKA_Steer_Snd";
|
||||
CM_ SG_ 298 LKA_SysIndReq "LKA_SystemIndicatorRequest ##2G##LDW_LKA - LKA11 - CF_LKA_SymbolState";
|
||||
CM_ SG_ 298 ADAS_StrTqReqVal "LKA_SteeringTorqueRequestValue ##2G##LDW_LKA - LKA11 - CR_LKA_StrToqReq";
|
||||
CM_ SG_ 298 ADAS_ActToiSta "ADAS_ActiveTorqueOverlayInterfaceStatus ##2G##LDW_LKA - LKA11 - CF_LKA_ActToi";
|
||||
CM_ SG_ 298 ADAS_ToiFltSta "ADAS_TorqueOverlayInterfaceFaultStatus ##2G##LDW_LKA - LKA11 - CF_LKA_ToiFlt";
|
||||
CM_ SG_ 298 BCA_Rear_WrnSta "best-guess";
|
||||
CM_ SG_ 298 LKA_SysWrn "LKA_Additional_Info";
|
||||
CM_ SG_ 298 LKA_UsmMod "LKA_USM Mode ##2G##LDW_LKA-LKA11-CF_LKA_USM_Mode";
|
||||
CM_ SG_ 298 LDW_SHAKE_STEERING "I am not 100% sure on this signal. I believe that when this happens, the steering vibrates. Same as ESC_06_200ms";
|
||||
CM_ SG_ 298 FCA_ESA_CtrlSta "Signal is a best guess. It went \"off\" when I disabled LKAS on a route. Same as ESC_06_200ms";
|
||||
CM_ SG_ 298 ADAS_Damping_Gain "ADAS_Damping_Gain";
|
||||
VAL_ 203 ADAS_CMD_Crc35Val 0 "0x0x0~0xFFFF:CRCValue" 65535 "0x0x0~0xFFFF:CRCValue";
|
||||
VAL_ 203 ADAS_CMD_AlvCnt35Val 0 "0x0x0~0xFF:AlvCntValue" 255 "0x0x0~0xFF:AlvCntValue";
|
||||
VAL_ 203 ADAS_ActvACISta 0 "INIT" 1 "INACTIVE" 2 "ACTIVE35(ACTIVE)" 3 "ACTIVE33(Redundancy)" 4 "RESERVED" 5 "RESERVED" 6 "RESERVED" 7 "RESERVED" 8 "RESERVED" 9 "RESERVED" 10 "RESERVED" 11 "RESERVED" 12 "RESERVED" 13 "RESERVED" 14 "RESERVED" 15 "RESERVED";
|
||||
VAL_ 203 ADAS_ActvACILvl2Sta 0 "INIT" 1 "INACTIVE" 2 "ACTIVE35(ACTIVE)" 3 "RESERVED" 4 "RESERVED" 5 "RESERVED" 6 "RESERVED" 7 "RESERVED" 8 "RESERVED" 9 "RESERVED" 10 "RESERVED" 11 "RESERVED" 12 "RESERVED" 13 "RESERVED" 14 "RESERVED" 15 "RESERVED";
|
||||
VAL_ 203 ADAS_StrAnglReqVal 0 "0x0x000~0x3FFF:Real Values" 16383 "0x0x000~0x3FFF:Real Values";
|
||||
VAL_ 203 ADAS_ACIAnglTqRedcGainVal 0 "0x0x00~0xFA:Real Values" 250 "0x0x00~0xFA:Real Values" 251 "RESERVED" 252 "RESERVED" 253 "RESERVED" 254 "RESERVED" 255 "RESERVED";
|
||||
VAL_ 203 FCA_ESA_ActvSta 0 "Inactive" 1 "Active" 2 "RESERVED" 3 "RESERVED";
|
||||
VAL_ 203 FCA_ESA_TqBstGainVal 0 "0x0x00~0xFA:Real Values" 250 "0x0x00~0xFA:Real Values" 251 "RESERVED" 252 "RESERVED" 253 "RESERVED" 254 "RESERVED" 255 "RESERVED";
|
||||
VAL_ 272 IEB_BrkMod_Sta 0 "0x0: Not Applied" 1 "Normal" 2 "Sport" 3 "Chauffeur" 7 "Failure";
|
||||
VAL_ 272 IEB_BrkMod_Type 0 "type1 (Normal/Sport)" 1 "type2 (Normal/Sport/Chauffeur)";
|
||||
VAL_ 272 LKA_SysIndReq 0 "Off" 1 "Unavailable_(Grey On)" 2 "Lane Recognized_(Green On)" 3 "Lane Departure_(Green Blink)" 4 "System Fail_(Orange On)" 5 "Not Calibrated_(Orange Blink)" 6 "Regulation_(Orange On)" 7 "Reserved";
|
||||
VAL_ 272 FCA_ESA_CtrlSta 0 "Off" 1 "On";
|
||||
VAL_ 298 LKA_OptUsmSta 0 "None LKA/LDW Option (Default)" 1 "LDW" 2 "LKA" 3 "Reserved" 4 "LDW Only (None LKA)" 5 "LDW only OFF (None LKA)" 6 "LDW/LKA OFF" 7 "Invalid";
|
||||
VAL_ 298 LKA_RcgSta 0 "Not Recognized" 1 "Left Lane Recognition" 2 "Right Lane Recognition" 3 "Full Lane Recognition" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Reserved";
|
||||
VAL_ 298 LKA_LHLnWrnSta 0 "No Warning" 1 "Lane Departure Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 298 LKA_RHLnWrnSta 0 "No Warning" 1 "Lane Departure Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 298 LKA_HndsoffSnd 0 "Off" 1 "Hands-off Sound Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 298 LKA_StrSnd 0 "Off" 1 "Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 298 LKA_SysIndReq 0 "Off" 1 "Unavailable_(Grey On)" 2 "Lane Recognized_(Green On)" 3 "Lane Departure_(Green Blink)" 4 "System Fail_(Orange On)" 5 "Not Calibrated_(Orange Blink)" 6 "Regulation_(Orange On)" 7 "Reserved";
|
||||
VAL_ 298 ADAS_StrTqReqVal 2046 "Reserved" 2047 "Invalid";
|
||||
VAL_ 298 ADAS_ActToiSta 0 "De-activate TOI" 1 "Activate TOI" 2 "Reserved" 3 "Error indicator";
|
||||
VAL_ 298 ADAS_ToiFltSta 0 "No Fault" 1 "Fault" 2 "Reserved" 3 "Error indicatorr";
|
||||
VAL_ 298 LKA_SysWrn 0 "No Info" 1 "Reserved" 2 "Reserved" 3 "Reserved" 4 "Hands-Off Warning 1" 5 "Hands-Off Warning 2" 6 "Hands-Off Warning 3" 7 "Reserved" 8 "Reserved" 9 "System Automatic off" 10 "Reserved" 11 "Reserved" 12 "Reserved" 13 "Reserved" 14 "Reserved" 15 "System Fail";
|
||||
VAL_ 298 LKA_UsmMod 0 "NONE" 1 "LKA 1 mode" 2 "Reserved" 3 "LDW";
|
||||
VAL_ 298 FCA_ESA_CtrlSta 0 "Off";
|
||||
VAL_ 298 ADAS_Damping_Gain 0 "Reserved" 1 "Reserved" 2 "Reserved" 0 "Reserved" 202 "Reserved" 203 "Reserved" 204 "Reserved" 205 "Reserved" 206 "Reserved" 207 "Reserved" 208 "Reserved" 209 "Reserved" 210 "Reserved" 211 "Reserved" 212 "Reserved" 213 "Reserved" 214 "Reserved" 215 "Reserved" 216 "Reserved" 217 "Reserved" 218 "Reserved" 219 "Reserved" 220 "Reserved" 221 "Reserved" 222 "Reserved" 223 "Reserved" 224 "Reserved" 225 "Reserved" 226 "Reserved" 227 "Reserved" 228 "Reserved" 229 "Reserved" 230 "Reserved" 231 "Reserved" 232 "Reserved" 233 "Reserved" 234 "Reserved" 235 "Reserved" 236 "Reserved" 237 "Reserved" 238 "Reserved" 239 "Reserved" 240 "Reserved" 241 "Reserved" 242 "Reserved" 243 "Reserved" 244 "Reserved" 245 "Reserved" 246 "Reserved" 247 "Reserved" 248 "Reserved" 249 "Reserved" 250 "Reserved" 251 "Reserved" 252 "Reserved" 253 "Reserved" 254 "Reserved" 255 "Reserved";
|
||||
@@ -39,21 +39,19 @@ BU_: XXX CAMERA FRONT_RADAR ADRV APRK
|
||||
BO_ 80 LKAS: 16 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_OptUsmSta : 24|3@1+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ LKA_RcgSta : 27|3@1+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ LKA_LHLnWrnSta : 30|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_RHLnWrnSta : 32|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_HndsoffSnd : 34|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_StrSnd : 36|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_SysIndReq : 38|3@1+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ StrTqReqVal : 41|11@1+ (1,-1024) [0|4095] "" XXX
|
||||
SG_ ActToiSta : 52|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ ToiFltSta : 54|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_MODE : 24|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ LKA_AVAILABLE : 27|2@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ LKA_ICON : 38|2@1+ (1,0) [0|255] "" XXX
|
||||
SG_ FCA_SYSWARN : 40|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ TORQUE_REQUEST : 41|11@1+ (1,-1024) [0|4095] "" XXX
|
||||
SG_ STEER_REQ : 52|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_SysWrn : 60|4@1+ (1,0) [0|15] "" ADAS_DRV
|
||||
SG_ Damping_Gain : 64|8@1+ (1,0) [0|255] "" CGW
|
||||
SG_ LKA_UsmMod : 80|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ Info_PedtrnDst : 84|3@1+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ LKA_ASSIST : 62|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ STEER_MODE : 65|3@1+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_2 : 70|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ HAS_LANE_SAFETY : 80|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DAMP_FACTOR : 64|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 81 ADRV_0x51: 32 ADRV
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
@@ -223,26 +221,12 @@ BO_ 702 CAM_0x2be: 32 CAMERA
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
CM_ BO_ 80 "Known in official DBC as L_ADAS_CMD_30_10ms";
|
||||
CM_ SG_ 80 StrTqReqVal "This is the driver torque overlay demand value. A negative value represents a torque that would accelerate the steering wheel in a clockwise direction. This signal is always zero whilst the TOI is inactive. (the official DBC defines this as SG_ StrTqReqVal : xx|11@1+ (0.0078125,-8) [-8|7.9921875] \"Nm\" XXX but I am not changing it since it has a broader impact on the OP code)";
|
||||
CM_ SG_ 80 ActToiSta "This is a flag that is set to 1 when requesting the steering to activate the torque overlay interface (TOI). This must be done before an attempt is made to request non-zero steering torque overlay.";
|
||||
CM_ SG_ 80 ToiFltSta "This fault flag is set when a fault in the LKA system has been detected by the LKA ECU such that LKA can no longer function. CAN failures, internal video ECU failures, hard-wired component (e.g. master switch) failures and other system logic failures are";
|
||||
CM_ SG_ 80 LKA_SysWrn "A signal that provides additional information on the operation of the LKA system for the HMI to display to the driver. This includes additional fault information, reasons for unavailability of the system and additional warnings like the hands-off warning";
|
||||
CM_ SG_ 80 LKA_UsmMod "This signal indicates LKA USM Mode";
|
||||
CM_ SG_ 80 Info_PedtrnDst "Distance of the nearest pedestrian";
|
||||
CM_ BO_ 676 "Contains signals with detailed lane line information. Used by ADAS ECU on HDA 2 vehicles to operate LFA.";
|
||||
|
||||
CM_ SG_ 80 HAS_LANE_SAFETY "If 0, hides LKAS 'Lane Safety' menu from vehicle settings";
|
||||
CM_ SG_ 676 LEFT_LANE_LINE "Left lane line confidence";
|
||||
CM_ SG_ 676 RIGHT_LANE_LINE "Right lane line confidence";
|
||||
VAL_ 80 LKA_OptUsmSta 0 "None LKA/LDW Option (Default)" 1 "LDW" 2 "LKA" 3 "Reserved" 4 "LDW Only (None LKA)" 5 "LDW only OFF (None LKA)" 6 "LDW/LKA OFF" 7 "Invalid";
|
||||
VAL_ 80 LKA_RcgSta 0 "Not Recognized" 1 "Full Lane Recognized" 2 "Left Line Recognized" 3 "Right Line Recognized" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Reserved";
|
||||
VAL_ 80 LKA_LHLnWrnSta 0 "No Warning" 1 "Lane Departure Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 80 LKA_RHLnWrnSta 0 "No Warning" 1 "Lane Departure Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 80 LKA_HndsoffSnd 0 "Off" 1 "Hands-off Sound Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 80 LKA_StrSnd 0 "Off" 1 "Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 80 LKA_SysIndReq 0 "Off" 1 "Unavailable_(Grey On)" 2 "Lane Recognized_(Green On)" 3 "Lane Departure_(Green Blink)" 4 "System Fail_(Orange On)" 5 "Not Calibrated_(Orange Blink)" 6 "Regulation_(Orange On)" 7 "Reserved";
|
||||
VAL_ 80 ActToiSta 0 "De-activate TOI" 1 "Activate TOI" 2 "Reserved" 3 "Error indicator";
|
||||
VAL_ 80 ToiFltSta 0 "No Fault" 1 "Fault" 2 "Reserved" 3 "Error indicatorr";
|
||||
VAL_ 80 LKA_SysWrn 0 "No Info" 1 "Reserved" 2 "Reserved" 3 "Reserved" 4 "Hands-Off Warning 1" 5 "Hands-Off Warning 2" 6 "Reserved" 7 "Reserved" 8 "Reserved" 9 "System Automatic off" 10 "Reserved" 11 "Reserved" 12 "Reserved" 13 "Reserved" 14 "Reserved" 15 "System Fail";
|
||||
VAL_ 80 LKA_UsmMod 0 "NONE" 1 "LKA 1 mode" 2 "LKA 2 mode" 3 "LDW";
|
||||
VAL_ 80 LKA_ICON 0 "hidden" 1 "grey" 2 "green" 3 "flashing green" ;
|
||||
VAL_ 80 LKA_MODE 1 "warning only" 2 "assist" 6 "off" ;
|
||||
VAL_ 676 LEFT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence" 3 "High Confidence";
|
||||
VAL_ 676 RIGHT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence" 3 "High Confidence";
|
||||
|
||||
@@ -1,271 +0,0 @@
|
||||
BO_ 560 NEW_MSG_230: 16 FR_CMR_OR_CAR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 565 NEW_MSG_235: 32 FR_CMR_OR_CAR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 566 NEW_MSG_236: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 567 NEW_MSG_237: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 568 NEW_MSG_238: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 569 NEW_MSG_239: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 570 NEW_MSG_23A: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 571 NEW_MSG_23B: 32 FR_CMR_OR_CAR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 572 NEW_MSG_23C: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 573 NEW_MSG_23D: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 574 NEW_MSG_23E: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 575 NEW_MSG_23F: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 577 NEW_MSG_241: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 578 NEW_MSG_242: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 579 NEW_MSG_243: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 580 NEW_MSG_244: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 581 NEW_MSG_245: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 582 NEW_MSG_246: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 583 NEW_MSG_247: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 584 NEW_MSG_248: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 864 NEW_MSG_360: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 865 NEW_MSG_361: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 867 NEW_MSG_363: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 868 NEW_MSG_364: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 869 NEW_MSG_365: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 870 NEW_MSG_366: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 896 NEW_MSG_380: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 917 NEW_MSG_395: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|255] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|65535] "" FR_CMR
|
||||
|
||||
BO_ 928 NEW_MSG_3A0: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|255] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 933 NEW_MSG_3A5: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 934 NEW_MSG_3A6: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 935 NEW_MSG_3A7: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 936 NEW_MSG_3A8: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 937 NEW_MSG_3A9: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 938 NEW_MSG_3AA: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 939 NEW_MSG_3AB: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 940 NEW_MSG_3AC: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 941 NEW_MSG_3AD: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 942 NEW_MSG_3AE: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 943 NEW_MSG_3AF: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 944 NEW_MSG_3B0: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 945 NEW_MSG_3B1: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 946 NEW_MSG_3B2: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 947 NEW_MSG_3B3: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 948 NEW_MSG_3B4: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 949 NEW_MSG_3B5: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 950 NEW_MSG_3B6: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 951 NEW_MSG_3B7: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 952 NEW_MSG_3B8: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 953 NEW_MSG_3B9: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 954 NEW_MSG_3BA: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 955 NEW_MSG_3BB: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 956 NEW_MSG_3BC: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 957 NEW_MSG_3BD: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 958 NEW_MSG_3BE: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 959 NEW_MSG_3BF: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 960 NEW_MSG_3C0: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 962 NEW_MSG_3C2: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 963 NEW_MSG_3C3: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 964 NEW_MSG_3C4: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 976 NEW_MSG_3D0: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 977 NEW_MSG_3D1: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|127] "" FR_CMR
|
||||
|
||||
BO_ 978 NEW_MSG_3D2: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 979 NEW_MSG_3D3: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|32767] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 980 NEW_MSG_3D4: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ NEW_SIGNAL_1 : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 1280 NEW_MSG_500: 16 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
SG_ NEW_SIGNAL_3_SPEED_DEPENDANT : 24|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
CM_ BO_ 976 "(all 0)";
|
||||
CM_ BO_ 977 "(all 0)";
|
||||
CM_ BO_ 978 "(all 0)";
|
||||
CM_ BO_ 979 "(all 0)";
|
||||
CM_ BO_ 980 "(all 0)";
|
||||
CM_ SG_ 1280 NEW_SIGNAL_3_SPEED_DEPENDANT "I dont know what this is but it IS speed dependant";
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,6 +1,4 @@
|
||||
CM_ "IMPORT _hyundai_canfd_common.dbc";
|
||||
CM_ "IMPORT _hyundai_canfd_ccnc.dbc";
|
||||
CM_ "IMPORT _hyundai_canfd_hda2_cam_unknown.dbc";
|
||||
|
||||
BO_ 53 ACCELERATOR: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
@@ -48,7 +46,7 @@ BO_ 160 WHEEL_SPEEDS: 24 XXX
|
||||
SG_ WHL_SpdRLVal : 96|14@1+ (0.03125,0) [0|0] "km^h" XXX
|
||||
SG_ WHL_SpdRRVal : 112|14@1+ (0.03125,0) [0|0] "km^h" XXX
|
||||
|
||||
BO_ 203 LFA_ALT: 24 CGW_CCU
|
||||
BO_ 203 ADAS_CMD_35_10ms: 24 CGW_CCU
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|0] "0" FCU_C,GW_RGW,MDPS,SFA
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|0] "0" FCU_C,GW_RGW,MDPS,SFA
|
||||
SG_ ADAS_ActvACISta : 24|4@1+ (1,0) [0|0] "" GW_RGW,MDPS,SFA
|
||||
@@ -58,42 +56,17 @@ BO_ 203 LFA_ALT: 24 CGW_CCU
|
||||
SG_ FCA_ESA_ActvSta : 56|2@1+ (1,0) [0|0] "" GW_RGW,MDPS,SFA
|
||||
SG_ FCA_ESA_TqBstGainVal : 64|8@1+ (0.004,0) [0|0] "" GW_RGW,MDPS,SFA
|
||||
|
||||
BO_ 234 MDPS: 24 SFA
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|0] "" CGW_CCU,ESC,ICSC,RCU,RWA,RWS,VPC_C
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|0] "" CGW_CCU,ESC,ICSC,RCU,RWA,RWS,VPC_C
|
||||
SG_ MDPS_WrngLmpSta : 24|3@1+ (1,0) [0|0] "" CGW_CCU,ESC,ICSC,RCU,RWA,RWS
|
||||
SG_ MDPS_Typ : 27|3@1+ (1,0) [0|0] "" CGW_CCU,ICSC,RWA
|
||||
SG_ MDPS_EngIdleRpmReq : 30|2@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_VsmPlgInSta : 32|2@1+ (1,0) [0|0] "flag" ESC,ICSC,RCU,RWA
|
||||
SG_ MDPS_VsmDfctvSta : 34|2@1+ (1,0) [0|0] "" ESC,ICSC,RCU,RWA
|
||||
SG_ MDPS_VsmSigErrSta : 36|2@1+ (1,0) [0|0] "" ESC,RCU,RWA
|
||||
SG_ MDPS_PaPlugInSta : 38|2@1+ (1,0) [0|0] "" CGW_CCU,ESC,RCU,RWA
|
||||
SG_ MDPS_PaModeSta : 40|4@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_PaCanfltSta : 44|2@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_LkaPlgInSta : 46|2@1+ (1,0) [0|0] "" CGW_CCU,ICSC,RWA
|
||||
SG_ MDPS_LkaToiActvSta : 48|2@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_LkaToiUnblSta : 50|2@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_LkaToiFltSta : 52|2@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_LkaFailSta : 54|2@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_ResetOpSta : 59|2@1+ (1,0) [0|0] "" Vector__XXX
|
||||
SG_ MDPS_CurrModVal : 61|3@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_OutTqVal : 64|12@1+ (0.1,-204.8) [0|0] "Nm" CGW_CCU,ESC,ICSC,RCU,RWA
|
||||
SG_ MDPS_VsmActResp : 76|2@1+ (1,0) [0|0] "" ESC,RCU,RWA
|
||||
SG_ Reprogram_State_MDPS : 78|2@1+ (1,0) [0|0] "" CGW_CCU
|
||||
SG_ MDPS_StrTqSnsrVal : 80|13@1+ (1,-4095) [0|4095] "" CGW_CCU,ESC,ICSC,RCU,RWA,VPC_C
|
||||
SG_ MDPS_PaStrAnglVal : 96|16@1- (0.1,0) [0|0] "Deg" CGW_CCU,RWA
|
||||
SG_ MDPS_LoamModSta : 112|2@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_HDPSpprtSWVer : 114|5@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_ADASAciActvSta : 120|4@1+ (1,0) [0|0] "" CGW_CCU,ESC,RWA,RWS
|
||||
SG_ MDPS_ADASAciPluginSta : 124|2@1+ (1,0) [0|0] "" RWA
|
||||
SG_ MDPS_ADAS_AciFltSig : 126|2@1+ (1,0) [0|0] "" CGW_CCU,ESC,RWA
|
||||
SG_ MDPS_EstStrAnglVal : 128|16@1- (0.1,0) [0|0] "Deg" CGW_CCU,RWA,RWS
|
||||
SG_ MDPS_ADASAciActvSta_Lv2 : 144|4@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_ADAS_AciFltSig_Lv2 : 148|3@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_TpaPlugInSta : 152|2@1+ (1,0) [0|0] "" RWA,VPC_C
|
||||
SG_ MDPS_TpaCanfltSta : 154|2@1+ (1,0) [0|0] "" RWA,VPC_C
|
||||
SG_ MDPS_TpaModeSta : 156|4@1+ (1,0) [0|0] "" RWA,VPC_C
|
||||
SG_ MDPS_TpaStrAnglVal : 160|16@1- (0.1,0) [0|0] "Deg" RWA,VPC_C
|
||||
BO_ 234 MDPS: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_ACTIVE : 48|1@0+ (1,0) [0|16777215] "" XXX
|
||||
SG_ LKA_FAULT : 54|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STEERING_OUT_TORQUE : 64|12@1+ (0.1,-204.8) [0|65535] "" XXX
|
||||
SG_ STEERING_COL_TORQUE : 80|13@1+ (1,-4095) [0|4095] "" XXX
|
||||
SG_ STEERING_ANGLE : 96|16@1- (0.1,0) [0|255] "deg" XXX
|
||||
SG_ STEERING_ANGLE_2 : 128|16@1- (0.1,0) [0|65535] "deg" XXX
|
||||
SG_ LKA_ANGLE_ACTIVE : 145|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ LKA_ANGLE_FAULT : 149|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 256 ACCELERATOR_BRAKE_ALT: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
@@ -109,24 +82,22 @@ BO_ 261 ACCELERATOR_ALT: 32 XXX
|
||||
BO_ 272 LKAS_ALT: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_OptUsmSta : 24|3@1+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ LKA_RcgSta : 27|3@1+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ LKA_LHLnWrnSta : 30|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_RHLnWrnSta : 32|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_HndsoffSnd : 34|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_StrSnd : 36|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_SysIndReq : 38|3@1+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ StrTqReqVal : 41|11@1+ (1,-1024) [0|4095] "" XXX
|
||||
SG_ ActToiSta : 52|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ ToiFltSta : 54|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_MODE : 24|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ LKA_AVAILABLE : 27|2@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ LKA_ICON : 38|2@1+ (1,0) [0|255] "" XXX
|
||||
SG_ FCA_SYSWARN : 40|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ TORQUE_REQUEST : 41|11@1+ (1,-1024) [0|4095] "" XXX
|
||||
SG_ STEER_REQ : 52|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_SysWrn : 60|4@1+ (1,0) [0|15] "" ADAS_DRV
|
||||
SG_ Damping_Gain : 64|8@1+ (1,0) [0|255] "" CGW
|
||||
SG_ LKA_ASSIST : 62|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ STEER_MODE : 65|3@1+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_2 : 70|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ LKAS_ANGLE_ACTIVE : 77|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ LKA_UsmMod : 80|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ HAS_LANE_SAFETY : 80|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ADAS_StrAnglReqVal : 82|14@1- (0.1,0) [0|176.7] "Deg" GW_RGW,MDPS,SFA
|
||||
SG_ ADAS_ACIAnglTqRedcGainVal : 96|8@1+ (0.004,0) [0|1] "" GW_RGW,MDPS,SFA
|
||||
SG_ FCA_ESA_CtrlSta : 107|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DAMP_FACTOR : 64|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 282 FR_CMR_01_10ms: 16 FR_CMR
|
||||
SG_ FR_CMR_Crc1Val : 0|16@1+ (1,0) [0|0] "" Dummy,IBU_HS,vBDM
|
||||
@@ -160,31 +131,21 @@ BO_ 293 STEERING_SENSORS: 16 XXX
|
||||
SG_ STEERING_RATE : 40|8@1+ (4,0) [0|1016] "deg/s" XXX
|
||||
|
||||
BO_ 298 LFA: 16 ADRV
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" CLU,CGW
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" CLU,CGW
|
||||
SG_ LKA_OptUsmSta : 24|3@1+ (1,0) [0|7] "" CLU,CGW
|
||||
SG_ LKA_RcgSta : 27|3@1+ (1,0) [0|7] "" CLU,CGW
|
||||
SG_ LKA_LHLnWrnSta : 30|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ LKA_RHLnWrnSta : 32|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ LKA_HndsoffSnd : 34|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ LKA_StrSnd : 36|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ LKA_SysIndReq : 38|3@1+ (1,0) [0|7] "" CLU,RR_C_RDR,CGW
|
||||
SG_ StrTqReqVal : 41|11@1+ (1,-1024) [0|4095] "" XXX
|
||||
SG_ ActToiSta : 52|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ ToiFltSta : 54|2@1+ (1,0) [0|3] "" CGW
|
||||
SG_ LFA_BUTTON : 56|1@0+ (1,0) [0|255] "" XXX
|
||||
SG_ BCA_Rear_WrnSta : 57|3@1+ (1,0) [0|255] "" ADRV
|
||||
SG_ LKA_SysWrn : 60|4@1+ (1,0) [0|15] "" CLU,CGW
|
||||
SG_ FCA_LO_WrnSta : 64|1@1+ (1,0) [0|1] "" ADRV
|
||||
SG_ FCA_LS_WrnSta : 68|1@1+ (1,0) [0|1] "" ADRV
|
||||
SG_ LKA_OnOffEquip2Sta : 72|2@1+ (1,0) [0|255] "" ADRV
|
||||
SG_ LKA_UsmMod : 80|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ Info_PedtrnDst : 84|3@0+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ ELK_SysFlrSta : 85|5@1+ (1,0) [0|31] "" ADRV
|
||||
SG_ ELK_SymbDisp : 90|3@1+ (1,0) [0|7] "" ADRV
|
||||
SG_ FCA_ESA_WrnSta : 93|1@1+ (1,0) [0|7] "" ADRV
|
||||
SG_ FCA_ESA_CtrlSta : 101|1@1+ (1,0) [0|7] "" ADRV
|
||||
SG_ Damping_Gain : 104|8@1+ (1,0) [0|255] "" CGW
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_MODE : 24|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ NEW_SIGNAL_1 : 27|2@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ LKA_ICON : 38|2@1+ (1,0) [0|255] "" XXX
|
||||
SG_ TORQUE_REQUEST : 41|11@1+ (1,-1024) [0|4095] "" XXX
|
||||
SG_ STEER_REQ : 52|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_ASSIST : 62|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ STEER_MODE : 65|3@1+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_2 : 70|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ NEW_SIGNAL_4 : 72|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ HAS_LANE_SAFETY : 80|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DAMP_FACTOR : 104|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 304 GEAR_SHIFTER: 16 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
@@ -715,119 +676,14 @@ BO_ 1264 LOCAL_TIME: 8 XXX
|
||||
|
||||
CM_ SG_ 96 BRAKE_PRESSURE "User applied brake pedal pressure. Ramps from computer applied pressure on falling edge of cruise. Cruise cancels if !=0";
|
||||
CM_ SG_ 101 BRAKE_POSITION "User applied brake pedal position, max is ~700. Signed on some vehicles";
|
||||
CM_ BO_ 203 "Known in official DBC as ADAS_CMD_35_10ms";
|
||||
CM_ SG_ 203 ADAS_ActvACISta "ADAS Active AngleControlInterface State";
|
||||
CM_ SG_ 203 ADAS_ActvACILvl2Sta "ADAS Active AngleControlInterface Level 2 State";
|
||||
CM_ SG_ 203 ADAS_StrAnglReqVal "(LFA) ADAS Steering Angle Request Value; Capped at 119.9;";
|
||||
CM_ SG_ 203 ADAS_ACIAnglTqRedcGainVal "(LFA) ADAS AngleControlInterface Angle Torque Reduction Gain Value";
|
||||
CM_ SG_ 203 FCA_ESA_ActvSta "FCA_ESA Active State";
|
||||
CM_ SG_ 203 FCA_ESA_TqBstGainVal "FCA_ESA Torque Boost Gain Value";
|
||||
CM_ BO_ 234 "Named MDPS_01_10ms on the official DBC.";
|
||||
CM_ SG_ 234 CHECKSUM "The data area for CRC calculation is based on the data length (DLC) of the message DB.
|
||||
|
||||
The CRC shall be calculated over the entire data block (excluding the CRC bytes) including the user data, alive counter and Data ID
|
||||
|
||||
|
||||
|
||||
- CRC Polynomial (0x1021) , In";
|
||||
CM_ SG_ 234 COUNTER "For the first transmission request for a data element the counter shall be initialized with 0 and shall be incremented by 1 for every subsequent send request.
|
||||
|
||||
When the counter reaches the maximum value(0xFF), then it shall restart with 0 for the next s";
|
||||
CM_ SG_ 234 MDPS_WrngLmpSta "The signal indicates the ststus of the MDPS Warning lamp";
|
||||
CM_ SG_ 234 MDPS_Typ "Information regarding the type of MDPS. (C-MDPS / R-MDPS / SbW)";
|
||||
CM_ SG_ 234 MDPS_EngIdleRpmReq "This signal indicates the request status for engine idle rpm up according to MDPS fast rotation.";
|
||||
CM_ SG_ 234 MDPS_VsmPlgInSta "This signal indicates whether the VSM function of MDPS is plugged in or not.";
|
||||
CM_ SG_ 234 MDPS_VsmDfctvSta "Information regarding the MDPS defective Indication For VSM";
|
||||
CM_ SG_ 234 MDPS_VsmSigErrSta "Information indicating VSM signal status";
|
||||
CM_ SG_ 234 MDPS_PaPlugInSta "This signal indicates whether the PA function of MDPS is plugged in or not.";
|
||||
CM_ SG_ 234 MDPS_PaModeSta "This signal indicates the status of the PA steering function.";
|
||||
CM_ SG_ 234 MDPS_PaCanfltSta "This Signal should be used by only PA
|
||||
|
||||
This signal indicates whether the MDPS is defective in PA cooperation control.
|
||||
|
||||
This signal is set as '1' only when MDPS Detects CAN Failure(TIMEOUT, Signal Error) of PA CAN Message";
|
||||
CM_ SG_ 234 MDPS_LkaPlgInSta "This signal indicates whether the LKA function of MDPS is plugged in or not.";
|
||||
CM_ SG_ 234 MDPS_LkaToiActvSta "This flag is set to 1 in response to the LKA Controller requesting the activation of the torque interface and set back to 0 in response to the LKA Controller requesting the de-activation of the torque interface.";
|
||||
CM_ SG_ 234 MDPS_LkaToiUnblSta "This is a flag that is set when the MDPS is not faulty, but is temporarily unable to activate the TOI due to steering torque limiting e.g. when the supply voltage is too low.";
|
||||
CM_ SG_ 234 MDPS_LkaToiFltSta "This fault flag is set when a fault within the MDPS system has been detected such that the LKA TOI can no longer function. CAN failures, internal MDPS failures, and LKA controller logic failures are all reported by this flag. Failures reported by the LKA";
|
||||
CM_ SG_ 234 MDPS_LkaFailSta "This fault flag is set whilst the MDPS TOI is in a fail state and has not yet recovered from it. This could either be due to an MDPS detected fault (as communicated by the MDPS_LkaToiFltSta' flag) or an LKA detected fault (as communicated by the LKA_";
|
||||
CM_ SG_ 234 MDPS_ResetOpSta "Information regarding the state of reset";
|
||||
CM_ SG_ 234 MDPS_CurrModVal "This signal indicates flex steer parameter value in MDPS.
|
||||
|
||||
|
||||
|
||||
For information about flex steer mode set by user, refer to MDPS_FlxStrSta signal.";
|
||||
CM_ SG_ 234 MDPS_OutTqVal "MDPS column torque
|
||||
|
||||
this signal has direction information.
|
||||
|
||||
'+' Value means Counter clock wise rotation.
|
||||
|
||||
'-' value means Clock wise rotation.";
|
||||
CM_ SG_ 234 MDPS_VsmActResp "Information of VSM Tqrque Intervention Act Response";
|
||||
CM_ SG_ 234 Reprogram_State_MDPS "Information regarding the reprogram state";
|
||||
CM_ SG_ 234 MDPS_StrTqSnsrVal "Steering torque sensor value
|
||||
|
||||
|
||||
|
||||
Physical Value > 0: Left Direction (CCW)
|
||||
|
||||
Physical Value < 0: Right Direction (CW)
|
||||
|
||||
|
||||
|
||||
this signal has direction information.
|
||||
|
||||
'+' Value means Counter clock wise rotation.
|
||||
|
||||
'-' value means Clock wise rotation. (Original definition was (0.005,-20.48) [0|0] but it's different from all OP expects)";
|
||||
CM_ SG_ 234 MDPS_PaStrAnglVal "This value is used to inform PA of a compensated steering wheel angle by MDPS. The signal is signed 16bits.
|
||||
|
||||
|
||||
|
||||
(PH) = (HEX) 0.1 (for 0 < HEX 32767) or
|
||||
|
||||
= (HEX - 65536) 0.1 (for HEX > 32767) [Deg]
|
||||
|
||||
|
||||
|
||||
this signal has direction information.
|
||||
|
||||
'+' V";
|
||||
CM_ SG_ 234 MDPS_LoamModSta "The signal represent status of the LOAM(Loss Of Assist Mitigation) Mode";
|
||||
CM_ SG_ 234 MDPS_HDPSpprtSWVer "This signal indicates HDP-MDPS Control Requirement Spec Version";
|
||||
CM_ SG_ 234 MDPS_ADASAciActvSta "State for angle control";
|
||||
CM_ SG_ 234 MDPS_ADASAciPluginSta "This signal indicates whether the ADASAci function of MDPS is plugged in or not.";
|
||||
CM_ SG_ 234 MDPS_ADAS_AciFltSig "MDPS Fault Status for HDP Function";
|
||||
CM_ SG_ 234 MDPS_EstStrAnglVal "This value is used to inform of a compensated steering wheel angle by MDPS . The signal is signed 16bits, and made by motor position sensor.
|
||||
|
||||
|
||||
|
||||
(PH) = (HEX) 0.1 (for 0 < HEX 32767) or
|
||||
|
||||
= (HEX - 65536) 0.1 (for HEX > 32767) [Deg]
|
||||
|
||||
|
||||
|
||||
this signal";
|
||||
CM_ SG_ 234 MDPS_ADASAciActvSta_Lv2 "States for angle control (LV2)";
|
||||
CM_ SG_ 234 MDPS_ADAS_AciFltSig_Lv2 "MDPS Fault Status for LV2 Angle Control Function";
|
||||
CM_ SG_ 234 MDPS_TpaPlugInSta "This signal indicates whether the TPA function of MDPS is plugged in or not.";
|
||||
CM_ SG_ 234 MDPS_TpaCanfltSta "This Signal should be used by only TPA
|
||||
|
||||
This signal indicates whether the MDPS is defective in TPA cooperation control.
|
||||
|
||||
This signal is set as '1' only when MDPS Detects CAN Failure(TIMEOUT, Signal Error) of TPA CAN Message";
|
||||
CM_ SG_ 234 MDPS_TpaModeSta "This signal indicates the status of the TPA steering function.";
|
||||
CM_ SG_ 234 MDPS_TpaStrAnglVal "This value is used to inform TPA of a compensated steering wheel angle by MDPS. The signal is signed 16bits.
|
||||
|
||||
|
||||
|
||||
(PH) = (HEX) 0.1 (for 0 < HEX 32767) or
|
||||
|
||||
= (HEX - 65536) 0.1 (for HEX > 32767) [Deg]";
|
||||
CM_ BO_ 272 "Alternative LKAS message, used on cars such as 2023 Ioniq 6, 2nd gen Kona. Matches LKAS except size is 32 bytes";
|
||||
CM_ SG_ 272 ToiFltSta "This fault flag is set when a fault in the LKA system has been detected by the LKA ECU such that LKA can no longer function. CAN failures, internal video ECU failures, hard-wired component (e.g. master switch) failures and other system logic failures are";
|
||||
CM_ SG_ 272 LKA_AVAILABLE "Angle control cars: 3 when LKA is generally available, goes to 0 during changes with LFA";
|
||||
CM_ SG_ 272 ADAS_StrAnglReqVal "(LKAS) ADAS Steering Angle Request Value; Capped at 176.7; tracks MDPS->STEERING_ANGLE when not engaged, not STEERING_SENSORS->STEERING_ANGLE";
|
||||
CM_ SG_ 272 ADAS_ACIAnglTqRedcGainVal "(LKAS) ADAS AngleControlInterface Angle Torque Reduction Gain Value";
|
||||
CM_ BO_ 282 "Sent by the camera containing DAW (Driver Attention Warning) information and information about HBA (High Beam Assist).";
|
||||
@@ -849,24 +705,7 @@ CM_ SG_ 282 FR_CMR_SCCEquipSta "This signal indicates equipment for SCC";
|
||||
CM_ SG_ 282 FR_CMR_ReqADASMapMsgVal "This signal indicates an ADAS map message request from FR_CMR to H_U. Each bit indicates the request messages as follows. - Bit 0 : H_U_NAVI_V2_STUB_E - Bit 1 : HU_NAVI_V2_PROSHORT_E_00 (곡률) - Bit 2 : HU_NAVI_V2_PROSHORT_E_00 (곡률 외 정보)";
|
||||
CM_ SG_ 282 FR_CMR_SwVer1Val "This signal indicates a major version of FR_CMR software. If FR_CMR software version is A.00, 'A' and '00' mean major and minor version respectively.";
|
||||
CM_ SG_ 282 FR_CMR_SwVer2Val "This signal indicates a minor version of FR_CMR software. If FR_CMR software version is A.00, 'A' and '00' mean major and minor version respectively.";
|
||||
CM_ BO_ 298 "This message controls steering and alerts regarding lateral control. Formerly known as LFA.
|
||||
|
||||
Node is flagged as ADRV, but in reality this signal can be seen from either the FR_CMR (front camera) or the ADRV (adas ecu) for some trims.";
|
||||
CM_ SG_ 298 LKA_OptUsmSta "LKA_OptionUsmStatus ##2G##LDW_LKA - LKA11 - CF_LKA_Opt_USM";
|
||||
CM_ SG_ 298 LKA_RcgSta "LKA_RecognitionStatus ##2G##LDW_LKA - LKA11 - CF_LKA_LaneRecogState";
|
||||
CM_ SG_ 298 LKA_LHLnWrnSta "LKA_LHLaneWarningStatus ##2G##LDW_LKA - LKA11 - CF_LKA_LHWarning";
|
||||
CM_ SG_ 298 LKA_RHLnWrnSta "LKA_RHLaneWarningStatus ##2G##LDW_LKA - LKA11 - CF_LKA_RHWarning";
|
||||
CM_ SG_ 298 LKA_HndsoffSnd "LKA_HandsoffSound ##2G##LDW_LKA - LKA11 - CF_LKA_HandsOff_Snd";
|
||||
CM_ SG_ 298 LKA_StrSnd "LKA_SteeringSound ##2G##LDW_LKA - LKA11 - CF_LKA_Steer_Snd";
|
||||
CM_ SG_ 298 LKA_SysIndReq "LKA_SystemIndicatorRequest ##2G##LDW_LKA - LKA11 - CF_LKA_SymbolState";
|
||||
CM_ SG_ 298 StrTqReqVal "This is the driver torque overlay demand value. A negative value represents a torque that would accelerate the steering wheel in a clockwise direction. This signal is always zero whilst the TOI is inactive. (the official DBC defines this as SG_ StrTqReqVal : xx|11@1+ (0.0078125,-8) [-8|7.9921875] \"Nm\" XXX but I am not changing it since it has a broader impact on the OP code)";
|
||||
CM_ SG_ 298 ActToiSta "This is a flag that is set to 1 when requesting the steering to activate the torque overlay interface (TOI). This must be done before an attempt is made to request non-zero steering torque overlay.";
|
||||
CM_ SG_ 298 ToiFltSta "This fault flag is set when a fault in the LKA system has been detected by the LKA ECU such that LKA can no longer function. CAN failures, internal video ECU failures, hard-wired component (e.g. master switch) failures and other system logic failures are";
|
||||
CM_ SG_ 298 LKA_SysWrn "A signal that provides additional information on the operation of the LKA system for the HMI to display to the driver. This includes additional fault information, reasons for unavailability of the system and additional warnings like the hands-off warning";
|
||||
CM_ SG_ 298 FCA_LS_WrnSta "(Reverse Engineered) This signal was observed while ELK was taking over to prevent a blind spot collision.";
|
||||
CM_ SG_ 298 LKA_UsmMod "This signal indicates LKA USM Mode";
|
||||
CM_ SG_ 298 ELK_SymbDisp "Emergency Lane-Keeping";
|
||||
CM_ SG_ 298 Damping_Gain "ADAS Damping Gain for MDPS";
|
||||
CM_ SG_ 298 NEW_SIGNAL_4 "todo: figure out why always set to 9";
|
||||
CM_ SG_ 352 SET_ME_9 "has something to do with AEB settings";
|
||||
CM_ SG_ 373 ACCEnable "Likely a copy of CAN's TCS13->ACCEnable";
|
||||
CM_ SG_ 373 DriverBraking "Likely derived from BRAKE->BRAKE_POSITION";
|
||||
@@ -973,56 +812,14 @@ VAL_ 96 TRACTION_AND_STABILITY_CONTROL 0 "On" 5 "Limited" 1 "Off";
|
||||
VAL_ 112 GEAR 0 "P" 5 "D" 6 "N" 7 "R";
|
||||
VAL_ 203 ADAS_ActvACISta 0 "INIT" 1 "INACTIVE" 2 "ACTIVE35(ACTIVE)" 3 "ACTIVE33(Redundancy)" 4 "RESERVED" 5 "RESERVED" 6 "RESERVED" 7 "RESERVED" 8 "RESERVED" 9 "RESERVED" 10 "RESERVED" 11 "RESERVED" 12 "RESERVED" 13 "RESERVED" 14 "RESERVED" 15 "RESERVED";
|
||||
VAL_ 203 ADAS_ActvACILvl2Sta 0 "INIT" 1 "INACTIVE" 2 "ACTIVE35(ACTIVE)" 3 "RESERVED" 4 "RESERVED" 5 "RESERVED" 6 "RESERVED" 7 "RESERVED" 8 "RESERVED" 9 "RESERVED" 10 "RESERVED" 11 "RESERVED" 12 "RESERVED" 13 "RESERVED" 14 "RESERVED" 15 "RESERVED";
|
||||
VAL_ 203 ADAS_StrAnglReqVal 0 "0 (0x000~0x3FFF valid range)" 16383 "16383 (0x000~0x3FFF valid range)";
|
||||
VAL_ 203 ADAS_StrAnglReqVal 0 "0x0x000~0x3FFF:Real Values" 16383 "0x0x000~0x3FFF:Real Values";
|
||||
VAL_ 203 ADAS_ACIAnglTqRedcGainVal 0 "0x0x00~0xFA:Real Values" 250 "0x0x00~0xFA:Real Values" 251 "RESERVED" 252 "RESERVED" 253 "RESERVED" 254 "RESERVED" 255 "RESERVED";
|
||||
VAL_ 203 FCA_ESA_ActvSta 0 "Inactive" 1 "Active" 2 "RESERVED" 3 "RESERVED";
|
||||
VAL_ 203 FCA_ESA_TqBstGainVal 0 "0x0x00~0xFA:Real Values" 250 "0x0x00~0xFA:Real Values" 251 "RESERVED" 252 "RESERVED" 253 "RESERVED" 254 "RESERVED" 255 "RESERVED";
|
||||
VAL_ 234 MDPS_WrngLmpSta 0 "MDPS Malfunction Warning lamp OFF" 1 "MDPS Malfunciton Warning lamp BLANKING(2Hz)" 2 "MDPS Malfunction Warning lamp ON" 3 "MDPS Malfunction Warning lamp BLANKING(1Hz)" 4 "RESERVED" 5 "RESERVED" 6 "RESERVED" 7 "Error Indicator";
|
||||
VAL_ 234 MDPS_Typ 0 "C-MDPS" 1 "R-MDPS(Dual Pinion)" 2 "R-MDPS(Belt)" 3 "SbW" 4 "RESERVED" 5 "RESERVED" 6 "RESERVED" 7 "Error Indicator";
|
||||
VAL_ 234 MDPS_EngIdleRpmReq 0 "Current Consumption is Low" 1 "Current Consumption is High" 2 ":RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_VsmPlgInSta 0 "The VSM function of MDPS is not plugged in (unplugged)." 1 "The VSM function of MDPS is plugged in." 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_VsmDfctvSta 0 "MDPS is not defective" 1 "MDPS is defective" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_VsmSigErrSta 0 "VSM1 signal is not error" 1 "VSM signal is error" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_PaPlugInSta 0 "The PA function of MDPS is not plugged in (unplugged)." 1 "The PA function of MDPS is plugged in." 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_PaModeSta 0 "RESERVED" 1 "Steering still in initialization phase" 2 "Steering ready, waits for PA command" 3 "Steering set in standby by PA" 4 "Steering requested to go to first activation step" 5 "Steering requested to go to final activation step" 6 "Steering went to error internally" 7 "Steering aborted the automatic function" 8 "RESERVED" 9 "RESERVED" 10 "RESERVED" 11 "RESERVED" 12 "RESERVED" 13 "RESERVED" 14 "RESERVED" 15 "Error Indicator";
|
||||
VAL_ 234 MDPS_PaCanfltSta 0 "No Failure" 1 "Failure about Pa can message" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_LkaPlgInSta 0 "The LKA function of MDPS is not plugged in (unplugged)." 1 "The LKA function of MDPS is plugged in." 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_LkaToiActvSta 0 "Deactivated" 1 "Activated" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_LkaToiUnblSta 0 "Available" 1 "Unavailable" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_LkaToiFltSta 0 "No fault" 1 "Faulty" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_LkaFailSta 0 "Not in fail state" 1 "In fail state" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_ResetOpSta 0 "Normal" 1 "Reset Complete" 2 "Reset Fail" 3 "RESERVED";
|
||||
VAL_ 234 MDPS_CurrModVal 0 "Comfort Mode" 1 "Sport Mode" 2 "Sport+ Mode" 3 "Chauffeur Mode" 4 "Mild Mode" 5 "Drift Mode" 6 "RESERVED" 7 "Error Indicator";
|
||||
VAL_ 234 MDPS_OutTqVal 0 "0x0x000~0xFFD:real values" 4093 "0x0x000~0xFFD:real values" 4094 "RESERVED" 4095 "Error Indicator";
|
||||
VAL_ 234 MDPS_VsmActResp 0 "VSM Control inactivated" 1 "VSM Control Activated" 2 "RESERVED" 3 "Invalid";
|
||||
VAL_ 234 Reprogram_State_MDPS 0 "normal operation" 1 "reprogramming" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_StrTqSnsrVal 0 "0 (0x000~0x7FFD valid range)" 8189 "32765 (0x000~0x1FFD valid range)" 8190 "RESERVED" 8191 "Error Indicator";
|
||||
VAL_ 234 MDPS_PaStrAnglVal 0 "0 (0x000~0x7FFD valid range)" 32765 "32765 (0x000~0x7FFD valid range)" 32766 "Not Initialized" 32767 "Error Indicator" 32768 "32768 (0x8000~0xFFFF valid range)" 65535 "65535 (0x8000~0xFFFF valid range)";
|
||||
VAL_ 234 MDPS_LoamModSta 0 "Normal" 1 "Loam Flag Warning Display" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_HDPSpprtSWVer 0 "HDP-MDPS Control Requirement Version" 1 "HDP-MDPS Control Requirement Version" 2 "HDP-MDPS Control Requirement Version" 3 "HDP-MDPS Control Requirement Version" 4 "HDP-MDPS Control Requirement Version" 5 "HDP-MDPS Control Requirement Version" 6 "HDP-MDPS Control Requirement Version" 7 "HDP-MDPS Control Requirement Version" 8 "HDP-MDPS Control Requirement Version" 9 "HDP-MDPS Control Requirement Version" 10 "HDP-MDPS Control Requirement Version" 11 "HDP-MDPS Control Requirement Version" 12 "HDP-MDPS Control Requirement Version" 13 "HDP-MDPS Control Requirement Version" 14 "HDP-MDPS Control Requirement Version" 15 "HDP-MDPS Control Requirement Version" 16 "HDP-MDPS Control Requirement Version" 17 "HDP-MDPS Control Requirement Version" 18 "HDP-MDPS Control Requirement Version" 19 "HDP-MDPS Control Requirement Version" 20 "HDP-MDPS Control Requirement Version" 21 "HDP-MDPS Control Requirement Version" 22 "HDP-MDPS Control Requirement Version" 23 "HDP-MDPS Control Requirement Version" 24 "HDP-MDPS Control Requirement Version" 25 "HDP-MDPS Control Requirement Version" 26 "HDP-MDPS Control Requirement Version" 27 "HDP-MDPS Control Requirement Version" 28 "HDP-MDPS Control Requirement Version" 29 "HDP-MDPS Control Requirement Version" 30 "HDP-MDPS Control Requirement Version" 31 "HDP-MDPS Control Requirement Version";
|
||||
VAL_ 234 MDPS_ADASAciActvSta 0 "INIT" 1 "INACTIVE" 2 "ACTIVE35(ACTIVE)" 3 "ACTIVE33(Redundancy)" 4 "RESERVED" 5 "RESERVED" 6 "RESERVED" 7 "RESERVED" 8 "RESERVED" 9 "RESERVED" 10 "RESERVED" 11 "RESERVED" 12 "RESERVED" 13 "RESERVED" 14 "RESERVED" 15 "RESERVED";
|
||||
VAL_ 234 MDPS_ADASAciPluginSta 0 "ADASAciNotPlugged-in" 1 "ADASAciPlugged-in" 2 "RESERVED" 3 "ErrorIndicator";
|
||||
VAL_ 234 MDPS_ADAS_AciFltSig 0 "No Fault" 1 "MDPS Fault" 2 "Fault Except MDPS" 3 "Both Fault";
|
||||
VAL_ 234 MDPS_EstStrAnglVal 0 "0 (0x000~0x7FFD valid range)" 32765 "32765 (0x000~0x7FFD valid range)" 32766 "Not Initialized" 32767 "Error Indicator" 32768 "32768 (0x8000~0xFFFF valid range)" 65535 "65535 (0x8000~0xFFFF valid range)";
|
||||
VAL_ 234 MDPS_ADASAciActvSta_Lv2 0 "Not USED" 1 "INACTIVE" 2 "ACTIVE35(Active)" 3 "Reserved" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Reserved" 8 "Reserved" 9 "Reserved" 10 "Reserved" 11 "Reserved" 12 "Reserved" 13 "Reserved" 14 "Reserved" 15 "Reserved";
|
||||
VAL_ 234 MDPS_ADAS_AciFltSig_Lv2 0 "No Fault" 1 "MDPS Fault" 2 "Fault Except MDPS" 3 "Both Fault" 4 "Temporarily Unavailable" 5 "Temporarily Unavailable and MDPS Fault" 6 "Temporarily Unavailable and Fault Except MDPS" 7 "Temporarily Unavailable and Both Fault";
|
||||
VAL_ 234 MDPS_TpaPlugInSta 0 "The TPA function of MDPS is not plugged in (unplugged)" 1 "The TPA function of MDPS is plugged in" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_TpaCanfltSta 0 "No Failure" 1 "Failure about Tpa can message" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_TpaModeSta 0 "RESERVED" 1 "Steering still in initialization phase" 2 "Steering ready, waits for TPA command" 3 "Steering set in standby by TPA" 4 "Steering requested to go to first activation step activation step" 5 "Steering requested to go to final activation step" 6 "Steering went to error internally" 7 "Steering aborted the automatic function" 14 "RESERVED" 15 "Error Indicator";
|
||||
VAL_ 234 MDPS_TpaStrAnglVal 0 "0 (0x000~0x7FFD valid range)" 32765 "32765 (0x000~0x7FFD valid range)" 32766 "Not Initialized" 32767 "Error Indicator" 32768 "32768 (0x8000~0xFFFF valid range)" 65535 "65535 (0x8000~0xFFFF valid range)";
|
||||
VAL_ 272 LKA_OptUsmSta 0 "None LKA/LDW Option (Default)" 1 "LDW" 2 "LKA" 3 "Reserved" 4 "LDW Only (None LKA)" 5 "LDW only OFF (None LKA)" 6 "LDW/LKA OFF" 7 "Invalid";
|
||||
VAL_ 272 LKA_RcgSta 0 "Not Recognized" 1 "Left Lane Recognition" 2 "Right Lane Recognition" 3 "Full Lane Recognition" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Reserved";
|
||||
VAL_ 272 LKA_LHLnWrnSta 0 "No Warning" 1 "Lane Departure Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 272 LKA_RHLnWrnSta 0 "No Warning" 1 "Lane Departure Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 272 LKA_HndsoffSnd 0 "Off" 1 "Hands-off Sound Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 272 LKA_StrSnd 0 "Off" 1 "Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 272 LKA_SysIndReq 0 "Off" 1 "Unavailable_(Grey On)" 2 "Lane Recognized_(Green On)" 3 "Lane Departure_(Green Blink)" 4 "System Fail_(Orange On)" 5 "Not Calibrated_(Orange Blink)" 6 "Regulation_(Orange On)" 7 "Reserved";
|
||||
VAL_ 272 StrTqReqVal 2046 "Reserved" 2047 "Invalid";
|
||||
VAL_ 272 ActToiSta 0 "De-activate TOI" 1 "Activate TOI" 2 "Reserved" 3 "Error indicator";
|
||||
VAL_ 272 ToiFltSta 0 "No Fault" 1 "Fault" 2 "Reserved" 3 "Error indicatorr";
|
||||
VAL_ 272 LKA_SysWrn 0 "No Info" 1 "Reserved" 2 "Reserved" 3 "Reserved" 4 "Hands-Off Warning 1" 5 "Hands-Off Warning 2" 6 "Hands-Off Warning 3" 7 "Reserved" 8 "Reserved" 9 "System Automatic off" 10 "Reserved" 11 "Reserved" 12 "Reserved" 13 "Reserved" 14 "Reserved" 15 "System Fail";
|
||||
VAL_ 272 LKA_UsmMod 0 "NONE" 1 "LKA 1 mode" 2 "Reserved" 3 "LDW";
|
||||
VAL_ 272 ADAS_ACIAnglTqRedcGainVal 0 "0x0x00~0xFA:Real Values" 250 "0x0x00~0xFA:Real Values" 251 "RESERVED" 252 "RESERVED" 253 "RESERVED" 254 "RESERVED" 255 "RESERVED";
|
||||
VAL_ 234 LKA_FAULT 0 "ok" 1 "lka fault";
|
||||
VAL_ 272 LKA_MODE 1 "warning only" 2 "assist" 6 "off";
|
||||
VAL_ 272 LKA_ICON 0 "hidden" 1 "grey" 2 "green" 3 "flashing green";
|
||||
VAL_ 272 LKAS_ANGLE_ACTIVE 0 "off" 1 "not active" 2 "active";
|
||||
VAL_ 282 HBA_SysOptSta 0 "None HBA Option (Default)" 1 "HBA Option" 2 "Reserved" 3 "Error indicator";
|
||||
VAL_ 282 HBA_SysSta 0 "HBA Disable" 1 "HBA Enable & High Beam Off" 2 "HBA Enable & High Beam On" 3 "Reserved" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "System Fail";
|
||||
VAL_ 282 HBA_IndLmpReq 0 "HBA Indicator Lamp Off" 1 "HBA Indicator Lamp On" 2 "Reserved" 3 "Error indicator";
|
||||
@@ -1036,20 +833,8 @@ VAL_ 282 DAW_WrnMsgSta 0 "No Warning" 1 "Rest Recommend Warning" 2 "Hands-Off TM
|
||||
VAL_ 282 DAW_TimeRstReq 0 "No signal" 1 "Time reset" 2 "Reserved" 3 "Error indicator";
|
||||
VAL_ 282 DAW_SnstvtyModRetVal 0 "Default" 1 "Late" 2 "Normal" 3 "Reserved" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Invalid";
|
||||
VAL_ 282 FR_CMR_SCCEquipSta 0 "Not Applied" 1 "Applied" 2 "Not used" 3 "Error Indicator";
|
||||
VAL_ 298 LKA_OptUsmSta 0 "None LKA/LDW Option (Default)" 1 "LDW" 2 "LKA" 3 "Reserved" 4 "LDW Only (None LKA)" 5 "LDW only OFF (None LKA)" 6 "LDW/LKA OFF" 7 "Invalid";
|
||||
VAL_ 298 LKA_RcgSta 0 "Not Recognized" 1 "Left Lane Recognition" 2 "Right Lane Recognition" 3 "Full Lane Recognition" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Reserved";
|
||||
VAL_ 298 LKA_LHLnWrnSta 0 "No Warning" 1 "Lane Departure Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 298 LKA_RHLnWrnSta 0 "No Warning" 1 "Lane Departure Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 298 LKA_HndsoffSnd 0 "Off" 1 "Hands-off Sound Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 298 LKA_StrSnd 0 "Off" 1 "Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 298 LKA_SysIndReq 0 "Off" 1 "Unavailable_(Grey On)" 2 "Lane Recognized_(Green On)" 3 "Lane Departure_(Green Blink)" 4 "System Fail_(Orange On)" 5 "Not Calibrated_(Orange Blink)" 6 "Regulation_(Orange On)" 7 "Reserved";
|
||||
VAL_ 298 StrTqReqVal 2046 "Reserved" 2047 "Invalid";
|
||||
VAL_ 298 ActToiSta 0 "De-activate TOI" 1 "Activate TOI" 2 "Reserved" 3 "Error indicator";
|
||||
VAL_ 298 ToiFltSta 0 "No Fault" 1 "Fault" 2 "Reserved" 3 "Error indicatorr";
|
||||
VAL_ 298 LKA_SysWrn 0 "No Info" 1 "Reserved" 2 "Reserved" 3 "Reserved" 4 "Hands-Off Warning 1" 5 "Hands-Off Warning 2" 6 "Hands-Off Warning 3" 7 "Reserved" 8 "Reserved" 9 "System Automatic off" 10 "Reserved" 11 "Reserved" 12 "Reserved" 13 "Reserved" 14 "Reserved" 15 "System Fail";
|
||||
VAL_ 298 FCA_LS_WrnSta 3 "ELK Steering to the right";
|
||||
VAL_ 298 LKA_UsmMod 0 "NONE" 1 "LKA 1 mode" 2 "Reserved" 3 "LDW";
|
||||
VAL_ 298 ELK_SymbDisp 3 "Evasive Action Taking Place";
|
||||
VAL_ 298 LKA_MODE 1 "warning only" 2 "assist" 6 "off";
|
||||
VAL_ 298 LKA_ICON 0 "hidden" 1 "grey" 2 "green" 3 "flashing green";
|
||||
VAL_ 304 PARK_BUTTON 1 "Pressed" 2 "Not Pressed";
|
||||
VAL_ 304 KNOB_POSITION 1 "R" 2 "N (on R side)" 3 "Centered" 4 "N (on D side)" 5 "D";
|
||||
VAL_ 304 GEAR 1 "P" 2 "R" 3 "N" 4 "D";
|
||||
|
||||
@@ -1,811 +0,0 @@
|
||||
CM_ "IMPORT _hyundai_canfd_common.dbc";
|
||||
CM_ "IMPORT _hyundai_canfd_ccnc.dbc";
|
||||
CM_ "IMPORT _hyundai_canfd_ccnc_og.dbc";
|
||||
|
||||
BO_ 53 ACCELERATOR: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ ACCELERATOR_PEDAL : 40|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ GEAR : 192|3@1+ (1,0) [0|7] "" XXX
|
||||
|
||||
BO_ 64 GEAR_ALT: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ GEAR : 32|3@1+ (1,0) [0|7] "" XXX
|
||||
|
||||
BO_ 69 GEAR: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ GEAR : 44|3@1+ (1,0) [0|7] "" XXX
|
||||
|
||||
BO_ 96 ESP_STATUS: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ TRACTION_AND_STABILITY_CONTROL : 42|3@1+ (1,0) [0|63] "" XXX
|
||||
SG_ BRAKE_PRESSURE : 128|10@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ BRAKE_PRESSED : 148|1@1+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 101 BRAKE: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BRAKE_POSITION : 40|16@1- (1,0) [0|65535] "" XXX
|
||||
SG_ BRAKE_PRESSED : 57|1@1+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 112 GEAR_ALT_2: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ GEAR : 60|3@1+ (1,0) [0|7] "" XXX
|
||||
|
||||
BO_ 160 WHEEL_SPEEDS: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ MOVING_FORWARD : 56|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ MOVING_BACKWARD : 57|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ MOVING_FORWARD2 : 58|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ MOVING_BACKWARD2 : 59|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ WHL_SpdFLVal : 64|14@1+ (0.03125,0) [0|0] "km^h" XXX
|
||||
SG_ WHL_SpdFRVal : 80|14@1+ (0.03125,0) [0|0] "km^h" XXX
|
||||
SG_ WHL_SpdRLVal : 96|14@1+ (0.03125,0) [0|0] "km^h" XXX
|
||||
SG_ WHL_SpdRRVal : 112|14@1+ (0.03125,0) [0|0] "km^h" XXX
|
||||
|
||||
BO_ 234 MDPS: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_ACTIVE : 48|1@0+ (1,0) [0|16777215] "" XXX
|
||||
SG_ LKA_FAULT : 54|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STEERING_OUT_TORQUE : 64|12@1+ (0.1,-204.8) [0|65535] "" XXX
|
||||
SG_ STEERING_COL_TORQUE : 80|13@1+ (1,-4095) [0|4095] "" XXX
|
||||
SG_ STEERING_ANGLE : 96|16@1- (0.1,0) [0|255] "deg" XXX
|
||||
SG_ STEERING_ANGLE_2 : 128|16@1- (0.1,0) [0|65535] "deg" XXX
|
||||
SG_ LKA_ANGLE_ACTIVE : 145|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ LKA_ANGLE_FAULT : 149|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 256 ACCELERATOR_BRAKE_ALT: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BRAKE_PRESSED : 32|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ ACCELERATOR_PEDAL_PRESSED : 176|1@1+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 261 ACCELERATOR_ALT: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ ACCELERATOR_PEDAL : 103|10@1+ (0.25,0) [0|1022] "" XXX
|
||||
|
||||
BO_ 282 FR_CMR_01_10ms: 16 FR_CMR
|
||||
SG_ FR_CMR_Crc1Val : 0|16@1+ (1,0) [0|0] "" Dummy,IBU_HS,vBDM
|
||||
SG_ FR_CMR_AlvCnt1Val : 16|8@1+ (1,0) [0|0] "" CLU,IBU_HS,vBDM
|
||||
SG_ HBA_SysOptSta : 24|2@1+ (1,0) [0|3] "" CLU,IBU_HS,vBDM
|
||||
SG_ HBA_SysSta : 26|3@1+ (1,0) [0|7] "" CLU,IBU_HS,vBDM
|
||||
SG_ HBA_IndLmpReq : 29|2@1+ (1,0) [0|3] "" CLU,vBDM
|
||||
SG_ iHBAref_VehLftSta : 31|2@1+ (1,0) [0|3] "" IBU_HS,ICU,vBDM
|
||||
SG_ iHBAref_VehCtrSta : 33|2@1+ (1,0) [0|3] "" IBU_HS,ICU,vBDM
|
||||
SG_ iHBAref_VehRtSta : 35|2@1+ (1,0) [0|3] "" IBU_HS,ICU,vBDM
|
||||
SG_ iHBAref_ILLAmbtSta : 37|2@1+ (1,0) [0|3] "" IBU_HS,ICU,vBDM
|
||||
SG_ FCA_Equip_MFC : 39|3@1+ (1,0) [0|0] "" ADAS_DRV,RR_C_RDR,vBDM
|
||||
SG_ HBA_OptUsmSta : 42|2@1+ (1,0) [0|3] "" CLU,H_U_MM
|
||||
SG_ FCAref_FusSta : 45|3@1+ (1,0) [0|0] "" vBDM
|
||||
SG_ DAW_LVDA_PUDis : 48|2@1+ (1,0) [0|0] "" CLU,vBDM
|
||||
SG_ DAW_LVDA_OptUsmSta : 50|2@1+ (1,0) [0|3] "" CLU,H_U_MM,vBDM
|
||||
SG_ DAW_OptUsmSta : 52|3@1+ (1,0) [0|0] "" CLU,H_U_MM
|
||||
SG_ DAW_SysSta : 55|4@1+ (1,0) [0|0] "" CLU
|
||||
SG_ DAW_WrnMsgSta : 59|3@1+ (1,0) [0|0] "" CLU
|
||||
SG_ DAW_TimeRstReq : 62|2@1+ (1,0) [0|0] "" CLU
|
||||
SG_ DAW_SnstvtyModRetVal : 64|3@1+ (1,0) [0|0] "" CLU,H_U_MMz
|
||||
|
||||
BO_ 293 STEERING_SENSORS: 16 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ STEERING_ANGLE : 24|16@1- (0.1,0) [0|255] "deg" XXX
|
||||
SG_ STEERING_RATE : 40|8@1+ (4,0) [0|1016] "deg/s" XXX
|
||||
|
||||
BO_ 304 GEAR_SHIFTER: 16 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ PARK_BUTTON : 32|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ KNOB_POSITION : 40|3@1+ (1,0) [0|3] "" XXX
|
||||
SG_ GEAR : 64|3@1+ (1,0) [0|7] "" XXX
|
||||
|
||||
BO_ 352 ADRV_0x160: 16 ADRV
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ AEB_SETTING : 24|2@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SET_ME_2 : 56|8@1+ (1,0) [0|1] "" XXX
|
||||
SG_ SET_ME_FF : 64|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SET_ME_FC : 72|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SET_ME_9 : 80|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 353 CCNC_0x161: 32 CCNC
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ FCA_ICON : 24|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ FCA_ALT_ICON : 27|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ LKA_ICON : 30|3@1+ (1,0) [0|3] "" XXX
|
||||
SG_ HBA_ICON : 33|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ ZEROS_1 : 36|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ ZEROS_2 : 40|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ FCA_IMAGE : 42|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ ZEROS_3 : 45|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ ZEROS_4 : 48|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ BCA_LEFT : 51|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ BCA_RIGHT : 54|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ LCA_LEFT_ARROW : 57|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ LCA_RIGHT_ARROW : 60|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ ZEROS_5 : 63|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ CENTERLINE : 64|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ TARGET : 66|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ TARGET_DISTANCE : 69|11@1+ (0.1,0) [0|204.7] "m" XXX
|
||||
SG_ LANELINE_LEFT : 80|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ LANELINE_LEFT_POSITION : 84|6@1+ (1,0) [0|15] "" XXX
|
||||
SG_ LANELINE_RIGHT : 90|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ LANELINE_RIGHT_POSITION : 94|6@1+ (1,0) [0|3] "" XXX
|
||||
SG_ LANELINE_CURVATURE : 100|5@1- (1,15) [0|31] "" XXX
|
||||
SG_ LANE_HIGHLIGHT : 105|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ LANE_HIGHLIGHT_DISTANCE : 109|11@1+ (0.1,0) [0|204.7] "m" XXX
|
||||
SG_ LANE_LEFT : 120|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ LANE_RIGHT : 123|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ LANE_ZOOM : 126|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ ALERTS_1 : 128|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ ALERTS_2 : 134|5@1+ (1,0) [0|3] "" XXX
|
||||
SG_ ALERTS_3 : 139|5@1+ (1,0) [0|15] "" XXX
|
||||
SG_ ALERTS_4 : 144|8@1+ (1,0) [0|511] "" XXX
|
||||
SG_ ALERTS_5 : 152|5@1+ (1,0) [0|7] "" XXX
|
||||
SG_ MUTE : 157|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ SOUNDS_1 : 160|4@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SOUNDS_2 : 164|4@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SOUNDS_3 : 168|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ SOUNDS_4 : 172|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ ZEROS_6 : 175|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ZEROS_7 : 176|5@1+ (1,0) [0|31] "" XXX
|
||||
SG_ SETSPEED_HUD : 181|3@1+ (1,0) [0|3] "" XXX
|
||||
SG_ DISTANCE_LEAD : 184|5@1+ (1,0) [0|31] "" XXX
|
||||
SG_ DISTANCE_CAR : 189|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ DISTANCE_SPACING : 192|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ DISTANCE : 196|4@1+ (1,0) [0|7] "" XXX
|
||||
SG_ SETSPEED_SPEED : 200|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SETSPEED : 208|4@1+ (1,0) [0|3] "" XXX
|
||||
SG_ HDA_ICON : 212|4@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SLA_ICON : 216|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ NAV_ICON : 220|4@1+ (1,0) [0|3] "" XXX
|
||||
SG_ LFA_ICON : 224|4@1+ (1,0) [0|3] "" XXX
|
||||
SG_ LCA_LEFT_ICON : 228|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ LCA_RIGHT_ICON : 232|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ BACKGROUND : 236|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ DAW_ICON : 240|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ CAR_CIRCLE : 243|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ ZEROS_8 : 246|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ ZEROS_9 : 248|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 354 CCNC_0x162: 32 CCNC
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTRY : 24|4@1+ (1,0) [0|7] "" XXX
|
||||
SG_ SPEEDLIMIT_FLASH : 28|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ SPEEDLIMIT : 32|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SIGNS : 40|8@1+ (1,0) [0|15] "" XXX
|
||||
SG_ SPEEDLIMIT_WEATHER : 48|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ VIBRATE : 52|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ ZEROS_1 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ZEROS_2 : 56|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LEAD : 64|5@1+ (1,0) [0|31] "" XXX
|
||||
SG_ LEAD_DISTANCE : 69|11@1+ (0.1,0) [0|204.7] "m" XXX
|
||||
SG_ LEAD_LATERAL : 80|7@1+ (0.1,0) [0|127] "m" XXX
|
||||
SG_ ZEROS_3 : 87|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LEAD_ALT : 88|5@1+ (1,0) [0|31] "" XXX
|
||||
SG_ LEAD_ALT_DISTANCE : 93|11@1+ (0.1,0) [0|204.7] "m" XXX
|
||||
SG_ LEAD_ALT_LATERAL : 104|7@1+ (0.1,0) [0|127] "m" XXX
|
||||
SG_ ZEROS_4 : 111|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LEAD_LEFT : 112|5@1+ (1,0) [0|31] "" XXX
|
||||
SG_ LEAD_LEFT_DISTANCE : 117|11@1+ (0.1,0) [0|204.7] "m" XXX
|
||||
SG_ LEAD_LEFT_LATERAL : 128|7@1+ (0.1,0) [0|127] "m" XXX
|
||||
SG_ ZEROS_5 : 135|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LEAD_RIGHT : 136|5@1+ (1,0) [0|31] "" XXX
|
||||
SG_ LEAD_RIGHT_DISTANCE : 141|11@1+ (0.1,0) [0|204.7] "m" XXX
|
||||
SG_ LEAD_RIGHT_LATERAL : 152|7@1+ (0.1,0) [0|127] "m" XXX
|
||||
SG_ ZEROS_6 : 159|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ZEROS_7 : 162|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LEAD_LEFT_REAR_STATUS : 167|5@0+ (1,0) [0|31] "" XXX
|
||||
SG_ LEAD_LEFT_REAR_DISTANCE : 175|8@0+ (0.1,0) [0|255] "m" XXX
|
||||
SG_ LEAD_LEFT_REAR_LATERAL : 182|7@0+ (0.1,0) [0|127] "m" XXX
|
||||
SG_ ZEROS_8 : 183|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ZEROS_9 : 191|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ LEAD_RIGHT_REAR_STATUS : 196|5@0+ (1,0) [0|31] "" XXX
|
||||
SG_ LEAD_RIGHT_REAR_DISTANCE : 197|8@1+ (0.1,0) [0|255] "m" XXX
|
||||
SG_ LEAD_RIGHT_REAR_LATERAL : 205|7@1+ (0.1,0) [0|127] "m" XXX
|
||||
SG_ ZEROS_10 : 212|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FAULT_FSS : 213|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ FAULT_FCA : 216|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ FAULT_LSS : 219|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ FAULT_SLA : 222|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ FAULT_DAW : 225|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ FAULT_HBA : 228|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ FAULT_SCC : 231|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ FAULT_LFA : 234|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ FAULT_HDA : 237|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ FAULT_LCA : 240|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ FAULT_HDP : 243|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ FAULT_DAS : 246|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ FAULT_ESS : 249|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ ZEROS_11 : 252|4@1+ (1,0) [0|15] "" XXX
|
||||
|
||||
BO_ 357 SPAS1: 24 APRK
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|0] "" XXX
|
||||
SG_ NEW_SIGNAL_2 : 90|3@1+ (1,0) [0|0] "" XXX
|
||||
SG_ NEW_SIGNAL_1 : 96|16@1- (0.1,0) [0|0] "" XXX
|
||||
|
||||
BO_ 362 SPAS2: 32 APRK
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|0] "" XXX
|
||||
SG_ BLINKER_CONTROL : 133|3@1+ (1,0) [0|0] "" XXX
|
||||
|
||||
BO_ 373 TCS: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ NEW_SIGNAL_4 : 24|7@1+ (1,0) [0|127] "" XXX
|
||||
SG_ aBasis : 32|11@1+ (0.01,-10.23) [0|7] "m/s^2" XXX
|
||||
SG_ ACCEL_REF_ACC : 48|11@1- (1,0) [0|1023] "" XXX
|
||||
SG_ EQUIP_MAYBE : 64|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ACCEnable : 67|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ ACC_REQ : 68|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_5 : 72|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_2 : 74|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_3 : 76|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_1 : 80|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DriverBraking : 81|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DriverBrakingLowSens : 84|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ AEB_EQUIP_MAYBE : 96|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_6 : 128|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ NEW_SIGNAL_7 : 135|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ PROBABLY_EQUIP : 136|2@1+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 416 SCC_CONTROL: 32 ADRV
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ ACC_ObjDist : 24|11@1+ (0.1,0) [0|204.7] "m" XXX
|
||||
SG_ ACC_ObjRelSpd : 35|9@1+ (0.1,-16.4) [-16.4|34.7] "m/s" XXX
|
||||
SG_ SET_ME_3 : 45|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ ObjValid : 46|1@0+ (1,0) [0|3] "" XXX
|
||||
SG_ SET_ME_TMP_64 : 55|8@0+ (1,0) [0|63] "" XXX
|
||||
SG_ ZEROS_7 : 63|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ NEW_SIGNAL_1 : 64|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ MainMode_ACC : 66|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ ACCMode : 68|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ ZEROS_9 : 71|5@1+ (1,0) [0|15] "" XXX
|
||||
SG_ CRUISE_STANDSTILL : 76|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ ZEROS_5 : 77|11@1+ (1,0) [0|2047] "" XXX
|
||||
SG_ DISTANCE_SETTING : 88|3@1+ (1,0) [0|3] "" XXX
|
||||
SG_ ZEROS_8 : 95|5@0+ (1,0) [0|31] "" XXX
|
||||
SG_ VSetDis : 103|8@0+ (1,0) [0|255] "km/h or mph" XXX
|
||||
SG_ NEW_SIGNAL_6 : 104|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SET_ME_2 : 105|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ NEW_SIGNAL_3 : 109|2@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ZEROS_10 : 111|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ ZEROS_6 : 119|16@0+ (1,0) [0|65535] "" XXX
|
||||
SG_ aReqValue : 128|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" XXX
|
||||
SG_ aReqRaw : 140|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" XXX
|
||||
SG_ JerkUpperLimit : 158|7@0+ (0.1,0) [0|0] "" XXX
|
||||
SG_ JerkLowerLimit : 166|7@0+ (0.1,0) [0|12.7] "m/s^3" XXX
|
||||
SG_ NEW_SIGNAL_2 : 168|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ NEW_SIGNAL_8 : 170|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ OBJ_STATUS : 176|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ ZEROS_4 : 183|4@0+ (1,0) [0|63] "" XXX
|
||||
SG_ StopReq : 184|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ZEROS_3 : 191|7@0+ (1,0) [0|127] "" XXX
|
||||
SG_ NEW_SIGNAL_15 : 192|11@1+ (0.1,0) [0|204.7] "m" XXX
|
||||
SG_ ZEROS_2 : 207|5@0+ (1,0) [0|63] "" XXX
|
||||
SG_ ZEROS : 215|48@0+ (1,0) [0|281474976710655] "" XXX
|
||||
|
||||
BO_ 426 CRUISE_BUTTONS_ALT: 16 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ NEW_SIGNAL_1 : 24|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ SET_ME_1 : 28|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ DISTANCE_UNIT : 30|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_2 : 31|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ ADAPTIVE_CRUISE_MAIN_BTN : 34|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_3 : 35|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ CRUISE_BUTTONS : 36|3@1+ (1,0) [0|4] "" XXX
|
||||
SG_ LDA_BTN : 39|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_4 : 40|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ NORMAL_CRUISE_MAIN_BTN : 41|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_5 : 42|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SET_ME_2 : 44|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ NEW_SIGNAL_6 : 47|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ BYTE6 : 48|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE7 : 56|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE8 : 64|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE9 : 72|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE10 : 80|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE11 : 88|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE12 : 96|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE13 : 104|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE14 : 112|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE15 : 120|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 437 FR_CMR_03_50ms: 32 FR_CMR
|
||||
SG_ FR_CMR_Crc3Val : 0|16@1+ (1,0) [0|65535] "" RR_C_RDR,CGW
|
||||
SG_ FR_CMR_AlvCnt3Val : 16|8@1+ (1,0) [0|255] "" RR_C_RDR,CGW
|
||||
SG_ Info_LftLnQualSta : 24|3@1+ (1,0) [0|7] "" RR_C_RDR,CGW
|
||||
SG_ Info_LftLnDptSta : 27|2@1+ (1,0) [0|3] "" RR_C_RDR,CGW
|
||||
SG_ Info_LftLnPosVal : 29|14@1- (0.0039625,0) [-32.4608|32.4568375] "m" RR_C_RDR,CGW
|
||||
SG_ Info_LftLnHdingAnglVal : 43|10@1- (0.000976563,0) [-0.500000256|0.499023693] "rad" RR_C_RDR,CGW
|
||||
SG_ Info_LftLnCvtrVal : 64|16@1- (1e-06,0) [-0.032768|0.032767] "1/m" CGW
|
||||
SG_ Info_LftLnCrvtrDrvtvVal : 80|16@1- (4e-09,0) [-0.000131072|0.000131068] "1/m2" CGW
|
||||
SG_ Info_RtLnQualSta : 96|3@1+ (1,0) [0|7] "" RR_C_RDR,CGW
|
||||
SG_ Info_RtLnDptSta : 99|2@1+ (1,0) [0|3] "" RR_C_RDR,CGW
|
||||
SG_ Info_RtLnPosVal : 101|14@1- (0.0039625,0) [-32.4608|32.4568375] "m" RR_C_RDR,CGW
|
||||
SG_ Info_RtLnHdingAnglVal : 115|10@1- (0.000976563,0) [-0.500000256|0.499023693] "rad" RR_C_RDR,CGW
|
||||
SG_ Info_RtLnCvtrVal : 128|16@1- (1,0) [0|65535] "" CGW
|
||||
SG_ Info_RtLnCrvtrDrvtvVal : 144|16@1- (1,0) [0|65535] "" CGW
|
||||
SG_ ID_CIPV : 192|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ Relative_Velocity : 200|12@1+ (0.05,-100) [-100|104.75] "m/s" Dummy
|
||||
SG_ Longitudinal_Distance : 212|12@1+ (0.05,0) [0|204.75] "m" Dummy
|
||||
|
||||
BO_ 442 BLINDSPOTS_REAR_CORNERS: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LEFT_BLOCKED : 24|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LEFT_MB : 30|1@0+ (1,0) [0|3] "" XXX
|
||||
SG_ MORE_LEFT_PROB : 32|1@1+ (1,0) [0|3] "" XXX
|
||||
SG_ FL_INDICATOR : 46|6@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FR_INDICATOR : 54|6@0+ (1,0) [0|63] "" XXX
|
||||
SG_ RIGHT_BLOCKED : 64|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ COLLISION_AVOIDANCE_ACTIVE : 68|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_2 : 96|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FL_INDICATOR_ALT : 138|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FR_INDICATOR_ALT : 141|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 463 CRUISE_BUTTONS: 8 XXX
|
||||
SG_ _CHECKSUM : 0|8@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 12|4@1+ (1,0) [0|255] "" XXX
|
||||
SG_ CRUISE_BUTTONS : 16|3@1+ (1,0) [0|3] "" XXX
|
||||
SG_ ADAPTIVE_CRUISE_MAIN_BTN : 19|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ NORMAL_CRUISE_MAIN_BTN : 21|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ LDA_BTN : 23|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ RIGHT_PADDLE : 25|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ LEFT_PADDLE : 27|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ SET_ME_1 : 29|1@1+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 474 ADRV_0x1da: 32 ADRV
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SET_ME_22 : 31|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ SET_ME_41 : 47|8@0+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 480 LFAHDA_CLUSTER: 16 ADRV
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ NEW_SIGNAL_4 : 24|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_5 : 25|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_2 : 30|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ HDA_ICON : 31|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_1 : 32|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ LFA_ICON : 47|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ NEW_SIGNAL_3 : 49|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 485 BLINDSPOTS_FRONT_CORNER_1: 16 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ REVERSING : 24|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_5 : 31|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ NEW_SIGNAL_7 : 32|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ NEW_SIGNAL_8 : 47|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ NEW_SIGNAL_9 : 55|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ NEW_SIGNAL_4 : 80|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_3 : 88|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_2 : 96|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_1 : 108|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 490 ADRV_0x1ea: 32 ADRV
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SET_ME_1C : 31|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ NEW_SIGNAL_1 : 32|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ NEW_SIGNAL_2 : 47|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ NEW_SIGNAL_3 : 55|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ NEW_SIGNAL_4 : 64|6@1+ (1,0) [0|31] "" XXX
|
||||
SG_ NEW_SIGNAL_5 : 72|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ NEW_SIGNAL_6 : 75|5@1+ (1,0) [0|31] "" XXX
|
||||
SG_ NEW_SIGNAL_7 : 80|5@1+ (1,0) [0|31] "" XXX
|
||||
SG_ NEW_SIGNAL_8 : 88|7@1+ (1,0) [0|127] "" XXX
|
||||
SG_ NEW_SIGNAL_9 : 96|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SET_ME_FF : 120|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ NEW_SIGNAL_10 : 143|5@0+ (1,0) [0|31] "" XXX
|
||||
SG_ NEW_SIGNAL_11 : 144|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ NEW_SIGNAL_12 : 152|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ NEW_SIGNAL_13 : 160|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_14 : 163|5@1+ (1,0) [0|31] "" XXX
|
||||
SG_ NEW_SIGNAL_16 : 168|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ NEW_SIGNAL_15 : 175|4@0+ (1,0) [0|63] "" XXX
|
||||
SG_ NEW_SIGNAL_17 : 176|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ NEW_SIGNAL_18 : 184|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_19 : 208|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ NEW_SIGNAL_20 : 212|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SET_ME_TMP_F : 232|5@1+ (1,0) [0|31] "" XXX
|
||||
SG_ SET_ME_TMP_F_2 : 240|5@1+ (1,0) [0|31] "" XXX
|
||||
|
||||
BO_ 506 FR_CMR_02_100ms: 32 FR_CMR
|
||||
SG_ FR_CMR_Crc2Val : 0|16@1+ (1,0) [0|65535] "" CGW
|
||||
SG_ FR_CMR_AlvCnt2Val : 16|8@1+ (1,0) [0|255] "" CGW
|
||||
SG_ ISLW_OptUsmSta : 24|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ ISLW_SysSta : 26|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ ISLW_NoPassingInfoDis : 28|3@1+ (1,0) [0|7] "" CLU,CGW
|
||||
SG_ ISLW_OvrlpSignDis : 31|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ ISLW_SpdCluMainDis : 33|8@1+ (1,0) [0|255] "" CLU,CGW
|
||||
SG_ ISLW_SpdNaviMainDis : 41|8@1+ (1,0) [0|255] "" CGW
|
||||
SG_ ISLW_SubCondinfoSta1 : 49|4@1+ (1,0) [0|15] "" CLU,CGW
|
||||
SG_ ISLW_SubCondinfoSta2 : 53|4@1+ (1,0) [0|15] "" CLU,CGW
|
||||
SG_ ISLW_SpdCluSubMainDis : 64|8@1+ (1,0) [0|255] "" CLU
|
||||
SG_ ISLW_SpdCluDisSubCond1 : 72|8@1+ (1,0) [0|255] "" CLU,CGW
|
||||
SG_ ISLW_SpdCluDisSubCond2 : 80|8@1+ (1,0) [0|255] "" CLU,CGW
|
||||
SG_ ISLW_SpdNaviSubMainDis : 88|8@1+ (1,0) [0|255] "" CLU
|
||||
SG_ ISLW_SpdNaviDisSubCond1 : 96|8@1+ (1,0) [0|255] "" CLU,CGW
|
||||
SG_ ISLW_SpdNaviDisSubCond2 : 104|8@1+ (1,0) [0|255] "" CLU,CGW
|
||||
SG_ ISLA_SpdwOffst : 112|8@1+ (1,0) [0|255] "" CLU,CGW
|
||||
SG_ ISLA_SwIgnoreReq : 120|2@1+ (1,0) [0|3] "" CGW
|
||||
SG_ ISLA_SpdChgReq : 122|2@1+ (1,0) [0|3] "" CGW
|
||||
SG_ ISLA_SpdWrn : 124|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ ISLA_IcyWrn : 126|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ ISLA_SymFlashMod : 128|3@1+ (1,0) [0|7] "" CLU,CGW
|
||||
SG_ ISLA_Popup : 131|3@1+ (1,0) [0|7] "" CLU
|
||||
SG_ ISLA_OptUsmSta : 136|3@1+ (1,0) [0|7] "" CLU,CGW
|
||||
SG_ ISLA_OffstUsmSta : 139|3@1+ (1,0) [0|7] "" CLU,CGW
|
||||
SG_ ISLA_AutoUsmSta : 142|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ ISLA_Cntry : 144|4@1+ (1,0) [0|15] "" CLU,CGW
|
||||
SG_ ISLA_AddtnlSign : 149|5@1+ (1,0) [0|31] "" CLU,CGW
|
||||
SG_ ISLA_SchoolZone : 154|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
|
||||
BO_ 507 CAM_0x1fb: 32 CAMERA
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 512 ADRV_0x200: 8 ADRV
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SET_ME_E1 : 24|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SET_ME_3A : 32|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 593 RADAR_0x251: 16 FRONT_RADAR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 687 HOD_FD_01_100ms: 8 XXX
|
||||
SG_ HOD_Dir_Status : 18|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ NEW_SIGNAL_2 : 32|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ NEW_SIGNAL_3 : 40|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ HOD_Option : 48|2@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 698 FR_CMR_04_40ms: 32 FR_CMR
|
||||
SG_ FR_CMR_Crc4Val : 0|16@1+ (1,0) [0|65535] "" Dummy
|
||||
SG_ FR_CMR_AlvCnt4Val : 16|8@1+ (1,0) [0|255] "" Dummy
|
||||
SG_ IFSref_FR_CMR_Sta : 24|2@1+ (1,0) [0|3] "" CGW
|
||||
SG_ IFSref_VehNumVal : 26|4@1+ (1,0) [0|15] "" CGW
|
||||
SG_ IFSref_ILLAmbtSta : 30|2@1+ (0.1,0) [0|0.3] "" CGW
|
||||
SG_ IFSref_VehLftAngl1Val : 32|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehRtAngl1Val : 41|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehLftAngl2Val : 50|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehDst1Val : 59|4@1+ (1,0) [0|15] "" CGW
|
||||
SG_ IFSref_VehRtAngl2Val : 64|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehLftAngl3Val : 73|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehRtAngl3Val : 82|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehLftAngl4Val : 91|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehRtAngl4Val : 100|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehLftAngl5Val : 109|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehRtAngl5Val : 118|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehLftAngl6Val : 128|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehRtAngl6Val : 137|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehLftAngl7Val : 146|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehRtAngl7Val : 155|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehLftAngl8Val : 164|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehRtAngl8Val : 173|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehLftAngl9Val : 182|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehRtAngl9Val : 192|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehLftAngl10Val : 201|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehRtAngl10Val : 210|9@1+ (0.1,-25) [-25|26.1] "Deg" CGW
|
||||
SG_ IFSref_VehDst2Val : 219|4@1+ (1,0) [0|15] "" CGW
|
||||
SG_ IFSref_VehDst3Val : 223|4@1+ (1,0) [0|15] "" CGW
|
||||
SG_ IFSref_VehDst4Val : 227|4@1+ (1,0) [0|15] "" CGW
|
||||
SG_ IFSref_VehDst5Val : 231|4@1+ (1,0) [0|15] "" CGW
|
||||
SG_ IFSref_VehDst6Val : 235|4@1+ (1,0) [0|15] "" CGW
|
||||
SG_ IFSref_VehDst7Val : 239|4@1+ (1,0) [0|15] "" CGW
|
||||
SG_ IFSref_VehDst8Val : 243|4@1+ (1,0) [0|15] "" CGW
|
||||
SG_ IFSref_VehDst9Val : 247|4@1+ (1,0) [0|15] "" CGW
|
||||
SG_ IFSref_VehDst10Val : 251|4@1+ (1,0) [0|15] "" CGW
|
||||
|
||||
BO_ 736 MANUAL_SPEED_LIMIT_ASSIST: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ MSLA_STATUS : 26|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ MSLA_ENABLED : 38|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ MAX_SPEED : 55|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ MAX_SPEED_COPY : 144|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 837 ADRV_0x345: 8 ADRV
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SET_ME_15 : 24|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 866 CAM_0x362: 32 CAMERA
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE3 : 24|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE4 : 32|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE5 : 40|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE6 : 48|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LEFT_LANE_LINE : 56|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SET_ME_0 : 58|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ RIGHT_LANE_LINE : 60|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SET_ME_0_2 : 62|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ BYTE8 : 64|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE9 : 72|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE10 : 80|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE11 : 88|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE12 : 96|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE13 : 104|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE14 : 112|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE15 : 120|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE16 : 128|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE17 : 136|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE18 : 144|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE19 : 152|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE20 : 160|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE21 : 168|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE22 : 176|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE23 : 184|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE24 : 192|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE25 : 200|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE26 : 208|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE27 : 216|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE28 : 224|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE29 : 232|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE30 : 240|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ BYTE31 : 248|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 874 BLINDSPOTS_FRONT_CORNER_2: 16 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 961 BLINKER_STALKS: 8 XXX
|
||||
SG_ CHECKSUM_MAYBE : 7|8@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER_ALT : 15|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ HIGHBEAM_FORWARD : 18|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LIGHT_KNOB_POSITION : 21|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ HIGHBEAM_BACKWARD : 26|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LEFT_BLINKER : 30|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ RIGHT_BLINKER : 32|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 1041 DOORS_SEATBELTS: 8 XXX
|
||||
SG_ CHECKSUM_MAYBE : 7|8@0+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER_ALT : 15|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ DRIVER_DOOR : 24|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ PASSENGER_DOOR : 34|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ PASSENGER_SEATBELT : 36|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DRIVER_SEATBELT : 42|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DRIVER_REAR_DOOR : 52|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ PASSENGER_REAR_DOOR : 56|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 1043 BLINKERS: 8 XXX
|
||||
SG_ LEFT_STALK : 8|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ RIGHT_STALK : 10|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ COUNTER_ALT : 15|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ LEFT_LAMP : 20|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ RIGHT_LAMP : 22|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ LEFT_LAMP_ALT : 59|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ RIGHT_LAMP_ALT : 61|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ USE_ALT_LAMP : 62|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 1144 DRIVE_MODE: 8 XXX
|
||||
SG_ DRIVE_MODE : 0|16@1+ (1,-61611) [0|61611] "" XXX
|
||||
SG_ DRIVE_MODE2 : 28|3@1+ (1,0) [1|3] "" XXX
|
||||
|
||||
BO_ 1151 HVAC_TOUCH_BUTTONS: 8 XXX
|
||||
SG_ AUTO_BUTTON : 8|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ SYNC_BUTTON : 12|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FR_DEFROST_BUTTON : 20|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ RR_DEFROST_BUTTON : 22|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FAN_SPEED_UP_BUTTON : 24|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ FAN_SPEED_DOWN_BUTTON : 26|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ AIR_DIRECTION_BUTTON : 28|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ AC_BUTTON : 40|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DRIVER_ONLY_BUTTON : 44|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ RECIRC_BUTTON : 48|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ HEAT_BUTTON : 52|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 1240 CLUSTER_INFO: 8 XXX
|
||||
SG_ DISTANCE_UNIT : 0|1@1+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 1259 LOCAL_TIME2: 8 XXX
|
||||
SG_ HOURS : 15|5@0+ (1,0) [0|31] "" XXX
|
||||
SG_ MINUTES : 21|6@0+ (1,0) [0|63] "" XXX
|
||||
SG_ SECONDS : 24|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ NEW_SIGNAL_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 1264 LOCAL_TIME: 8 XXX
|
||||
SG_ HOURS : 12|5@0+ (1,0) [0|31] "" XXX
|
||||
SG_ MINUTES : 21|6@0+ (1,0) [0|63] "" XXX
|
||||
SG_ SECONDS : 31|8@0+ (1,0) [0|59] "" XXX
|
||||
|
||||
CM_ SG_ 96 BRAKE_PRESSURE "User applied brake pedal pressure. Ramps from computer applied pressure on falling edge of cruise. Cruise cancels if !=0";
|
||||
CM_ SG_ 101 BRAKE_POSITION "User applied brake pedal position, max is ~700. Signed on some vehicles";
|
||||
CM_ SG_ 352 SET_ME_9 "has something to do with AEB settings";
|
||||
CM_ SG_ 373 ACCEnable "Likely a copy of CAN's TCS13->ACCEnable";
|
||||
CM_ SG_ 373 DriverBraking "Likely derived from BRAKE->BRAKE_POSITION";
|
||||
CM_ SG_ 373 DriverBrakingLowSens "Higher threshold version of DriverBraking";
|
||||
CM_ SG_ 373 PROBABLY_EQUIP "aeb equip?";
|
||||
CM_ SG_ 416 VSetDis "set speed in display units";
|
||||
CM_ SG_ 480 NEW_SIGNAL_5 "todo: figure out why always set to 1";
|
||||
CM_ SG_ 687 HOD_Dir_Status "This signal indicates the status of hands on/off";
|
||||
CM_ SG_ 736 MAX_SPEED "Display units. Restricts car from driving above this speed unless accelerator pedal is depressed beyond pressure point";
|
||||
CM_ BO_ 866 "Contains signals with detailed lane line information. Used by ADAS ECU on HDA 2 vehicles to operate LFA. Used on cars that use message 272.";
|
||||
CM_ SG_ 866 LEFT_LANE_LINE "Left lane line confidence";
|
||||
CM_ SG_ 866 RIGHT_LANE_LINE "Right lane line confidence";
|
||||
CM_ SG_ 961 COUNTER_ALT "only increments on change";
|
||||
CM_ SG_ 1041 COUNTER_ALT "only increments on change";
|
||||
CM_ BO_ 1043 "Lamp signals do not seem universal on cars that use LKAS_ALT, but stalk signals do.";
|
||||
CM_ SG_ 1043 COUNTER_ALT "only increments on change";
|
||||
CM_ SG_ 1043 USE_ALT_LAMP "likely 1 on cars that use alt lamp signals";
|
||||
VAL_ 53 GEAR 0 "P" 5 "D" 6 "N" 7 "R";
|
||||
VAL_ 64 GEAR 0 "P" 5 "D" 6 "N" 7 "R";
|
||||
VAL_ 69 GEAR 0 "P" 5 "D" 6 "N" 7 "R";
|
||||
VAL_ 96 TRACTION_AND_STABILITY_CONTROL 0 "On" 5 "Limited" 1 "Off";
|
||||
VAL_ 112 GEAR 0 "P" 5 "D" 6 "N" 7 "R";
|
||||
VAL_ 234 LKA_FAULT 0 "ok" 1 "lka fault";
|
||||
VAL_ 282 HBA_SysOptSta 0 "None HBA Option (Default)" 1 "HBA Option" 2 "Reserved" 3 "Error indicator";
|
||||
VAL_ 282 HBA_SysSta 0 "HBA Disable" 1 "HBA Enable & High Beam Off" 2 "HBA Enable & High Beam On" 3 "Reserved" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "System Fail";
|
||||
VAL_ 282 HBA_IndLmpReq 0 "HBA Indicator Lamp Off" 1 "HBA Indicator Lamp On" 2 "Reserved" 3 "Error indicator";
|
||||
VAL_ 282 FCA_Equip_MFC 0 "No Coding" 1 "Sensor Fusion FCA" 2 "Camera only FCA" 3 "No FCA Option" 4 "ADAS_DRV Option" 5 "Reserved" 6 "Not used" 7 "Error indicator";
|
||||
VAL_ 282 HBA_OptUsmSta 0 "None HBA Option (Default)" 1 "HBA Function Off" 2 "HBA Function On" 3 "Invalid (Fail)";
|
||||
VAL_ 282 DAW_LVDA_PUDis 0 "Default" 1 "Display “Leading vehicle departure alert”" 2 "Reserved" 3 "Error indicator";
|
||||
VAL_ 282 DAW_LVDA_OptUsmSta 0 "No Option (default)" 1 "Off" 2 "On" 3 "Error Indicator";
|
||||
VAL_ 282 DAW_OptUsmSta 0 "None DAW Option (Default)" 1 "System Off" 2 "System On" 3 "Reserved" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Invalid (Gray)";
|
||||
VAL_ 282 DAW_SysSta 0 "System Off" 1 "Attention Level 1" 2 "Attention Level 2" 3 "Attention Level 3" 4 "Attention Level 4" 5 "Attention Level 5" 6 "Reserved" 7 "Reserved" 8 "Reserved" 9 "Reserved" 10 "Reserved" 11 "Reserved" 12 "Reserved" 13 "Reserved" 14 "System Standby" 15 "System Fail";
|
||||
VAL_ 282 DAW_WrnMsgSta 0 "No Warning" 1 "Rest Recommend Warning" 2 "Hands-Off TMS call request" 3 "Reserved" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Error indicator";
|
||||
VAL_ 282 DAW_TimeRstReq 0 "No signal" 1 "Time reset" 2 "Reserved" 3 "Error indicator";
|
||||
VAL_ 282 DAW_SnstvtyModRetVal 0 "Default" 1 "Late" 2 "Normal" 3 "Reserved" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Invalid";
|
||||
VAL_ 304 PARK_BUTTON 1 "Pressed" 2 "Not Pressed";
|
||||
VAL_ 304 KNOB_POSITION 1 "R" 2 "N (on R side)" 3 "Centered" 4 "N (on D side)" 5 "D";
|
||||
VAL_ 304 GEAR 1 "P" 2 "R" 3 "N" 4 "D";
|
||||
VAL_ 352 AEB_SETTING 1 "off" 2 "warning only" 3 "active assist";
|
||||
VAL_ 353 FCA_ICON 0 "HIDDEN" 1 "ORANGE" 2 "RED";
|
||||
VAL_ 353 FCA_ALT_ICON 0 "HIDDEN" 1 "ORANGE" 3 "RED";
|
||||
VAL_ 353 LKA_ICON 0 "HIDDEN" 1 "ORANGE" 3 "GRAY" 4 "GREEN";
|
||||
VAL_ 353 HBA_ICON 0 "HIDDEN" 1 "GRAY" 2 "GREEN";
|
||||
VAL_ 353 FCA_IMAGE 0 "HIDDEN" 2 "VISIBLE";
|
||||
VAL_ 353 BCA_LEFT 0 "HIDDEN" 1 "VISIBLE" 2 "VISIBLE+ICON";
|
||||
VAL_ 353 BCA_RIGHT 0 "HIDDEN" 1 "VISIBLE" 2 "VISIBLE+ICON";
|
||||
VAL_ 353 LCA_LEFT_ARROW 0 "HIDDEN" 1 "VISIBLE";
|
||||
VAL_ 353 LCA_RIGHT_ARROW 0 "HIDDEN" 1 "VISIBLE";
|
||||
VAL_ 353 CENTERLINE 0 "HIDDEN" 1 "GREEN";
|
||||
VAL_ 353 TARGET 0 "HIDDEN" 1 "BLUE" 3 "WHITE";
|
||||
VAL_ 353 LANELINE_LEFT 0 "GRAY" 1 "HIDDEN" 2 "WHITE" 4 "ORANGE" 6 "GREEN";
|
||||
VAL_ 353 LANELINE_RIGHT 0 "GRAY" 1 "HIDDEN" 2 "WHITE" 4 "ORANGE" 6 "GREEN";
|
||||
VAL_ 353 LANE_HIGHLIGHT 0 "HIDDEN" 1 "GREEN" 2 "WHITE" 3 "BLUE" 4 "ORANGE" 5 "RED";
|
||||
VAL_ 353 LANE_LEFT 0 "HIDDEN" 1 "GREEN";
|
||||
VAL_ 353 LANE_RIGHT 0 "HIDDEN" 1 "GREEN";
|
||||
VAL_ 353 LANE_ZOOM 0 "ZOOM" 1 "HIDDEN";
|
||||
VAL_ 353 ALERTS_1 0 "HIDDEN" 1 "WARNING_ONLY_CAR_CENTER" 2 "WARNING_ONLY_CAR_LEFT" 3 "WARNING_ONLY_CAR_RIGHT" 4 "WARNING_ONLY_LEFT" 5 "WARNING_ONLY_RIGHT" 11 "EMERGENCY_BRAKING_CAR_CENTER" 12 "EMERGENCY_BRAKING_CAR_LEFT" 13 "EMERGENCY_BRAKING_CAR_RIGHT" 14 "EMERGENCY_BRAKING_LEFT" 15 "EMERGENCY_BRAKING_RIGHT" 21 "EMERGENCY_STEERING_CAR_LEFT" 22 "EMERGENCY_STEERING_CAR_RIGHT" 23 "EMERGENCY_STEERING_CAR_LEFT_AWAY" 24 "EMERGENCY_STEERING_CAR_RIGHT_AWAY" 25 "EMERGENCY_STEERING_REAR_LEFT" 26 "EMERGENCY_STEERING_REAR_RIGHT" 33 "DRIVE_CAREFULLY";
|
||||
VAL_ 353 ALERTS_2 0 "HIDDEN" 1 "KEEP_HANDS_ON_STEERING_WHEEL" 2 "KEEP_HANDS_ON_STEERING_WHEEL_RED" 3 "LANE_FOLLOWING_ASSIST_DEACTIVATED" 4 "HIGHWAY_DRIVING_ASSIST_DEACTIVATED" 5 "CONSIDER_TAKING_A_BREAK" 6 "PRESS_OK_BUTTON_TO_ENABLE_LANE_CHANGE_ASSIST" 7 "COLLISION_RISK_VEHICLE_TAKING_EMERGENCY_CONTROL" 8 "TAKE_CONTROL_OF_THE_VEHICLE_IMMEDIATELY_VEHICLE_IS_STOPPING" 9 "TAKE_CONTROL_OF_THE_VEHICLE_IMMEDIATELY" 11 "HIGHWAY_DRIVING_PILOT_SYSTEM_DEACTIVATED_AUDIBLE" 12 "KEEP_YOUR_EYES_ON_THE_ROAD" 13 "HIGHWAY_DRIVING_PILOT_CONDITIONS_NOT_MET_AUDIBLE" 14 "COLLISION_RISK_VEHICLE_TAKING_EMERGENCY_CONTROL" 15 "SET_THE_WIPER_AND_LIGHT_CONTROLS_TO_AUTO" 16 "BE_PREPARED_TO_TAKE_CONTROL_OF_THE_VEHICLE_AT_ANY_TIME" 21 "TAKE_CONTROL_OF_THE_VEHICLE_IMMEDIATELY_VEHICLE_IS_STOPPING" 10 "TAKE_CONTROL_OF_THE_VEHICLE_IMMEDIATELY";
|
||||
VAL_ 353 ALERTS_3 1 "AUTOMATICALLY_ADJUSTING_TO_THE_POSTED_SPEED_LIMIT" 2 "SET_SPEED_CHANGED" 3 "AUTOMATICALLY_ADJUSTING_TO_THE_POSTED_SPEED_LIMIT" 4 "SET_SPEED_CHANGED" 7 "DISTANCE_1" 8 "DISTANCE_2" 9 "DISTANCE_3" 10 "DISTANCE_4" 17 "DRIVE_CAREFULLY" 18 "CHECK_SURROUNDINGS" 19 "CONDITIONS_NOT_MET" 20 "LANES_NOT_DETECTED" 21 "CURVE_TOO_SHARP" 22 "LANE_TOO_NARROW" 23 "ROAD_TYPE_NOT_SUPPORTED" 24 "UNAVAILABLE_WITH_HAZARD_LIGHTS_ON" 25 "VEHICLE_SPEED_IS_TOO_LOW" 26 "KEEP_HANDS_ON_STEERING_WHEEL" 27 "LANE_TYPE_NOT_SUPPORTED" 28 "LANE_ASSIST_CANCELED_STEERING_INPUT_DETECTED" 0 "HIDDEN";
|
||||
VAL_ 353 ALERTS_4 0 "HIDDEN" 1 "TAKE_FOOT_OFF_THE_ACCELERATOR_PEDAL" 2 "TAKE_FOOT_OFF_THE_BRAKE_PEDAL" 3 "UNAVAILABLE_WHILE_HIGHWAY_DRIVING_PILOT_SYSTEM_IS_ACTIVE" 4 "TO_EXIT_HDP_GRASP_THE_STEERING_WHEEL_THEN_PRESS_AND_HOLD_THE_HDP_BUTTON" 5 "ACCELERATOR_PEDAL_OPERATION_LIMITED_FOR_SAFETY" 6 "TURN_OFF_HAZARD_WARNING_LIGHTS_AND_TURN_SIGNAL" 7 "KEEP_THE_DRIVERS_SEAT_IN_A_SAFE_DRIVING_POSITION" 16 "SET_SPEED_CHANGED" 17 "ACTIVATING_WINDSHIELD_DEFOG_TO_MAINTAIN_THE_DRIVERS_VIEW" 18 "SET_THE_WIPER_AND_LIGHT_CONTROLS_TO_AUTO" 19 "VEHICLE_SPEED_REDUCED_FOR_SAFETY_MERGING_LANES_AHEAD" 20 "SPEED_REDUCED_FOR_SAFETY_CONSTRUCTION_ZONE_DETECTED" 21 "VEHICLE_SPEED_LIMITED_SENSOR_DETECTION_RANGE_LIMITED" 22 "PREPARE_TO_TAKE_CONTROL_UNSUPPORTED_ROAD_TYPE_AHEAD" 23 "PREPARE_TO_TAKE_CONTROL_ENTRANCE_AND_EXIT_RAMPS_AHEAD" 24 "PREPARE_TO_TAKE_CONTROL_TOLLGATE_AHEAD" 25 "PREPARE_TO_TAKE_CONTROL_ROAD_EVENT_AHEAD" 26 "CLEARING_PATH_FOR_EMERGENCY_VEHICLE" 27 "VEHICLE_IS_TOO_SLOW_COMPARED_TO_TRAFFIC_FLOW" 28 "AFTER_SUNSET_HDP_IS_AVAILABLE_IN_AN_INSIDE_LANE_BEHIND_A_LEADING_VEHICLE" 29 "VEHICLE_SPEED_LIMITED_MERGING_LANES_AHEAD" 30 "VEHICLE_SPEED_LIMITED_CONSTRUCTION_ZONE_DETECTED" 31 "VEHICLE_SPEED_TEMPORARILY_LIMITED_FOR_SAFETY" 32 "PRESS_AND_HOLD_THE_BUTTON_TO_ACTIVATE_HIGHWAY_DRIVING_PILOT" 40 "HIGHWAY_DRIVING_PILOT_SYSTEM_IS_AVAILABLE" 64 "RESTART_VEHICLE_AFTER_EMERGENCY_STOP" 65 "CONNECTED_SERVICES_UNAVAILABLE" 66 "AVAILABLE_AFTER_VEHICLE_SOFTWARE_IS_UPDATED" 67 "ROAD_TYPE_NOT_SUPPORTED" 68 "ONLY_AVAILABLE_WHILE_DRIVING_ON_HIGHWAY_LANES" 69 "UNAVAILABLE_WHILE_OTHER_WARNINGS_ARE_ACTIVE" 70 "CANNOT_ACTIVATE_AT_ENTRANCE_EXIT_RAMPS" 71 "LANE_UNSUPPORTED" 72 "NOT_AVAILABLE_IN_THIS_COUNTRY" 79 "CHECKING_THE_DETECTION_RANGE_OF_THE_SENSOR" 80 "SHIFT_TO_D" 81 "ENGINE_STOPPED_BY_AUTO_STOP" 82 "INCREASE_DISTANCE_FROM_VEHICLE_AHEAD" 83 "VEHICLE_SPEED_IS_TOO_HIGH" 84 "CENTER_VEHICLE_IN_THE_LANE" 85 "PARKING_ASSIST_IS_ACTIVE" 86 "ESC_ACTIVIATION_REQUIRED" 87 "UNFOLD_SIDE_VIEW_MIRRORS" 88 "UNAVAILABLE_IN_THE_OUTER_LANE_AFTER_SUNSET" 89 "VEHICLE_SPEED_LIMITED_AFTER_SUNSET_FOR_SAFETY" 90 "LEADING_VEHICLE_NOT_DETECTED" 104 "AGGRESSIVE_BRAKING_OR_STEERING_DETECTED" 110 "SENSOR_AUTO_CALIBRATION_IN_PROGRESS_THIS_MAY_TAKE_SEVERAL_MINUTES" 111 "HIGHWAY_DRIVING_PILOT_WILL_BE_AVAILABLE_SHORTLY" 112 "IF_STEERING_WHEEL_IS_USED_HDP_WILL_BE_DEACTIVATED" 120 "IMPACT_DETECTED" 128 "UNSUITABLE_USE_OF_ACCELERATOR_PEDAL_DETECTED" 129 "GEAR_SHIFTER_USE_DETECTED" 130 "UNSUITABLE_BRAKE_PEDAL_USE_DETECTED" 131 "VEHICLE_START_BUTTON_PRESSED" 132 "VEHICLE_HAS_BEEN_STOPPED_FOR_TOO_LONG" 141 "TRAFFIC_CONGESTION_HAS_CLEARED" 142 "ENTRANCE_AND_EXIT_RAMPS_AHEAD" 143 "UNSUPPORTED_LANE_AHEAD" 144 "UNSUPPORTED_ROAD_TYPE_AHEAD" 145 "LANE_DEPARTURE_DETECTED" 146 "MAXIMUM_SPEED_EXCEEDED" 147 "HIGHWAY_DRIVING_PILOT_LIMITED_ABNORMAL_VEHICLE_CONTROLLER_STATUS" 148 "WIPER_LIGHT_CONTROL_SETTINGS_ARE_UNSUITABLE_FOR_USE_WITH_HDP" 149 "WINDSHIELD_DEFOG_SYSTEM_STATUS_IS_UNSUITABLE_FOR_USE_WITH_HDP" 150 "HAZARD_WARNING_LIGHTS_OR_TURN_SIGNAL_OPERATION_DETECTED" 151 "PERFORMING_EVASIVE_STEERING_OBSTACLES_DETECTED_AHEAD" 152 "HIGHWAY_DRIVING_PILOT_LIMITED_SENSOR_DETECTION_RANGE_LIMITED" 160 "CHECK_HIGHWAY_DRIVING_PILOT_SYSTEM" 161 "SAFETY_FUNCTION_ACTIVATED" 176 "CAMERA_OBSCURED" 177 "RADAR_BLOCKED" 178 "LIDAR_BLOCKED" 179 "AIRBAG_WARNING_LIGHT_IS_ON" 180 "ATTACHED_TRAILED_DETECTED" 181 "HIGH_OUTSIDE_TEMPERATURE" 182 "LOW_OUTSIDE_TEMPERATURE" 190 "UNAVAILABLE_DUE_TO_THE_ROAD_EVENT_INFORMATION_RECEIVED" 191 "UNAVAILABLE_NEAR_TOLLGATES" 192 "DRIVERS_SEAT_IS_NOT_IN_A_SAFE_DRIVING_POSITION" 193 "VEHICLE_DRIVING_THE_WRONG_WAY_DETECTED_AHEAD" 194 "EMERGENCY_VEHICLE_DETECTED" 195 "OBSTACLE_DETECTED_AHEAD" 196 "SENSOR_BLOCKED_DUE_TO_RAIN_SNOW_OR_ROAD_DEBRIS" 197 "SLIPPERY_ROAD_SURFACE_DETECTED" 198 "CONSTRUCTION_ZONE_DETECTED_AHEAD" 199 "PEDESTRIAN_DETECTED_AHEAD" 200 "UNSUITABLE_DRIVERS_SEAT_POSITION_DETECTED" 201 "FOLDED_SIDE_VIEW_MIRRORS_DETECTED" 208 "VEHICLE_POSITION_NOT_DETECTED" 209 "LANE_NOT_DETECTED" 210 "DRIVER_NOT_DETECTED" 211 "KEEP_YOUR_EYES_ON_THE_ROAD" 212 "LEADING_VEHICLE_REQUIRED_AFTER_SUNSET" 213 "TBD" 240 "LOW_FUEL" 241 "LOW_TIRE_PRESSURE" 242 "DOOR_OPEN" 243 "TRUNK_OPEN" 244 "HOOD_OPEN" 245 "SEAT_BELT_NOT_FASTENED" 246 "PARKING_BRAKE_ACTIVATED" 247 "LOW_EV_BATTERY" 248 "HDP_DEACTIVATION_DELAYED_RISK_OF_COLLISION_DETECTED" 249 "LIFTGATE_OPENED";
|
||||
VAL_ 353 ALERTS_5 0 "HIDDEN" 1 "DRIVERS_GRASP_NOT_DETECTED_DRIVING_SPEED_WILL_BE_LIMITED" 2 "WATCH_FOR_SURROUNDING_VEHICLES" 3 "SMART_CRUISE_CONTROL_DEACTIVATED" 4 "SMART_CRUISE_CONTROL_CONDITIONS_NOT_MET" 5 "USE_SWITCH_OR_PEDAL_TO_ACCELERATE" 6 "DRIVER_ASSISTNCE_SYSTEM_LIMITED_TRAILER_ATTACHED" 7 "DRIVER_ASSISTNCE_SYSTEM_LIMITED_DRIVER_FULL_FACE_NOT_VISIBLE" 11 "LEADING_VEHICLE_IS_DRIVING_AWAY" 12 "STOP_VEHICLE_THEN_TRY_AGAIN" 19 "ACTIVATING_HIGHWAY_DRIVING_PILOT_SYSTEM" 20 "CONTINUING_USE_OF_HIGHWAY_DRIVING_PILOT_WILL_RESULT_IN_DEVIATION_FROM_THE_NAVIGATION_ROUTE" 21 "HIGHWAY_DRIVING_PILOT_SYSTEM_DEACTIVATED_SILENT" 22 "HIGHWAY_DRIVING_PILOT_SYSTEM_NOT_APPLIED" 23 "HIGHWAY_DRIVING_PILOT_CONDITIONS_NOT_MET_SILENT";
|
||||
VAL_ 353 MUTE 0 "NONE" 1 "MUTED";
|
||||
VAL_ 353 SOUNDS_1 0 "NONE" 3 "FAST BEEP" 6 "CONSTANT BEEP";
|
||||
VAL_ 353 SOUNDS_2 0 "NONE" 2 "SINGLE CHIME" 3 "CONSTANT CHIME" 6 "FAST BEEP";
|
||||
VAL_ 353 SOUNDS_3 0 "NONE" 3 "SOFT CHIME" 5 "SINGLE CHIME";
|
||||
VAL_ 353 SOUNDS_4 0 "NONE" 2 "DOUBLE CHIME";
|
||||
VAL_ 353 SETSPEED_HUD 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 3 "WHITE" 5 "CYAN";
|
||||
VAL_ 353 DISTANCE_LEAD 0 "HIDDEN" 1 "GRAY" 2 "WHITE";
|
||||
VAL_ 353 DISTANCE_CAR 0 "HIDDEN" 1 "GRAY" 2 "WHITE" 3 "CYAN A";
|
||||
VAL_ 353 DISTANCE_SPACING 0 "HIDDEN" 1 "BLUE" 3 "WHITE" 5 "CYAN";
|
||||
VAL_ 353 SETSPEED 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 3 "WHITE" 6 "CYAN";
|
||||
VAL_ 353 HDA_ICON 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 3 "WHITE" 5 "CYAN HDP";
|
||||
VAL_ 353 SLA_ICON 0 "HIDDEN" 1 "WHITE UP" 2 "WHITE DOWN" 3 "GREEN UP" 4 "GREEN DOWN";
|
||||
VAL_ 353 NAV_ICON 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 4 "WHITE";
|
||||
VAL_ 353 LFA_ICON 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 3 "WHITE" 5 "CYAN";
|
||||
VAL_ 353 LCA_LEFT_ICON 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 4 "WHITE";
|
||||
VAL_ 353 LCA_RIGHT_ICON 0 "HIDDEN" 1 "GRAY" 2 "GREEN" 4 "WHITE";
|
||||
VAL_ 353 BACKGROUND 0 "HIDDEN" 1 "BLUE" 3 "ORANGE" 4 "FLASHING ORANGE" 6 "FLASHING RED" 7 "GRAY";
|
||||
VAL_ 353 DAW_ICON 0 "HIDDEN" 1 "ORANGE";
|
||||
VAL_ 353 CAR_CIRCLE 0 "HIDDEN" 1 "GRAY" 2 "CYAN";
|
||||
VAL_ 354 COUNTRY 0 "HIDDEN" 1 "SOUTH_KOREA" 4 "INTL" 5 "JAPAN" 6 "CANADA" 7 "USA" 8 "CHINA" 9 "INTL";
|
||||
VAL_ 354 SPEEDLIMIT_FLASH 0 "HIDDEN" 1 "ERROR" 2 "NORMAL" 4 "RED";
|
||||
VAL_ 354 SIGNS 0 "HIDDEN" 1 "PEDESTRIAN_CROSSING" 2 "SCHOOL_CROSSWALK" 8 "STOP" 9 "YIELD" 16 "DO_NOT_PASS" 19 "DO_NOT_ENTER" 24 "ROUNDABOUT" 26 "RIGHT_CURVE_AHEAD" 27 "LEFT_CURVE_AHEAD" 28 "SLIGHT_RIGHT_CURVE_AHEAD" 29 "SLIGHT_LEFT_CURVE_AHEAD";
|
||||
VAL_ 354 SPEEDLIMIT_WEATHER 0 "HIDDEN" 1 "RAIN" 2 "SNOW" 3 "RAIN+SNOW" 4 "TRAILER";
|
||||
VAL_ 354 VIBRATE 0 "NONE" 1 "VIBRATE";
|
||||
VAL_ 354 LEAD 0 "HIDDEN" 1 "GRAY BOX" 2 "WHITE BOX" 3 "GRAY CAR" 4 "WHITE CAR" 5 "GRAY TRUCK" 6 "WHITE TRUCK" 7 "GRAY PERSON" 8 "WHITE PERSON" 9 "GRAY BICYCLE" 10 "WHITE BICYCLE" 11 "GRAY MOTORCYCLE" 12 "WHITE MOTORCYCLE" 13 "DARK CONE" 14 "ORANGE CONE";
|
||||
VAL_ 354 LEAD_ALT 0 "HIDDEN" 1 "GRAY BOX" 2 "WHITE BOX" 3 "DIM CONE" 4 "ORANGE CONE";
|
||||
VAL_ 354 LEAD_LEFT 0 "HIDDEN" 1 "GRAY BOX" 2 "WHITE BOX" 3 "GRAY CAR" 4 "WHITE CAR" 5 "GRAY TRUCK" 6 "WHITE TRUCK" 7 "GRAY PERSON" 8 "WHITE PERSON" 9 "GRAY BICYCLE" 10 "WHITE BICYCLE" 11 "GRAY MOTORCYCLE" 12 "WHITE MOTORCYCLE" 13 "DARK CONE" 14 "ORANGE CONE";
|
||||
VAL_ 354 LEAD_RIGHT 0 "HIDDEN" 1 "GRAY BOX" 2 "WHITE BOX" 3 "GRAY CAR" 4 "WHITE CAR" 5 "GRAY TRUCK" 6 "WHITE TRUCK" 7 "GRAY PERSON" 8 "WHITE PERSON" 9 "GRAY BICYCLE" 10 "WHITE BICYCLE" 11 "GRAY MOTORCYCLE" 12 "WHITE MOTORCYCLE" 13 "DARK CONE" 14 "ORANGE CONE";
|
||||
VAL_ 354 FAULT_FSS 0 "HIDDEN" 1 "CHECK_FORWARD_SAFETY_SYSTEM" 2 "FORWARD_SAFETY_SYSTEM_LIMITED_CAMERA_OBSCURED" 3 "FORWARD_SAFETY_SYSTEM_LIMITED_RADAR_BLOCKED";
|
||||
VAL_ 354 FAULT_FCA 0 "HIDDEN" 1 "CHECK_FORWARD_SIDE_SAFETY_SYSTEM" 2 "FORWARD_SIDE_SAFETY_SYSTEM_LIMITED_CAMERA_OBSCURED" 3 "FORWARD_SIDE_SAFETY_SYSTEM_LIMITED_RADAR_BLOCKED";
|
||||
VAL_ 354 FAULT_LSS 0 "HIDDEN" 1 "CHECK_LANE_SAFETY_SYSTEM" 2 "LANE_SAFETY_SYSTEM_DISABLED_CAMERA_OBSCURED";
|
||||
VAL_ 354 FAULT_SLA 0 "HIDDEN" 1 "CHECK_SPEED_LIMIT_SYSTEM" 2 "SPEED_LIMIT_SYSTEM_DISABLED_CAMERA_OBSCURED";
|
||||
VAL_ 354 FAULT_DAW 0 "HIDDEN" 1 "CHECK_INATTENTIVE_DRIVING_WARNING_SYSTEM" 2 "INATTENTIVE_DRIVING_WARNING_SYSTEM_DISABLED_CAMERA_OBSCURED";
|
||||
VAL_ 354 FAULT_HBA 0 "HIDDEN" 1 "CHECK_HIGH_BEAM_ASSIST_SYSTEM";
|
||||
VAL_ 354 FAULT_SCC 0 "HIDDEN" 1 "CHECK_SMART_CRUISE_CONTROL_SYSTEM" 2 "SMART_CRUISE_CONTROL_DISABLED_RADAR_BLOCKED";
|
||||
VAL_ 354 FAULT_LFA 0 "HIDDEN" 1 "CHECK_LANE_FOLLOWING_SYSTEM_ASSIST_SYSTEM";
|
||||
VAL_ 354 FAULT_HDA 0 "HIDDEN" 1 "CHECK_HIGHWAY_DRIVING_ASSIST_SYSTEM";
|
||||
VAL_ 354 FAULT_LCA 0 "HIDDEN" 1 "CHECK_LANE_CHANGE_ASSIST_FUNCTION" 2 "LANE_CHANGE_ASSIST_FUNCTION_DISABLED_CAMERA_OBSCURED" 3 "LANE_CHANGE_ASSIST_FUNCTION_DISABLED_RADAR_BLOCKED";
|
||||
VAL_ 354 FAULT_HDP 0 "HIDDEN" 1 "CHECK_HIGHWAY_DRIVING_PILOT_SYSTEM" 2 "HIGHWAY_DRIVING_PILOT_DISABLED_CAMERA_OBSCURED" 3 "HIGHWAY_DRIVING_PILOT_DISABLED_RADAR_BLOCKED" 4 "HIGHWAY_DRIVING_PILOT_DISABLED_LIDAR_BLOCKED";
|
||||
VAL_ 354 FAULT_DAS 0 "HIDDEN" 1 "CHECK_DRIVER_ASSISTANCE_SYSTEM" 2 "DRIVER_ASSISTANCE_SYSTEM_LIMITED_CAMERA_OBSCURED" 3 "DRIVER_ASSISTANCE_SYSTEM_LIMITED_RADAR_BLOCKED" 4 "DRIVER_ASSISTANCE_SYSTEM_LIMITED_CAMERA_OBSCURED_AND_RADAR_BLOCKED";
|
||||
VAL_ 354 FAULT_ESS 0 "HIDDEN" 1 "CHECK_EMERGENCY_STOPPING_FUNCTION" 2 "EMERGENCY_STOPPING_FUNCTION_DISABLED_CAMERA_OBSCURED" 3 "EMERGENCY_STOPPING_FUNCTION_DISABLED_RADAR_BLOCKED";
|
||||
VAL_ 362 BLINKER_CONTROL 1 "hazards" 2 "hazards button backlight" 3 "left blinkers" 4 "right blinkers";
|
||||
VAL_ 373 ACCEnable 0 "SCC ready" 1 "SCC temp fault" 2 "SCC permanent fault" 3 "SCC permanent fault, communication issue";
|
||||
VAL_ 416 ACCMode 0 "off" 1 "enabled" 2 "driver_override" 3 "off_maybe_fault" 4 "cancelled";
|
||||
VAL_ 426 CRUISE_BUTTONS 0 "none" 1 "res_accel" 2 "set_decel" 3 "gap_distance" 4 "pause_resume";
|
||||
VAL_ 437 Info_RtLnCvtrVal 65534 "Reserved" 65535 "Error indicator";
|
||||
VAL_ 463 CRUISE_BUTTONS 0 "none" 1 "res_accel" 2 "set_decel" 3 "gap_distance" 4 "pause_resume";
|
||||
VAL_ 463 RIGHT_PADDLE 0 "Not Pulled" 1 "Pulled";
|
||||
VAL_ 463 LEFT_PADDLE 0 "Not Pulled" 1 "Pulled";
|
||||
VAL_ 506 ISLW_OptUsmSta 0 "None ISLW Option (Default)" 1 "System Disabled by USM" 2 "System Enable by USM" 3 "Invalid";
|
||||
VAL_ 506 ISLW_SysSta 0 "Normal (Default)" 1 "System Fail" 2 "ISLW Temporary Unavailable" 3 "Reserved";
|
||||
VAL_ 506 ISLW_NoPassingInfoDis 0 "None Display (Default)" 1 "LHD No Passing Zone Display" 2 "RHD No Passing Zone Display" 3 "Reserved" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Invalid";
|
||||
VAL_ 506 ISLW_OvrlpSignDis 0 "None (Default)" 1 "Overlap Sign" 2 "Reserved" 3 "Error indicator";
|
||||
VAL_ 506 ISLW_SpdCluMainDis 0 "No Recognition (Default)" 253 "Unlimited Speed" 254 "Reserved" 255 "Invalid";
|
||||
VAL_ 506 ISLW_SpdNaviMainDis 0 "No Recognition (Default)" 253 "Unlimited Speed" 254 "Reserved" 255 "Invalid";
|
||||
VAL_ 506 ISLW_SubCondinfoSta1 0 "None (Default)" 1 "Rain" 2 "Snow" 3 "Snow&Rain" 4 "Trailer" 5 "Reserved" 6 "Reserved" 7 "Reserved" 8 "Reserved" 9 "Reserved" 10 "Reserved" 11 "Reserved" 12 "Reserved" 13 "Reserved" 14 "Generic" 15 "Invalid";
|
||||
VAL_ 506 ISLW_SubCondinfoSta2 0 "None (Default)" 1 "Rain" 2 "Snow" 3 "Snow&Rain" 4 "Trailer" 5 "Reserved" 6 "Reserved" 7 "Reserved" 8 "Reserved" 9 "Reserved" 10 "Reserved" 11 "Reserved" 12 "Reserved" 13 "Reserved" 14 "Generic" 15 "Invalid";
|
||||
VAL_ 506 ISLW_SpdCluSubMainDis 0 "No Recognition (Default)" 253 "Unlimited Speed" 254 "Reserved" 255 "Invalid";
|
||||
VAL_ 506 ISLW_SpdCluDisSubCond1 0 "No Recognition (Default)" 253 "LHD Conditional No Passing ZONE" 254 "RHD Conditional No Passing ZONE" 255 "Invalid";
|
||||
VAL_ 506 ISLW_SpdCluDisSubCond2 0 "No Recognition (Default)" 253 "LHD Conditional No Passing ZONE" 254 "RHD Conditional No Passing ZONE" 255 "Invalid";
|
||||
VAL_ 506 ISLW_SpdNaviSubMainDis 0 "No Recognition (Default)" 253 "Unlimited Speed" 254 "Reserved" 255 "Invalid";
|
||||
VAL_ 506 ISLW_SpdNaviDisSubCond1 0 "No Recognition (Default)" 253 "LHD Conditional No Passing ZONE" 254 "RHD Conditional No Passing ZONE" 255 "Invalid";
|
||||
VAL_ 506 ISLW_SpdNaviDisSubCond2 0 "No Recognition (Default)" 253 "LHD Conditional No Passing ZONE" 254 "RHD Conditional No Passing ZONE" 255 "Invalid";
|
||||
VAL_ 506 ISLA_SpdwOffst 0 "No Recognition" 253 "Unlimited Speed" 254 "Reserved" 255 "Invalid";
|
||||
VAL_ 506 ISLA_SwIgnoreReq 0 "Allow All Switch Inputs (default)" 1 "-(SET) Switch Input Ignore" 2 "+(SET) Switch Input Ignore" 3 "-(SET) & +(SET) Switch Inputs Ignore";
|
||||
VAL_ 506 ISLA_SpdChgReq 0 "Default" 1 "Speed Change Request" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 506 ISLA_SpdWrn 0 "No Warning" 1 "Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 506 ISLA_IcyWrn 0 "No Warning" 1 "Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 506 ISLA_SymFlashMod 0 "No Flasing" 1 "Flashing Sign" 2 "Flashing - Arrow Symbol" 3 "Flashing + Arrow Symbol" 4 "Flashing Auto Symbol" 5 "Reserved" 6 "Reserved" 7 "Reserved";
|
||||
VAL_ 506 ISLA_Popup 0 "No Popup" 1 "MSLA Speed will Change" 2 "MSLA Speed has Changed" 3 "CC_SCC Speed will Change" 4 "CC_SCC Speed has Changed" 5 "Reserved" 6 "Reserved" 7 "Reserved";
|
||||
VAL_ 506 ISLA_OptUsmSta 0 "None ISLA Option (속도 제한 메뉴 삭제)" 1 "Off" 2 "Warning" 3 "Assist" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Invalid (GRAY)";
|
||||
VAL_ 506 ISLA_OffstUsmSta 0 "None Offset Function" 1 "-10kph or -5mph" 2 "-5kph or -3mph" 3 "0kph or 0mph" 4 "+5kph or +3mph" 5 "+10kph or +5mph" 6 "Reserved" 7 "Invalid (GRAY)";
|
||||
VAL_ 506 ISLA_AutoUsmSta 0 "None Auto Function (Delete Menu)" 1 "Auto Off" 2 "Auto On" 3 "Invalid (GRAY)";
|
||||
VAL_ 506 ISLA_Cntry 0 "Europe/Russia/Australia" 1 "Domestic" 2 "China" 3 "USA" 4 "Canada" 5 "Australia" 6 "Reserved" 7 "Reserved" 8 "Reserved" 9 "Reserved" 10 "Reserved" 11 "Reserved" 12 "Reserved" 13 "Reserved" 14 "Reserved" 15 "Initial Value (default)";
|
||||
VAL_ 506 ISLA_AddtnlSign 0 "No Recognition (default)" 1 "School Crossing" 16 "Do Not Pass" 17 "Reserved" 18 "Reserved" 19 "Reserved" 20 "Reserved" 21 "Reserved" 22 "Reserved" 23 "Reserved" 24 "Exit" 25 "Roundabout" 26 "Right Curve" 27 "Left Curve" 28 "Winding Road" 29 "Reserved" 30 "Reserved" 31 "Reserved" 2 "Pedestrian Crossing" 3 "Bicycle Crossing" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Reserved" 8 "Stop" 9 "Yield" 10 "Stop Ahead" 11 "Yield Ahead" 12 "Road Construction Ahead" 13 "Lane Reduction" 14 "Reserved" 15 "Reserved";
|
||||
VAL_ 506 ISLA_SchoolZone 0 "No School Zone" 1 "School Zone" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 687 HOD_Dir_Status 0 "HANDS OFF" 1 "HAND TOUCH (SOFT)" 2 "HAND TOUCH (STRONG)" 3 "HAND GRIP (SOFT)" 4 "HAND GRIP (STRONG)" 5 "RESERVED" 6 "RESERVED";
|
||||
VAL_ 698 IFSref_FR_CMR_Sta 0 "None Option (Default)" 1 "Normal" 2 "Blockage Status" 3 "Error Indicator";
|
||||
VAL_ 698 IFSref_VehNumVal 0 "No vehicle" 1 "Number of vehicles" 2 "Number of vehicles" 3 "Number of vehicles" 4 "Number of vehicles" 5 "Number of vehicles" 6 "Number of vehicles" 7 "Number of vehicles" 8 "Number of vehicles" 9 "Number of vehicles" 10 "Number of vehicles" 11 "Over than 10 vehicles" 12 "Reserved" 13 "Reserved" 14 "Default" 15 "Error indicator";
|
||||
VAL_ 698 IFSref_ILLAmbtSta 0 "Bright" 1 "Dark" 2 "Not used" 3 "Error indicator";
|
||||
VAL_ 698 IFSref_VehLftAngl1Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehRtAngl1Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehLftAngl2Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehDst1Val 0 "No Value" 1 "1~10m" 2 "11~20m" 3 "21~30m" 4 "31~40m" 5 "41~50m" 6 "51~60m" 7 "61~70m" 8 "71~80m" 9 "81~90m" 10 "91~100m" 11 "101~200m" 12 "201~300m" 13 "301~400m" 14 "401m~" 15 "Error indicator";
|
||||
VAL_ 698 IFSref_VehRtAngl2Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehLftAngl3Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehRtAngl3Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehLftAngl4Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehRtAngl4Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehLftAngl5Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehRtAngl5Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehLftAngl6Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehRtAngl6Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehLftAngl7Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehRtAngl7Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehLftAngl8Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehRtAngl8Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehLftAngl9Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehRtAngl9Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehLftAngl10Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehRtAngl10Val 501 "Not used" 502 "Not used" 503 "Not used" 504 "Not used" 505 "Not used" 506 "Not used" 507 "Not used" 508 "Not used" 509 "Not used" 510 "Default" 511 "Error indicator";
|
||||
VAL_ 698 IFSref_VehDst2Val 0 "No Value" 1 "1~10m" 2 "11~20m" 3 "21~30m" 4 "31~40m" 5 "41~50m" 6 "51~60m" 7 "61~70m" 8 "71~80m" 9 "81~90m" 10 "91~100m" 11 "101~200m" 12 "201~300m" 13 "301~400m" 14 "401m~" 15 "Error indicator";
|
||||
VAL_ 698 IFSref_VehDst3Val 0 "No Value" 1 "1~10m" 2 "11~20m" 3 "21~30m" 4 "31~40m" 5 "41~50m" 6 "51~60m" 7 "61~70m" 8 "71~80m" 9 "81~90m" 10 "91~100m" 11 "101~200m" 12 "201~300m" 13 "301~400m" 14 "401m~" 15 "Error indicator";
|
||||
VAL_ 698 IFSref_VehDst4Val 0 "No Value" 1 "1~10m" 2 "11~20m" 3 "21~30m" 4 "31~40m" 5 "41~50m" 6 "51~60m" 7 "61~70m" 8 "71~80m" 9 "81~90m" 10 "91~100m" 11 "101~200m" 12 "201~300m" 13 "301~400m" 14 "401m~" 15 "Error indicator";
|
||||
VAL_ 698 IFSref_VehDst5Val 0 "No Value" 1 "1~10m" 2 "11~20m" 3 "21~30m" 4 "31~40m" 5 "41~50m" 6 "51~60m" 7 "61~70m" 8 "71~80m" 9 "81~90m" 10 "91~100m" 11 "101~200m" 12 "201~300m" 13 "301~400m" 14 "401m~" 15 "Error indicator";
|
||||
VAL_ 698 IFSref_VehDst6Val 0 "No Value" 1 "1~10m" 2 "11~20m" 3 "21~30m" 4 "31~40m" 5 "41~50m" 6 "51~60m" 7 "61~70m" 8 "71~80m" 9 "81~90m" 10 "91~100m" 11 "101~200m" 12 "201~300m" 13 "301~400m" 14 "401m~" 15 "Error indicator";
|
||||
VAL_ 698 IFSref_VehDst7Val 0 "No Value" 1 "1~10m" 2 "11~20m" 3 "21~30m" 4 "31~40m" 5 "41~50m" 6 "51~60m" 7 "61~70m" 8 "71~80m" 9 "81~90m" 10 "91~100m" 11 "101~200m" 12 "201~300m" 13 "301~400m" 14 "401m~" 15 "Error indicator";
|
||||
VAL_ 698 IFSref_VehDst8Val 0 "No Value" 1 "1~10m" 2 "11~20m" 3 "21~30m" 4 "31~40m" 5 "41~50m" 6 "51~60m" 7 "61~70m" 8 "71~80m" 9 "81~90m" 10 "91~100m" 11 "101~200m" 12 "201~300m" 13 "301~400m" 14 "401m~" 15 "Error indicator";
|
||||
VAL_ 698 IFSref_VehDst9Val 0 "No Value" 1 "1~10m" 2 "11~20m" 3 "21~30m" 4 "31~40m" 5 "41~50m" 6 "51~60m" 7 "61~70m" 8 "71~80m" 9 "81~90m" 10 "91~100m" 11 "101~200m" 12 "201~300m" 13 "301~400m" 14 "401m~" 15 "Error indicator";
|
||||
VAL_ 698 IFSref_VehDst10Val 0 "No Value" 1 "1~10m" 2 "11~20m" 3 "21~30m" 4 "31~40m" 5 "41~50m" 6 "51~60m" 7 "61~70m" 8 "71~80m" 9 "81~90m" 10 "91~100m" 11 "101~200m" 12 "201~300m" 13 "301~400m" 14 "401m~" 15 "Error indicator";
|
||||
VAL_ 736 MSLA_STATUS 0 "disabled" 1 "active" 2 "paused";
|
||||
VAL_ 866 LEFT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence" 3 "High Confidence";
|
||||
VAL_ 866 RIGHT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence" 3 "High Confidence";
|
||||
VAL_ 1041 DRIVER_DOOR 0 "Closed" 1 "Opened";
|
||||
VAL_ 1041 PASSENGER_DOOR 0 "Closed" 1 "Opened";
|
||||
VAL_ 1041 PASSENGER_SEATBELT 0 "Unlatched" 1 "Latched";
|
||||
VAL_ 1041 DRIVER_SEATBELT 0 "Unlatched" 1 "Latched";
|
||||
VAL_ 1041 DRIVER_REAR_DOOR 0 "Closed" 1 "Opened";
|
||||
VAL_ 1041 PASSENGER_REAR_DOOR 0 "Closed" 1 "Opened";
|
||||
VAL_ 1144 DRIVE_MODE2 3 "Set Sport" 1 "Set Normal" 2 "Set Eco";
|
||||
VAL_ 1240 DISTANCE_UNIT 1 "Miles" 0 "Kilometers";
|
||||
@@ -1,371 +0,0 @@
|
||||
|
||||
VERSION ""
|
||||
|
||||
|
||||
NS_ :
|
||||
NS_DESC_
|
||||
CM_
|
||||
BA_DEF_
|
||||
BA_
|
||||
VAL_
|
||||
CAT_DEF_
|
||||
CAT_
|
||||
FILTER
|
||||
BA_DEF_DEF_
|
||||
EV_DATA_
|
||||
ENVVAR_DATA_
|
||||
SGTYPE_
|
||||
SGTYPE_VAL_
|
||||
BA_DEF_SGTYPE_
|
||||
BA_SGTYPE_
|
||||
SIG_TYPE_REF_
|
||||
VAL_TABLE_
|
||||
SIG_GROUP_
|
||||
SIG_VALTYPE_
|
||||
SIGTYPE_VALTYPE_
|
||||
BO_TX_BU_
|
||||
BA_DEF_REL_
|
||||
BA_REL_
|
||||
BA_DEF_DEF_REL_
|
||||
BU_SG_REL_
|
||||
BU_EV_REL_
|
||||
BU_BO_REL_
|
||||
SG_MUL_VAL_
|
||||
|
||||
BS_:
|
||||
|
||||
BU_: XXX
|
||||
|
||||
BO_ 256 RADAR_POINTS_METADATA_0x100: 64 RADAR
|
||||
SG_ SIGNAL_1 : 0|32@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SIGNAL_2 : 32|32@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ SIGNAL_3 : 64|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ SIGNAL_4 : 68|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ RADAR_POINT_COUNT : 72|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SIGNAL_6 : 80|7@1+ (0.015625,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_7 : 87|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ SIGNAL_8 : 88|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ SIGNAL_9 : 91|5@1+ (0.0625,0) [0|31] "" XXX
|
||||
SG_ SIGNAL_10 : 96|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SIGNAL_11 : 104|7@1+ (0.015625,0) [0|127] "" XXX
|
||||
SG_ SIGNAL_12 : 111|2@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ SIGNAL_13 : 113|7@1+ (0.015625,0) [0|127] "" XXX
|
||||
SG_ SIGNAL_14 : 120|7@1+ (0.015625,0) [0|127] "" XXX
|
||||
SG_ SIGNAL_15 : 127|3@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_16 : 130|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_17 : 133|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_18 : 134|1@0+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_19 : 135|3@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_20 : 138|8@1+ (1,0) [0|63] "" XXX
|
||||
SG_ SIGNAL_21 : 146|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_22 : 148|1@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_23 : 149|4@1+ (1,0) [0|7] "" XXX
|
||||
SG_ SIGNAL_24 : 153|1@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_25 : 154|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_26 : 157|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_27 : 158|7@1+ (0.125,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_28 : 165|7@1+ (0.015625,0) [0|31] "" XXX
|
||||
SG_ SIGNAL_29 : 172|7@1+ (0.125,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_30 : 179|7@1+ (0.015625,0) [0|1] "" XXX
|
||||
SG_ SIGNAL_31 : 186|4@1+ (1,0) [0|7] "" XXX
|
||||
SG_ SIGNAL_32 : 190|14@1+ (0.015625,0) [0|15] "" XXX
|
||||
SG_ SIGNAL_33 : 204|11@1+ (0.03125,0) [0|8191] "" XXX
|
||||
SG_ SIGNAL_34 : 215|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_35 : 217|7@1+ (1,0) [0|127] "" XXX
|
||||
SG_ SIGNAL_36 : 224|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ SIGNAL_37 : 230|6@1+ (0.2,0) [0|31] "" XXX
|
||||
SG_ SIGNAL_38 : 236|6@1+ (0.2,0) [0|7] "" XXX
|
||||
SG_ SIGNAL_39 : 242|8@1+ (1,-90) [0|255] "" XXX
|
||||
SG_ SIGNAL_40 : 250|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ SIGNAL_41 : 256|8@1+ (0.25,0) [0|255] "" XXX
|
||||
SG_ SIGNAL_42 : 264|3@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_43 : 267|12@1+ (0.01,0) [0|31] "" XXX
|
||||
SG_ SIGNAL_44 : 279|32@1+ (1,0) [0|63] "" XXX
|
||||
SG_ SIGNAL_45 : 311|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ SIGNAL_46 : 312|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_47 : 314|32@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SIGNAL_48 : 346|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ SIGNAL_49 : 352|7@1+ (0.25,0) [0|127] "" XXX
|
||||
SG_ SIGNAL_50 : 359|6@1+ (0.03125,0) [0|31] "" XXX
|
||||
SG_ SIGNAL_51 : 365|10@1+ (0.125,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_52 : 375|10@1+ (0.125,0) [0|63] "" XXX
|
||||
SG_ SIGNAL_53 : 385|7@1+ (1,0) [0|127] "" XXX
|
||||
SG_ SIGNAL_54 : 392|7@1+ (1,0) [0|127] "" XXX
|
||||
SG_ SIGNAL_55 : 399|8@1+ (0.00390625,0) [0|31] "" XXX
|
||||
SG_ SIGNAL_56 : 407|10@1+ (0.125,0) [0|63] "" XXX
|
||||
SG_ SIGNAL_57 : 417|1@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_58 : 418|1@1+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 512 RADAR_POINTS_METADATA_0x200: 64 RADAR
|
||||
SG_ SIGNAL_1 : 0|32@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SIGNAL_2 : 32|32@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ SIGNAL_3 : 64|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ SIGNAL_4 : 68|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ RADAR_POINT_COUNT : 72|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SIGNAL_6 : 80|7@1+ (0.015625,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_7 : 87|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ SIGNAL_8 : 88|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ SIGNAL_9 : 91|5@1+ (0.0625,0) [0|31] "" XXX
|
||||
SG_ SIGNAL_10 : 96|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SIGNAL_11 : 104|7@1+ (0.015625,0) [0|127] "" XXX
|
||||
SG_ SIGNAL_12 : 111|2@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ SIGNAL_13 : 113|7@1+ (0.015625,0) [0|127] "" XXX
|
||||
SG_ SIGNAL_14 : 120|7@1+ (0.015625,0) [0|127] "" XXX
|
||||
SG_ SIGNAL_15 : 127|3@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_16 : 130|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_17 : 133|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_18 : 134|1@0+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_19 : 135|3@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_20 : 138|8@1+ (1,0) [0|63] "" XXX
|
||||
SG_ SIGNAL_21 : 146|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_22 : 148|1@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_23 : 149|4@1+ (1,0) [0|7] "" XXX
|
||||
SG_ SIGNAL_24 : 153|1@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_25 : 154|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_26 : 157|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_27 : 158|7@1+ (0.125,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_28 : 165|7@1+ (0.015625,0) [0|31] "" XXX
|
||||
SG_ SIGNAL_29 : 172|7@1+ (0.125,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_30 : 179|7@1+ (0.015625,0) [0|1] "" XXX
|
||||
SG_ SIGNAL_31 : 186|4@1+ (1,0) [0|7] "" XXX
|
||||
SG_ SIGNAL_32 : 190|14@1+ (0.015625,0) [0|15] "" XXX
|
||||
SG_ SIGNAL_33 : 204|11@1+ (0.03125,0) [0|8191] "" XXX
|
||||
SG_ SIGNAL_34 : 215|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_35 : 217|7@1+ (1,0) [0|127] "" XXX
|
||||
SG_ SIGNAL_36 : 224|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ SIGNAL_37 : 230|6@1+ (0.2,0) [0|31] "" XXX
|
||||
SG_ SIGNAL_38 : 236|6@1+ (0.2,0) [0|7] "" XXX
|
||||
SG_ SIGNAL_39 : 242|8@1+ (1,-90) [0|255] "" XXX
|
||||
SG_ SIGNAL_40 : 250|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ SIGNAL_41 : 256|8@1+ (0.25,0) [0|255] "" XXX
|
||||
SG_ SIGNAL_42 : 264|3@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_43 : 267|12@1+ (0.01,0) [0|31] "" XXX
|
||||
SG_ SIGNAL_44 : 279|32@1+ (1,0) [0|63] "" XXX
|
||||
SG_ SIGNAL_45 : 311|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ SIGNAL_46 : 312|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_47 : 314|32@1+ (1,0) [0|255] "" XXX
|
||||
SG_ SIGNAL_48 : 346|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ SIGNAL_49 : 352|7@1+ (0.25,0) [0|127] "" XXX
|
||||
SG_ SIGNAL_50 : 359|6@1+ (0.03125,0) [0|31] "" XXX
|
||||
SG_ SIGNAL_51 : 365|10@1+ (0.125,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_52 : 375|10@1+ (0.125,0) [0|63] "" XXX
|
||||
SG_ SIGNAL_53 : 385|7@1+ (1,0) [0|127] "" XXX
|
||||
SG_ SIGNAL_54 : 392|7@1+ (1,0) [0|127] "" XXX
|
||||
SG_ SIGNAL_55 : 399|8@1+ (0.00390625,0) [0|31] "" XXX
|
||||
SG_ SIGNAL_56 : 407|10@1+ (0.125,0) [0|63] "" XXX
|
||||
SG_ SIGNAL_57 : 417|1@1+ (1,0) [0|3] "" XXX
|
||||
SG_ SIGNAL_58 : 418|1@1+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 257 RADAR_POINTS_0x101: 64 RADAR
|
||||
SG_ MESSAGE_ID : 0|5@1+ (1,0) [0|31] "" XXX
|
||||
SG_ LAYOUT_ID : 5|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_1_DISTANCE : 7|14@1+ (0.015625,0) [0|255.984375] "" XXX
|
||||
SG_ POINT_1_SIGNAL_2 : 21|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_1_SIGNAL_3 : 23|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_1_REL_VELOCITY : 31|13@1+ (0.03125,-66) [-66|189.96875] "" XXX
|
||||
SG_ POINT_1_SIGNAL_5 : 44|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_1_SIGNAL_6 : 46|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_1_AZIMUTH : 48|12@1+ (0.001953125,-3.998046875) [-3.998046875|4.0] "" XXX
|
||||
SG_ POINT_1_SIGNAL_8 : 60|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_1_SIGNAL_9 : 62|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_1_SIGNAL_10 : 63|7@1+ (1,0) [0|127] "" XXX
|
||||
SG_ POINT_1_SIGNAL_11 : 70|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_1_SIGNAL_12 : 71|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_1_SIGNAL_13 : 77|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_1_SIGNAL_14 : 79|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_1_SIGNAL_15 : 87|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_1_SIGNAL_16 : 88|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_1_SIGNAL_17 : 90|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ POINT_1_SIGNAL_18 : 93|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_1_SIGNAL_19 : 99|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ POINT_1_SIGNAL_20 : 107|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_2_DISTANCE : 108|14@1+ (0.015625,0) [0|255.984375] "" XXX
|
||||
SG_ POINT_2_SIGNAL_2 : 122|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_2_SIGNAL_3 : 124|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_2_REL_VELOCITY : 132|13@1+ (0.03125,-66) [-66|189.96875] "" XXX
|
||||
SG_ POINT_2_SIGNAL_5 : 145|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_2_SIGNAL_6 : 147|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_2_AZIMUTH : 149|12@1+ (0.001953125,-3.998046875) [-3.998046875|4.0] "" XXX
|
||||
SG_ POINT_2_SIGNAL_8 : 161|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_2_SIGNAL_9 : 163|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_2_SIGNAL_10 : 164|7@1+ (1,0) [0|127] "" XXX
|
||||
SG_ POINT_2_SIGNAL_11 : 171|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_2_SIGNAL_12 : 172|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_2_SIGNAL_13 : 178|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_2_SIGNAL_14 : 180|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_2_SIGNAL_15 : 188|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_2_SIGNAL_16 : 189|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_2_SIGNAL_17 : 191|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ POINT_2_SIGNAL_18 : 194|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_2_SIGNAL_19 : 200|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ POINT_2_SIGNAL_20 : 208|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_3_DISTANCE : 209|14@1+ (0.015625,0) [0|255.984375] "" XXX
|
||||
SG_ POINT_3_SIGNAL_2 : 223|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_3_SIGNAL_3 : 225|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_3_REL_VELOCITY : 233|13@1+ (0.03125,-66) [-66|189.96875] "" XXX
|
||||
SG_ POINT_3_SIGNAL_5 : 246|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_3_SIGNAL_6 : 248|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_3_AZIMUTH : 250|12@1+ (0.001953125,-3.998046875) [-3.998046875|4.0] "" XXX
|
||||
SG_ POINT_3_SIGNAL_8 : 262|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_3_SIGNAL_9 : 264|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_3_SIGNAL_10 : 265|7@1+ (1,0) [0|127] "" XXX
|
||||
SG_ POINT_3_SIGNAL_11 : 272|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_3_SIGNAL_12 : 273|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_3_SIGNAL_13 : 279|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_3_SIGNAL_14 : 281|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_3_SIGNAL_15 : 289|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_3_SIGNAL_16 : 290|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_3_SIGNAL_17 : 292|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ POINT_3_SIGNAL_18 : 295|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_3_SIGNAL_19 : 301|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ POINT_3_SIGNAL_20 : 309|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_4_DISTANCE : 310|14@1+ (0.015625,0) [0|255.984375] "" XXX
|
||||
SG_ POINT_4_SIGNAL_2 : 324|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_4_SIGNAL_3 : 326|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_4_REL_VELOCITY : 334|13@1+ (0.03125,-66) [-66|189.96875] "" XXX
|
||||
SG_ POINT_4_SIGNAL_5 : 347|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_4_SIGNAL_6 : 349|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_4_AZIMUTH : 351|12@1+ (0.001953125,-3.998046875) [-3.998046875|4.0] "" XXX
|
||||
SG_ POINT_4_SIGNAL_8 : 363|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_4_SIGNAL_9 : 365|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_4_SIGNAL_10 : 366|7@1+ (1,0) [0|127] "" XXX
|
||||
SG_ POINT_4_SIGNAL_11 : 373|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_4_SIGNAL_12 : 374|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_4_SIGNAL_13 : 380|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_4_SIGNAL_14 : 382|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_4_SIGNAL_15 : 390|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_4_SIGNAL_16 : 391|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_4_SIGNAL_17 : 393|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ POINT_4_SIGNAL_18 : 396|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_4_SIGNAL_19 : 402|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ POINT_4_SIGNAL_20 : 410|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_5_DISTANCE : 411|14@1+ (0.015625,0) [0|255.984375] "" XXX
|
||||
SG_ POINT_5_SIGNAL_2 : 425|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_5_SIGNAL_3 : 427|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_5_REL_VELOCITY : 435|13@1+ (0.03125,-66) [-66|189.96875] "" XXX
|
||||
SG_ POINT_5_SIGNAL_5 : 448|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_5_SIGNAL_6 : 450|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_5_AZIMUTH : 452|12@1+ (0.001953125,-3.998046875) [-3.998046875|4.0] "" XXX
|
||||
SG_ POINT_5_SIGNAL_8 : 464|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_5_SIGNAL_9 : 466|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_5_SIGNAL_10 : 467|7@1+ (1,0) [0|127] "" XXX
|
||||
SG_ POINT_5_SIGNAL_11 : 474|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_5_SIGNAL_12 : 475|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_5_SIGNAL_13 : 481|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_5_SIGNAL_14 : 483|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_5_SIGNAL_15 : 491|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_5_SIGNAL_16 : 492|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_5_SIGNAL_17 : 494|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ POINT_5_SIGNAL_18 : 497|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_5_SIGNAL_19 : 503|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ POINT_5_SIGNAL_20 : 511|1@1+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 513 RADAR_POINTS_0x201: 64 RADAR
|
||||
SG_ MESSAGE_ID : 0|5@1+ (1,0) [0|31] "" XXX
|
||||
SG_ LAYOUT_ID : 5|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_1_DISTANCE : 7|14@1+ (0.015625,0) [0|255.984375] "" XXX
|
||||
SG_ POINT_1_SIGNAL_2 : 21|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_1_SIGNAL_3 : 23|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_1_REL_VELOCITY : 31|13@1+ (0.03125,-66) [-66|189.96875] "" XXX
|
||||
SG_ POINT_1_SIGNAL_5 : 44|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_1_SIGNAL_6 : 46|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_1_AZIMUTH : 48|12@1+ (0.001953125,-3.998046875) [-3.998046875|4.0] "" XXX
|
||||
SG_ POINT_1_SIGNAL_8 : 60|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_1_SIGNAL_9 : 62|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_1_SIGNAL_10 : 63|7@1+ (1,0) [0|127] "" XXX
|
||||
SG_ POINT_1_SIGNAL_11 : 70|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_1_SIGNAL_12 : 71|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_1_SIGNAL_13 : 77|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_1_SIGNAL_14 : 79|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_1_SIGNAL_15 : 87|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_1_SIGNAL_16 : 88|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_1_SIGNAL_17 : 90|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ POINT_1_SIGNAL_18 : 93|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_1_SIGNAL_19 : 99|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ POINT_1_SIGNAL_20 : 107|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_2_DISTANCE : 108|14@1+ (0.015625,0) [0|255.984375] "" XXX
|
||||
SG_ POINT_2_SIGNAL_2 : 122|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_2_SIGNAL_3 : 124|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_2_REL_VELOCITY : 132|13@1+ (0.03125,-66) [-66|189.96875] "" XXX
|
||||
SG_ POINT_2_SIGNAL_5 : 145|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_2_SIGNAL_6 : 147|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_2_AZIMUTH : 149|12@1+ (0.001953125,-3.998046875) [-3.998046875|4.0] "" XXX
|
||||
SG_ POINT_2_SIGNAL_8 : 161|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_2_SIGNAL_9 : 163|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_2_SIGNAL_10 : 164|7@1+ (1,0) [0|127] "" XXX
|
||||
SG_ POINT_2_SIGNAL_11 : 171|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_2_SIGNAL_12 : 172|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_2_SIGNAL_13 : 178|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_2_SIGNAL_14 : 180|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_2_SIGNAL_15 : 188|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_2_SIGNAL_16 : 189|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_2_SIGNAL_17 : 191|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ POINT_2_SIGNAL_18 : 194|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_2_SIGNAL_19 : 200|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ POINT_2_SIGNAL_20 : 208|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_3_DISTANCE : 209|14@1+ (0.015625,0) [0|255.984375] "" XXX
|
||||
SG_ POINT_3_SIGNAL_2 : 223|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_3_SIGNAL_3 : 225|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_3_REL_VELOCITY : 233|13@1+ (0.03125,-66) [-66|189.96875] "" XXX
|
||||
SG_ POINT_3_SIGNAL_5 : 246|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_3_SIGNAL_6 : 248|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_3_AZIMUTH : 250|12@1+ (0.001953125,-3.998046875) [-3.998046875|4.0] "" XXX
|
||||
SG_ POINT_3_SIGNAL_8 : 262|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_3_SIGNAL_9 : 264|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_3_SIGNAL_10 : 265|7@1+ (1,0) [0|127] "" XXX
|
||||
SG_ POINT_3_SIGNAL_11 : 272|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_3_SIGNAL_12 : 273|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_3_SIGNAL_13 : 279|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_3_SIGNAL_14 : 281|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_3_SIGNAL_15 : 289|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_3_SIGNAL_16 : 290|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_3_SIGNAL_17 : 292|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ POINT_3_SIGNAL_18 : 295|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_3_SIGNAL_19 : 301|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ POINT_3_SIGNAL_20 : 309|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_4_DISTANCE : 310|14@1+ (0.015625,0) [0|255.984375] "" XXX
|
||||
SG_ POINT_4_SIGNAL_2 : 324|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_4_SIGNAL_3 : 326|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_4_REL_VELOCITY : 334|13@1+ (0.03125,-66) [-66|189.96875] "" XXX
|
||||
SG_ POINT_4_SIGNAL_5 : 347|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_4_SIGNAL_6 : 349|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_4_AZIMUTH : 351|12@1+ (0.001953125,-3.998046875) [-3.998046875|4.0] "" XXX
|
||||
SG_ POINT_4_SIGNAL_8 : 363|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_4_SIGNAL_9 : 365|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_4_SIGNAL_10 : 366|7@1+ (1,0) [0|127] "" XXX
|
||||
SG_ POINT_4_SIGNAL_11 : 373|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_4_SIGNAL_12 : 374|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_4_SIGNAL_13 : 380|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_4_SIGNAL_14 : 382|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_4_SIGNAL_15 : 390|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_4_SIGNAL_16 : 391|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_4_SIGNAL_17 : 393|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ POINT_4_SIGNAL_18 : 396|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_4_SIGNAL_19 : 402|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ POINT_4_SIGNAL_20 : 410|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_5_DISTANCE : 411|14@1+ (0.015625,0) [0|255.984375] "" XXX
|
||||
SG_ POINT_5_SIGNAL_2 : 425|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_5_SIGNAL_3 : 427|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_5_REL_VELOCITY : 435|13@1+ (0.03125,-66) [-66|189.96875] "" XXX
|
||||
SG_ POINT_5_SIGNAL_5 : 448|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_5_SIGNAL_6 : 450|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_5_AZIMUTH : 452|12@1+ (0.001953125,-3.998046875) [-3.998046875|4.0] "" XXX
|
||||
SG_ POINT_5_SIGNAL_8 : 464|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_5_SIGNAL_9 : 466|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_5_SIGNAL_10 : 467|7@1+ (1,0) [0|127] "" XXX
|
||||
SG_ POINT_5_SIGNAL_11 : 474|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_5_SIGNAL_12 : 475|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_5_SIGNAL_13 : 481|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_5_SIGNAL_14 : 483|8@1+ (0.001953125,-0.248046875) [-0.248046875|0.25] "" XXX
|
||||
SG_ POINT_5_SIGNAL_15 : 491|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ POINT_5_SIGNAL_16 : 492|2@1+ (1,0) [0|3] "" XXX
|
||||
SG_ POINT_5_SIGNAL_17 : 494|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ POINT_5_SIGNAL_18 : 497|6@1+ (1,0) [0|63] "" XXX
|
||||
SG_ POINT_5_SIGNAL_19 : 503|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ POINT_5_SIGNAL_20 : 511|1@1+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 260 RADAR_POINTS_CHECKSUM_0x104: 3 RADAR
|
||||
SG_ CRC16 : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
|
||||
BO_ 516 RADAR_POINTS_CHECKSUM_0x204: 3 RADAR
|
||||
SG_ CRC16 : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
@@ -1,422 +0,0 @@
|
||||
|
||||
VERSION ""
|
||||
|
||||
|
||||
NS_ :
|
||||
NS_DESC_
|
||||
CM_
|
||||
BA_DEF_
|
||||
BA_
|
||||
VAL_
|
||||
CAT_DEF_
|
||||
CAT_
|
||||
FILTER
|
||||
BA_DEF_DEF_
|
||||
EV_DATA_
|
||||
ENVVAR_DATA_
|
||||
SGTYPE_
|
||||
SGTYPE_VAL_
|
||||
BA_DEF_SGTYPE_
|
||||
BA_SGTYPE_
|
||||
SIG_TYPE_REF_
|
||||
VAL_TABLE_
|
||||
SIG_GROUP_
|
||||
SIG_VALTYPE_
|
||||
SIGTYPE_VALTYPE_
|
||||
BO_TX_BU_
|
||||
BA_DEF_REL_
|
||||
BA_REL_
|
||||
BA_DEF_DEF_REL_
|
||||
BU_SG_REL_
|
||||
BU_EV_REL_
|
||||
BU_BO_REL_
|
||||
SG_MUL_VAL_
|
||||
|
||||
BS_:
|
||||
|
||||
BU_: XXX
|
||||
|
||||
BO_ 1280 RADAR_TRACK_500: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1281 RADAR_TRACK_501: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1282 RADAR_TRACK_502: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1283 RADAR_TRACK_503: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1284 RADAR_TRACK_504: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1285 RADAR_TRACK_505: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1286 RADAR_TRACK_506: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1287 RADAR_TRACK_507: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1288 RADAR_TRACK_508: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1289 RADAR_TRACK_509: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1290 RADAR_TRACK_50a: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1291 RADAR_TRACK_50b: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1292 RADAR_TRACK_50c: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1293 RADAR_TRACK_50d: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1294 RADAR_TRACK_50e: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1295 RADAR_TRACK_50f: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1296 RADAR_TRACK_510: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1297 RADAR_TRACK_511: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1298 RADAR_TRACK_512: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1299 RADAR_TRACK_513: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1300 RADAR_TRACK_514: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1301 RADAR_TRACK_515: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1302 RADAR_TRACK_516: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1303 RADAR_TRACK_517: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1304 RADAR_TRACK_518: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1305 RADAR_TRACK_519: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1306 RADAR_TRACK_51a: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1307 RADAR_TRACK_51b: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1308 RADAR_TRACK_51c: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1309 RADAR_TRACK_51d: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1310 RADAR_TRACK_51e: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
BO_ 1311 RADAR_TRACK_51f: 8 RADAR
|
||||
SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX
|
||||
SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX
|
||||
SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX
|
||||
|
||||
@@ -1,358 +0,0 @@
|
||||
|
||||
VERSION ""
|
||||
|
||||
|
||||
NS_ :
|
||||
NS_DESC_
|
||||
CM_
|
||||
BA_DEF_
|
||||
BA_
|
||||
VAL_
|
||||
CAT_DEF_
|
||||
CAT_
|
||||
FILTER
|
||||
BA_DEF_DEF_
|
||||
EV_DATA_
|
||||
ENVVAR_DATA_
|
||||
SGTYPE_
|
||||
SGTYPE_VAL_
|
||||
BA_DEF_SGTYPE_
|
||||
BA_SGTYPE_
|
||||
SIG_TYPE_REF_
|
||||
VAL_TABLE_
|
||||
SIG_GROUP_
|
||||
SIG_VALTYPE_
|
||||
SIGTYPE_VALTYPE_
|
||||
BO_TX_BU_
|
||||
BA_DEF_REL_
|
||||
BA_REL_
|
||||
BA_DEF_DEF_REL_
|
||||
BU_SG_REL_
|
||||
BU_EV_REL_
|
||||
BU_BO_REL_
|
||||
SG_MUL_VAL_
|
||||
|
||||
BS_:
|
||||
|
||||
BU_: XXX
|
||||
|
||||
BO_ 1280 RADAR_TRACK_500: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1281 RADAR_TRACK_501: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1282 RADAR_TRACK_502: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1283 RADAR_TRACK_503: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1284 RADAR_TRACK_504: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1285 RADAR_TRACK_505: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1286 RADAR_TRACK_506: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1287 RADAR_TRACK_507: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1288 RADAR_TRACK_508: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1289 RADAR_TRACK_509: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1290 RADAR_TRACK_50a: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1291 RADAR_TRACK_50b: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1292 RADAR_TRACK_50c: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1293 RADAR_TRACK_50d: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1294 RADAR_TRACK_50e: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1295 RADAR_TRACK_50f: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1296 RADAR_TRACK_510: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1297 RADAR_TRACK_511: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1298 RADAR_TRACK_512: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1299 RADAR_TRACK_513: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1300 RADAR_TRACK_514: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1301 RADAR_TRACK_515: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1302 RADAR_TRACK_516: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1303 RADAR_TRACK_517: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1304 RADAR_TRACK_518: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1305 RADAR_TRACK_519: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1306 RADAR_TRACK_51a: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1307 RADAR_TRACK_51b: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1308 RADAR_TRACK_51c: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1309 RADAR_TRACK_51d: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1310 RADAR_TRACK_51e: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
BO_ 1311 RADAR_TRACK_51f: 8 RADAR
|
||||
SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX
|
||||
SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX
|
||||
SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX
|
||||
SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX
|
||||
SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX
|
||||
SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -43,21 +43,19 @@ BU_: XXX CAMERA FRONT_RADAR ADRV APRK
|
||||
BO_ 80 LKAS: 16 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_OptUsmSta : 24|3@1+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ LKA_RcgSta : 27|3@1+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ LKA_LHLnWrnSta : 30|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_RHLnWrnSta : 32|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_HndsoffSnd : 34|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_StrSnd : 36|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_SysIndReq : 38|3@1+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ StrTqReqVal : 41|11@1+ (1,-1024) [0|4095] "" XXX
|
||||
SG_ ActToiSta : 52|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ ToiFltSta : 54|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_MODE : 24|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ LKA_AVAILABLE : 27|2@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ LKA_ICON : 38|2@1+ (1,0) [0|255] "" XXX
|
||||
SG_ FCA_SYSWARN : 40|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ TORQUE_REQUEST : 41|11@1+ (1,-1024) [0|4095] "" XXX
|
||||
SG_ STEER_REQ : 52|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_SysWrn : 60|4@1+ (1,0) [0|15] "" ADAS_DRV
|
||||
SG_ Damping_Gain : 64|8@1+ (1,0) [0|255] "" CGW
|
||||
SG_ LKA_UsmMod : 80|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ Info_PedtrnDst : 84|3@1+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ LKA_ASSIST : 62|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ STEER_MODE : 65|3@1+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_2 : 70|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ HAS_LANE_SAFETY : 80|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DAMP_FACTOR : 64|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 81 ADRV_0x51: 32 ADRV
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
@@ -227,350 +225,16 @@ BO_ 702 CAM_0x2be: 32 CAMERA
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
CM_ BO_ 80 "Known in official DBC as L_ADAS_CMD_30_10ms";
|
||||
CM_ SG_ 80 StrTqReqVal "This is the driver torque overlay demand value. A negative value represents a torque that would accelerate the steering wheel in a clockwise direction. This signal is always zero whilst the TOI is inactive. (the official DBC defines this as SG_ StrTqReqVal : xx|11@1+ (0.0078125,-8) [-8|7.9921875] \"Nm\" XXX but I am not changing it since it has a broader impact on the OP code)";
|
||||
CM_ SG_ 80 ActToiSta "This is a flag that is set to 1 when requesting the steering to activate the torque overlay interface (TOI). This must be done before an attempt is made to request non-zero steering torque overlay.";
|
||||
CM_ SG_ 80 ToiFltSta "This fault flag is set when a fault in the LKA system has been detected by the LKA ECU such that LKA can no longer function. CAN failures, internal video ECU failures, hard-wired component (e.g. master switch) failures and other system logic failures are";
|
||||
CM_ SG_ 80 LKA_SysWrn "A signal that provides additional information on the operation of the LKA system for the HMI to display to the driver. This includes additional fault information, reasons for unavailability of the system and additional warnings like the hands-off warning";
|
||||
CM_ SG_ 80 LKA_UsmMod "This signal indicates LKA USM Mode";
|
||||
CM_ SG_ 80 Info_PedtrnDst "Distance of the nearest pedestrian";
|
||||
CM_ BO_ 676 "Contains signals with detailed lane line information. Used by ADAS ECU on HDA 2 vehicles to operate LFA.";
|
||||
|
||||
CM_ SG_ 80 HAS_LANE_SAFETY "If 0, hides LKAS 'Lane Safety' menu from vehicle settings";
|
||||
CM_ SG_ 676 LEFT_LANE_LINE "Left lane line confidence";
|
||||
CM_ SG_ 676 RIGHT_LANE_LINE "Right lane line confidence";
|
||||
VAL_ 80 LKA_OptUsmSta 0 "None LKA/LDW Option (Default)" 1 "LDW" 2 "LKA" 3 "Reserved" 4 "LDW Only (None LKA)" 5 "LDW only OFF (None LKA)" 6 "LDW/LKA OFF" 7 "Invalid";
|
||||
VAL_ 80 LKA_RcgSta 0 "Not Recognized" 1 "Full Lane Recognized" 2 "Left Line Recognized" 3 "Right Line Recognized" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Reserved";
|
||||
VAL_ 80 LKA_LHLnWrnSta 0 "No Warning" 1 "Lane Departure Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 80 LKA_RHLnWrnSta 0 "No Warning" 1 "Lane Departure Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 80 LKA_HndsoffSnd 0 "Off" 1 "Hands-off Sound Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 80 LKA_StrSnd 0 "Off" 1 "Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 80 LKA_SysIndReq 0 "Off" 1 "Unavailable_(Grey On)" 2 "Lane Recognized_(Green On)" 3 "Lane Departure_(Green Blink)" 4 "System Fail_(Orange On)" 5 "Not Calibrated_(Orange Blink)" 6 "Regulation_(Orange On)" 7 "Reserved";
|
||||
VAL_ 80 ActToiSta 0 "De-activate TOI" 1 "Activate TOI" 2 "Reserved" 3 "Error indicator";
|
||||
VAL_ 80 ToiFltSta 0 "No Fault" 1 "Fault" 2 "Reserved" 3 "Error indicatorr";
|
||||
VAL_ 80 LKA_SysWrn 0 "No Info" 1 "Reserved" 2 "Reserved" 3 "Reserved" 4 "Hands-Off Warning 1" 5 "Hands-Off Warning 2" 6 "Reserved" 7 "Reserved" 8 "Reserved" 9 "System Automatic off" 10 "Reserved" 11 "Reserved" 12 "Reserved" 13 "Reserved" 14 "Reserved" 15 "System Fail";
|
||||
VAL_ 80 LKA_UsmMod 0 "NONE" 1 "LKA 1 mode" 2 "LKA 2 mode" 3 "LDW";
|
||||
VAL_ 80 LKA_ICON 0 "hidden" 1 "grey" 2 "green" 3 "flashing green" ;
|
||||
VAL_ 80 LKA_MODE 1 "warning only" 2 "assist" 6 "off" ;
|
||||
VAL_ 676 LEFT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence" 3 "High Confidence";
|
||||
VAL_ 676 RIGHT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence" 3 "High Confidence";
|
||||
|
||||
|
||||
CM_ "Imported file _hyundai_canfd_ccnc.dbc starts here";
|
||||
BO_ 74 IMU_01_10ms: 32 CGW_CCU
|
||||
SG_ IMU_Crc1Val : 0|16@1+ (1,0) [0|0] "" ECS,ESC,FCU_C,GW_RGW,ICSC,MDPS,RCU,RWS,SFA,VPC_C
|
||||
SG_ IMU_AlvCnt1Val : 16|8@1+ (1,0) [0|0] "" ECS,ESC,FCU_C,GW_RGW,ICSC,MDPS,RCU,RWS,SFA,VPC_C
|
||||
SG_ IMU_YawSigSta : 24|4@1+ (1,0) [0|15] "" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ IMU_LatAccelSigSta : 28|4@1+ (1,0) [0|15] "" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ IMU_LongAccelSigSta : 32|4@1+ (1,0) [0|15] "" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ IMU_VerAccelSigSta : 36|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ IMU_McuVoltSta : 40|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ IMU_AcuRstSta : 44|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ IMU_SnsrTyp : 48|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ IMU_RollSigSta : 56|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ IMU_YawRtVal : 64|16@1+ (0.005,-163.84) [-163.84|163.835] "Deg/s" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ IMU_LatAccelVal : 80|16@1+ (0.000127465,-4.17677312) [-4.17677312|4.176645655] "g" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ IMU_LongAccelVal : 96|16@1+ (0.000127465,-4.17677312) [-4.17677312|4.176645655] "g" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ IMU_SnsrTempVal : 112|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ IMU_SeralNumVal : 128|64@1+ (1,0) [0|1.84467440737096e+19] "" XXX
|
||||
SG_ IMU_RollRtVal : 192|16@1+ (0.005,-163.84) [0|0] "º/s" XXX
|
||||
SG_ IMU_VerAccelVal : 208|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 229 ESC_02_10ms: 32 CGW
|
||||
SG_ ESC_YawSigSta : 24|4@1+ (1,0) [0|15] "" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ ESC_LatAccelSigSta : 28|4@1+ (1,0) [0|15] "" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ ESC_LongAccelSigSta : 32|4@1+ (1,0) [0|15] "" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ ESC_YawRtVal : 64|16@1+ (0.005,-163.84) [-163.84|163.835] "Deg/s" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ ESC_LatAccelVal : 80|16@1+ (0.000127465,-4.17677312) [-4.17677312|4.176645655] "g" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
SG_ ESC_LongAccelVal : 96|16@1+ (0.000127465,-4.17677312) [-4.17677312|4.176645655] "g" CLU,ADAS_PRK,FR_CMR,RR_C_RDR
|
||||
|
||||
CM_ BO_ 74 "[P] Periodic";
|
||||
CM_ SG_ 74 IMU_Crc1Val "The data area for CRC calculation is based on the data length (DLC) of the message DB.The CRC shall be calculated over the entire data block (excluding the CRC bytes) including the user data, alive counter and Data ID- CRC Polynomial (0x1021) , Ini";
|
||||
CM_ SG_ 74 IMU_AlvCnt1Val "For the first transmission request for a data element the counter shall be initialized with 0 and shall be incremented by 1 for every subsequent send request. When the counter reaches the maximum value(0xFF), then it shall restart with 0 for the next s";
|
||||
CM_ SG_ 74 IMU_YawSigSta "This signal indicates failure status of yaw rate signal and yaw rate sensing element.0000B : No failure xxx1B : IMU_Yawrate_failurexx1xB : Initialization is runningx1xxB : Reserved1xxxB : ReservedThis signal represents the physica";
|
||||
CM_ SG_ 74 IMU_LatAccelSigSta "This signal indicates failure status of lateral acceleration signal and sensing element.0000B : No failurexxx1B : IMU_Lateral acceleration failurexx1xB : Initialization is runningx1xxB : Reserved1xxxB : ReservedThis signal represe";
|
||||
CM_ SG_ 74 IMU_AcuRstSta "This signal indicates the status of IMU.0000B : Normal mode xxx1B : IMU Reset modexx1xB : Reservedx1xxB : Reserved1xxxB : ReservedIf ACU reset is required, ACU will send IMU RESET bit(XXX1B) up to 30 times and perform a reset. If ";
|
||||
CM_ SG_ 74 IMU_YawRtVal "This signal indicates Information regarding yaw rate.physical range : -163.84..163.83 ˚/s = 0000H..FFFEhConversion : (PH) = ((HEX)-8000H)*0.005[˚/s/digit] = (HEX)*0.005[˚/s/digit] - 163.84[˚/s] ";
|
||||
CM_ SG_ 74 IMU_LatAccelVal "This signal indicates Information regarding lateral acceleration.physical range : -4.1768g..4.1765g = 0000H..FFFEhConversion : (PH) = ((HEX)-8000H)*0.000127465[g/digit] = (HEX)*0.000127465[g/digit] - 4.17677312[g]";
|
||||
|
||||
CM_ BO_ 229 "[P] Periodic";
|
||||
CM_ SG_ 229 ESC_YawSigSta "ESC_YawSigSta";
|
||||
CM_ SG_ 229 ESC_LatAccelSigSta "ESC_LatAccelSigSta";
|
||||
CM_ SG_ 229 ESC_LongAccelSigSta "ESC_LongAccelSigSta";
|
||||
CM_ SG_ 229 ESC_YawRtVal "ESC_YawRtVal";
|
||||
CM_ SG_ 229 ESC_LatAccelVal "ESC_LatAccelVal";
|
||||
CM_ SG_ 229 ESC_LongAccelVal "ESC_LongAccelVal";
|
||||
|
||||
|
||||
CM_ "Imported file _hyundai_canfd_hda2_cam_unknown.dbc starts here";
|
||||
BO_ 560 NEW_MSG_230: 16 FR_CMR_OR_CAR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 565 NEW_MSG_235: 32 FR_CMR_OR_CAR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 566 NEW_MSG_236: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 567 NEW_MSG_237: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 568 NEW_MSG_238: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 569 NEW_MSG_239: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 570 NEW_MSG_23A: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 571 NEW_MSG_23B: 32 FR_CMR_OR_CAR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 572 NEW_MSG_23C: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 573 NEW_MSG_23D: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 574 NEW_MSG_23E: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 575 NEW_MSG_23F: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 577 NEW_MSG_241: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 578 NEW_MSG_242: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 579 NEW_MSG_243: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 580 NEW_MSG_244: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 581 NEW_MSG_245: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 582 NEW_MSG_246: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 583 NEW_MSG_247: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 584 NEW_MSG_248: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 864 NEW_MSG_360: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 865 NEW_MSG_361: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 867 NEW_MSG_363: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 868 NEW_MSG_364: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 869 NEW_MSG_365: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 870 NEW_MSG_366: 32 FR_CMR
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 896 NEW_MSG_380: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 917 NEW_MSG_395: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|255] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|65535] "" FR_CMR
|
||||
|
||||
BO_ 928 NEW_MSG_3A0: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|255] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 933 NEW_MSG_3A5: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 934 NEW_MSG_3A6: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 935 NEW_MSG_3A7: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 936 NEW_MSG_3A8: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 937 NEW_MSG_3A9: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 938 NEW_MSG_3AA: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 939 NEW_MSG_3AB: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 940 NEW_MSG_3AC: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 941 NEW_MSG_3AD: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 942 NEW_MSG_3AE: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 943 NEW_MSG_3AF: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 944 NEW_MSG_3B0: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 945 NEW_MSG_3B1: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 946 NEW_MSG_3B2: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 947 NEW_MSG_3B3: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 948 NEW_MSG_3B4: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 949 NEW_MSG_3B5: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 950 NEW_MSG_3B6: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 951 NEW_MSG_3B7: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 952 NEW_MSG_3B8: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 953 NEW_MSG_3B9: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 954 NEW_MSG_3BA: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 955 NEW_MSG_3BB: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 956 NEW_MSG_3BC: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 957 NEW_MSG_3BD: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 958 NEW_MSG_3BE: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 959 NEW_MSG_3BF: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 960 NEW_MSG_3C0: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 962 NEW_MSG_3C2: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 963 NEW_MSG_3C3: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 964 NEW_MSG_3C4: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 976 NEW_MSG_3D0: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 977 NEW_MSG_3D1: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|127] "" FR_CMR
|
||||
|
||||
BO_ 978 NEW_MSG_3D2: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 979 NEW_MSG_3D3: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|32767] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 980 NEW_MSG_3D4: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ NEW_SIGNAL_1 : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
BO_ 1280 NEW_MSG_500: 16 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" FR_CMR
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
SG_ NEW_SIGNAL_3_SPEED_DEPENDANT : 24|8@1+ (1,0) [0|255] "" FR_CMR
|
||||
|
||||
CM_ BO_ 976 "(all 0)";
|
||||
CM_ BO_ 977 "(all 0)";
|
||||
CM_ BO_ 978 "(all 0)";
|
||||
CM_ BO_ 979 "(all 0)";
|
||||
CM_ BO_ 980 "(all 0)";
|
||||
CM_ SG_ 1280 NEW_SIGNAL_3_SPEED_DEPENDANT "I dont know what this is but it IS speed dependant";
|
||||
|
||||
CM_ "hyundai_canfd.dbc starts here";
|
||||
|
||||
BO_ 53 ACCELERATOR: 32 XXX
|
||||
@@ -619,7 +283,7 @@ BO_ 160 WHEEL_SPEEDS: 24 XXX
|
||||
SG_ WHL_SpdRLVal : 96|14@1+ (0.03125,0) [0|0] "km^h" XXX
|
||||
SG_ WHL_SpdRRVal : 112|14@1+ (0.03125,0) [0|0] "km^h" XXX
|
||||
|
||||
BO_ 203 LFA_ALT: 24 CGW_CCU
|
||||
BO_ 203 ADAS_CMD_35_10ms: 24 CGW_CCU
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|0] "0" FCU_C,GW_RGW,MDPS,SFA
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|0] "0" FCU_C,GW_RGW,MDPS,SFA
|
||||
SG_ ADAS_ActvACISta : 24|4@1+ (1,0) [0|0] "" GW_RGW,MDPS,SFA
|
||||
@@ -629,42 +293,17 @@ BO_ 203 LFA_ALT: 24 CGW_CCU
|
||||
SG_ FCA_ESA_ActvSta : 56|2@1+ (1,0) [0|0] "" GW_RGW,MDPS,SFA
|
||||
SG_ FCA_ESA_TqBstGainVal : 64|8@1+ (0.004,0) [0|0] "" GW_RGW,MDPS,SFA
|
||||
|
||||
BO_ 234 MDPS: 24 SFA
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|0] "" CGW_CCU,ESC,ICSC,RCU,RWA,RWS,VPC_C
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|0] "" CGW_CCU,ESC,ICSC,RCU,RWA,RWS,VPC_C
|
||||
SG_ MDPS_WrngLmpSta : 24|3@1+ (1,0) [0|0] "" CGW_CCU,ESC,ICSC,RCU,RWA,RWS
|
||||
SG_ MDPS_Typ : 27|3@1+ (1,0) [0|0] "" CGW_CCU,ICSC,RWA
|
||||
SG_ MDPS_EngIdleRpmReq : 30|2@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_VsmPlgInSta : 32|2@1+ (1,0) [0|0] "flag" ESC,ICSC,RCU,RWA
|
||||
SG_ MDPS_VsmDfctvSta : 34|2@1+ (1,0) [0|0] "" ESC,ICSC,RCU,RWA
|
||||
SG_ MDPS_VsmSigErrSta : 36|2@1+ (1,0) [0|0] "" ESC,RCU,RWA
|
||||
SG_ MDPS_PaPlugInSta : 38|2@1+ (1,0) [0|0] "" CGW_CCU,ESC,RCU,RWA
|
||||
SG_ MDPS_PaModeSta : 40|4@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_PaCanfltSta : 44|2@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_LkaPlgInSta : 46|2@1+ (1,0) [0|0] "" CGW_CCU,ICSC,RWA
|
||||
SG_ MDPS_LkaToiActvSta : 48|2@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_LkaToiUnblSta : 50|2@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_LkaToiFltSta : 52|2@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_LkaFailSta : 54|2@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_ResetOpSta : 59|2@1+ (1,0) [0|0] "" Vector__XXX
|
||||
SG_ MDPS_CurrModVal : 61|3@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_OutTqVal : 64|12@1+ (0.1,-204.8) [0|0] "Nm" CGW_CCU,ESC,ICSC,RCU,RWA
|
||||
SG_ MDPS_VsmActResp : 76|2@1+ (1,0) [0|0] "" ESC,RCU,RWA
|
||||
SG_ Reprogram_State_MDPS : 78|2@1+ (1,0) [0|0] "" CGW_CCU
|
||||
SG_ MDPS_StrTqSnsrVal : 80|13@1+ (1,-4095) [0|4095] "" CGW_CCU,ESC,ICSC,RCU,RWA,VPC_C
|
||||
SG_ MDPS_PaStrAnglVal : 96|16@1- (0.1,0) [0|0] "Deg" CGW_CCU,RWA
|
||||
SG_ MDPS_LoamModSta : 112|2@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_HDPSpprtSWVer : 114|5@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_ADASAciActvSta : 120|4@1+ (1,0) [0|0] "" CGW_CCU,ESC,RWA,RWS
|
||||
SG_ MDPS_ADASAciPluginSta : 124|2@1+ (1,0) [0|0] "" RWA
|
||||
SG_ MDPS_ADAS_AciFltSig : 126|2@1+ (1,0) [0|0] "" CGW_CCU,ESC,RWA
|
||||
SG_ MDPS_EstStrAnglVal : 128|16@1- (0.1,0) [0|0] "Deg" CGW_CCU,RWA,RWS
|
||||
SG_ MDPS_ADASAciActvSta_Lv2 : 144|4@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_ADAS_AciFltSig_Lv2 : 148|3@1+ (1,0) [0|0] "" CGW_CCU,RWA
|
||||
SG_ MDPS_TpaPlugInSta : 152|2@1+ (1,0) [0|0] "" RWA,VPC_C
|
||||
SG_ MDPS_TpaCanfltSta : 154|2@1+ (1,0) [0|0] "" RWA,VPC_C
|
||||
SG_ MDPS_TpaModeSta : 156|4@1+ (1,0) [0|0] "" RWA,VPC_C
|
||||
SG_ MDPS_TpaStrAnglVal : 160|16@1- (0.1,0) [0|0] "Deg" RWA,VPC_C
|
||||
BO_ 234 MDPS: 24 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_ACTIVE : 48|1@0+ (1,0) [0|16777215] "" XXX
|
||||
SG_ LKA_FAULT : 54|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ STEERING_OUT_TORQUE : 64|12@1+ (0.1,-204.8) [0|65535] "" XXX
|
||||
SG_ STEERING_COL_TORQUE : 80|13@1+ (1,-4095) [0|4095] "" XXX
|
||||
SG_ STEERING_ANGLE : 96|16@1- (0.1,0) [0|255] "deg" XXX
|
||||
SG_ STEERING_ANGLE_2 : 128|16@1- (0.1,0) [0|65535] "deg" XXX
|
||||
SG_ LKA_ANGLE_ACTIVE : 145|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ LKA_ANGLE_FAULT : 149|1@0+ (1,0) [0|1] "" XXX
|
||||
|
||||
BO_ 256 ACCELERATOR_BRAKE_ALT: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
@@ -680,24 +319,22 @@ BO_ 261 ACCELERATOR_ALT: 32 XXX
|
||||
BO_ 272 LKAS_ALT: 32 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_OptUsmSta : 24|3@1+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ LKA_RcgSta : 27|3@1+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ LKA_LHLnWrnSta : 30|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_RHLnWrnSta : 32|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_HndsoffSnd : 34|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_StrSnd : 36|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_SysIndReq : 38|3@1+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ StrTqReqVal : 41|11@1+ (1,-1024) [0|4095] "" XXX
|
||||
SG_ ActToiSta : 52|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ ToiFltSta : 54|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_MODE : 24|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ LKA_AVAILABLE : 27|2@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ LKA_ICON : 38|2@1+ (1,0) [0|255] "" XXX
|
||||
SG_ FCA_SYSWARN : 40|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ TORQUE_REQUEST : 41|11@1+ (1,-1024) [0|4095] "" XXX
|
||||
SG_ STEER_REQ : 52|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_SysWrn : 60|4@1+ (1,0) [0|15] "" ADAS_DRV
|
||||
SG_ Damping_Gain : 64|8@1+ (1,0) [0|255] "" CGW
|
||||
SG_ LKA_ASSIST : 62|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ STEER_MODE : 65|3@1+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_2 : 70|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ LKAS_ANGLE_ACTIVE : 77|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ LKA_UsmMod : 80|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ HAS_LANE_SAFETY : 80|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ ADAS_StrAnglReqVal : 82|14@1- (0.1,0) [0|176.7] "Deg" GW_RGW,MDPS,SFA
|
||||
SG_ ADAS_ACIAnglTqRedcGainVal : 96|8@1+ (0.004,0) [0|1] "" GW_RGW,MDPS,SFA
|
||||
SG_ FCA_ESA_CtrlSta : 107|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DAMP_FACTOR : 64|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 282 FR_CMR_01_10ms: 16 FR_CMR
|
||||
SG_ FR_CMR_Crc1Val : 0|16@1+ (1,0) [0|0] "" Dummy,IBU_HS,vBDM
|
||||
@@ -731,31 +368,21 @@ BO_ 293 STEERING_SENSORS: 16 XXX
|
||||
SG_ STEERING_RATE : 40|8@1+ (4,0) [0|1016] "deg/s" XXX
|
||||
|
||||
BO_ 298 LFA: 16 ADRV
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" CLU,CGW
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" CLU,CGW
|
||||
SG_ LKA_OptUsmSta : 24|3@1+ (1,0) [0|7] "" CLU,CGW
|
||||
SG_ LKA_RcgSta : 27|3@1+ (1,0) [0|7] "" CLU,CGW
|
||||
SG_ LKA_LHLnWrnSta : 30|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ LKA_RHLnWrnSta : 32|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ LKA_HndsoffSnd : 34|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ LKA_StrSnd : 36|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ LKA_SysIndReq : 38|3@1+ (1,0) [0|7] "" CLU,RR_C_RDR,CGW
|
||||
SG_ StrTqReqVal : 41|11@1+ (1,-1024) [0|4095] "" XXX
|
||||
SG_ ActToiSta : 52|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ ToiFltSta : 54|2@1+ (1,0) [0|3] "" CGW
|
||||
SG_ LFA_BUTTON : 56|1@0+ (1,0) [0|255] "" XXX
|
||||
SG_ BCA_Rear_WrnSta : 57|3@1+ (1,0) [0|255] "" ADRV
|
||||
SG_ LKA_SysWrn : 60|4@1+ (1,0) [0|15] "" CLU,CGW
|
||||
SG_ FCA_LO_WrnSta : 64|1@1+ (1,0) [0|1] "" ADRV
|
||||
SG_ FCA_LS_WrnSta : 68|1@1+ (1,0) [0|1] "" ADRV
|
||||
SG_ LKA_OnOffEquip2Sta : 72|2@1+ (1,0) [0|255] "" ADRV
|
||||
SG_ LKA_UsmMod : 80|2@1+ (1,0) [0|3] "" CLU,CGW
|
||||
SG_ Info_PedtrnDst : 84|3@0+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ ELK_SysFlrSta : 85|5@1+ (1,0) [0|31] "" ADRV
|
||||
SG_ ELK_SymbDisp : 90|3@1+ (1,0) [0|7] "" ADRV
|
||||
SG_ FCA_ESA_WrnSta : 93|1@1+ (1,0) [0|7] "" ADRV
|
||||
SG_ FCA_ESA_CtrlSta : 101|1@1+ (1,0) [0|7] "" ADRV
|
||||
SG_ Damping_Gain : 104|8@1+ (1,0) [0|255] "" CGW
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_MODE : 24|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ NEW_SIGNAL_1 : 27|2@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ LKA_ICON : 38|2@1+ (1,0) [0|255] "" XXX
|
||||
SG_ TORQUE_REQUEST : 41|11@1+ (1,-1024) [0|4095] "" XXX
|
||||
SG_ STEER_REQ : 52|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_ASSIST : 62|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ STEER_MODE : 65|3@1+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_2 : 70|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ NEW_SIGNAL_4 : 72|4@1+ (1,0) [0|15] "" XXX
|
||||
SG_ HAS_LANE_SAFETY : 80|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DAMP_FACTOR : 104|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 304 GEAR_SHIFTER: 16 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
@@ -1286,119 +913,14 @@ BO_ 1264 LOCAL_TIME: 8 XXX
|
||||
|
||||
CM_ SG_ 96 BRAKE_PRESSURE "User applied brake pedal pressure. Ramps from computer applied pressure on falling edge of cruise. Cruise cancels if !=0";
|
||||
CM_ SG_ 101 BRAKE_POSITION "User applied brake pedal position, max is ~700. Signed on some vehicles";
|
||||
CM_ BO_ 203 "Known in official DBC as ADAS_CMD_35_10ms";
|
||||
CM_ SG_ 203 ADAS_ActvACISta "ADAS Active AngleControlInterface State";
|
||||
CM_ SG_ 203 ADAS_ActvACILvl2Sta "ADAS Active AngleControlInterface Level 2 State";
|
||||
CM_ SG_ 203 ADAS_StrAnglReqVal "(LFA) ADAS Steering Angle Request Value; Capped at 119.9;";
|
||||
CM_ SG_ 203 ADAS_ACIAnglTqRedcGainVal "(LFA) ADAS AngleControlInterface Angle Torque Reduction Gain Value";
|
||||
CM_ SG_ 203 FCA_ESA_ActvSta "FCA_ESA Active State";
|
||||
CM_ SG_ 203 FCA_ESA_TqBstGainVal "FCA_ESA Torque Boost Gain Value";
|
||||
CM_ BO_ 234 "Named MDPS_01_10ms on the official DBC.";
|
||||
CM_ SG_ 234 CHECKSUM "The data area for CRC calculation is based on the data length (DLC) of the message DB.
|
||||
|
||||
The CRC shall be calculated over the entire data block (excluding the CRC bytes) including the user data, alive counter and Data ID
|
||||
|
||||
|
||||
|
||||
- CRC Polynomial (0x1021) , In";
|
||||
CM_ SG_ 234 COUNTER "For the first transmission request for a data element the counter shall be initialized with 0 and shall be incremented by 1 for every subsequent send request.
|
||||
|
||||
When the counter reaches the maximum value(0xFF), then it shall restart with 0 for the next s";
|
||||
CM_ SG_ 234 MDPS_WrngLmpSta "The signal indicates the ststus of the MDPS Warning lamp";
|
||||
CM_ SG_ 234 MDPS_Typ "Information regarding the type of MDPS. (C-MDPS / R-MDPS / SbW)";
|
||||
CM_ SG_ 234 MDPS_EngIdleRpmReq "This signal indicates the request status for engine idle rpm up according to MDPS fast rotation.";
|
||||
CM_ SG_ 234 MDPS_VsmPlgInSta "This signal indicates whether the VSM function of MDPS is plugged in or not.";
|
||||
CM_ SG_ 234 MDPS_VsmDfctvSta "Information regarding the MDPS defective Indication For VSM";
|
||||
CM_ SG_ 234 MDPS_VsmSigErrSta "Information indicating VSM signal status";
|
||||
CM_ SG_ 234 MDPS_PaPlugInSta "This signal indicates whether the PA function of MDPS is plugged in or not.";
|
||||
CM_ SG_ 234 MDPS_PaModeSta "This signal indicates the status of the PA steering function.";
|
||||
CM_ SG_ 234 MDPS_PaCanfltSta "This Signal should be used by only PA
|
||||
|
||||
This signal indicates whether the MDPS is defective in PA cooperation control.
|
||||
|
||||
This signal is set as '1' only when MDPS Detects CAN Failure(TIMEOUT, Signal Error) of PA CAN Message";
|
||||
CM_ SG_ 234 MDPS_LkaPlgInSta "This signal indicates whether the LKA function of MDPS is plugged in or not.";
|
||||
CM_ SG_ 234 MDPS_LkaToiActvSta "This flag is set to 1 in response to the LKA Controller requesting the activation of the torque interface and set back to 0 in response to the LKA Controller requesting the de-activation of the torque interface.";
|
||||
CM_ SG_ 234 MDPS_LkaToiUnblSta "This is a flag that is set when the MDPS is not faulty, but is temporarily unable to activate the TOI due to steering torque limiting e.g. when the supply voltage is too low.";
|
||||
CM_ SG_ 234 MDPS_LkaToiFltSta "This fault flag is set when a fault within the MDPS system has been detected such that the LKA TOI can no longer function. CAN failures, internal MDPS failures, and LKA controller logic failures are all reported by this flag. Failures reported by the LKA";
|
||||
CM_ SG_ 234 MDPS_LkaFailSta "This fault flag is set whilst the MDPS TOI is in a fail state and has not yet recovered from it. This could either be due to an MDPS detected fault (as communicated by the MDPS_LkaToiFltSta' flag) or an LKA detected fault (as communicated by the LKA_";
|
||||
CM_ SG_ 234 MDPS_ResetOpSta "Information regarding the state of reset";
|
||||
CM_ SG_ 234 MDPS_CurrModVal "This signal indicates flex steer parameter value in MDPS.
|
||||
|
||||
|
||||
|
||||
For information about flex steer mode set by user, refer to MDPS_FlxStrSta signal.";
|
||||
CM_ SG_ 234 MDPS_OutTqVal "MDPS column torque
|
||||
|
||||
this signal has direction information.
|
||||
|
||||
'+' Value means Counter clock wise rotation.
|
||||
|
||||
'-' value means Clock wise rotation.";
|
||||
CM_ SG_ 234 MDPS_VsmActResp "Information of VSM Tqrque Intervention Act Response";
|
||||
CM_ SG_ 234 Reprogram_State_MDPS "Information regarding the reprogram state";
|
||||
CM_ SG_ 234 MDPS_StrTqSnsrVal "Steering torque sensor value
|
||||
|
||||
|
||||
|
||||
Physical Value > 0: Left Direction (CCW)
|
||||
|
||||
Physical Value < 0: Right Direction (CW)
|
||||
|
||||
|
||||
|
||||
this signal has direction information.
|
||||
|
||||
'+' Value means Counter clock wise rotation.
|
||||
|
||||
'-' value means Clock wise rotation. (Original definition was (0.005,-20.48) [0|0] but it's different from all OP expects)";
|
||||
CM_ SG_ 234 MDPS_PaStrAnglVal "This value is used to inform PA of a compensated steering wheel angle by MDPS. The signal is signed 16bits.
|
||||
|
||||
|
||||
|
||||
(PH) = (HEX) 0.1 (for 0 < HEX 32767) or
|
||||
|
||||
= (HEX - 65536) 0.1 (for HEX > 32767) [Deg]
|
||||
|
||||
|
||||
|
||||
this signal has direction information.
|
||||
|
||||
'+' V";
|
||||
CM_ SG_ 234 MDPS_LoamModSta "The signal represent status of the LOAM(Loss Of Assist Mitigation) Mode";
|
||||
CM_ SG_ 234 MDPS_HDPSpprtSWVer "This signal indicates HDP-MDPS Control Requirement Spec Version";
|
||||
CM_ SG_ 234 MDPS_ADASAciActvSta "State for angle control";
|
||||
CM_ SG_ 234 MDPS_ADASAciPluginSta "This signal indicates whether the ADASAci function of MDPS is plugged in or not.";
|
||||
CM_ SG_ 234 MDPS_ADAS_AciFltSig "MDPS Fault Status for HDP Function";
|
||||
CM_ SG_ 234 MDPS_EstStrAnglVal "This value is used to inform of a compensated steering wheel angle by MDPS . The signal is signed 16bits, and made by motor position sensor.
|
||||
|
||||
|
||||
|
||||
(PH) = (HEX) 0.1 (for 0 < HEX 32767) or
|
||||
|
||||
= (HEX - 65536) 0.1 (for HEX > 32767) [Deg]
|
||||
|
||||
|
||||
|
||||
this signal";
|
||||
CM_ SG_ 234 MDPS_ADASAciActvSta_Lv2 "States for angle control (LV2)";
|
||||
CM_ SG_ 234 MDPS_ADAS_AciFltSig_Lv2 "MDPS Fault Status for LV2 Angle Control Function";
|
||||
CM_ SG_ 234 MDPS_TpaPlugInSta "This signal indicates whether the TPA function of MDPS is plugged in or not.";
|
||||
CM_ SG_ 234 MDPS_TpaCanfltSta "This Signal should be used by only TPA
|
||||
|
||||
This signal indicates whether the MDPS is defective in TPA cooperation control.
|
||||
|
||||
This signal is set as '1' only when MDPS Detects CAN Failure(TIMEOUT, Signal Error) of TPA CAN Message";
|
||||
CM_ SG_ 234 MDPS_TpaModeSta "This signal indicates the status of the TPA steering function.";
|
||||
CM_ SG_ 234 MDPS_TpaStrAnglVal "This value is used to inform TPA of a compensated steering wheel angle by MDPS. The signal is signed 16bits.
|
||||
|
||||
|
||||
|
||||
(PH) = (HEX) 0.1 (for 0 < HEX 32767) or
|
||||
|
||||
= (HEX - 65536) 0.1 (for HEX > 32767) [Deg]";
|
||||
CM_ BO_ 272 "Alternative LKAS message, used on cars such as 2023 Ioniq 6, 2nd gen Kona. Matches LKAS except size is 32 bytes";
|
||||
CM_ SG_ 272 ToiFltSta "This fault flag is set when a fault in the LKA system has been detected by the LKA ECU such that LKA can no longer function. CAN failures, internal video ECU failures, hard-wired component (e.g. master switch) failures and other system logic failures are";
|
||||
CM_ SG_ 272 LKA_AVAILABLE "Angle control cars: 3 when LKA is generally available, goes to 0 during changes with LFA";
|
||||
CM_ SG_ 272 ADAS_StrAnglReqVal "(LKAS) ADAS Steering Angle Request Value; Capped at 176.7; tracks MDPS->STEERING_ANGLE when not engaged, not STEERING_SENSORS->STEERING_ANGLE";
|
||||
CM_ SG_ 272 ADAS_ACIAnglTqRedcGainVal "(LKAS) ADAS AngleControlInterface Angle Torque Reduction Gain Value";
|
||||
CM_ BO_ 282 "Sent by the camera containing DAW (Driver Attention Warning) information and information about HBA (High Beam Assist).";
|
||||
@@ -1420,24 +942,7 @@ CM_ SG_ 282 FR_CMR_SCCEquipSta "This signal indicates equipment for SCC";
|
||||
CM_ SG_ 282 FR_CMR_ReqADASMapMsgVal "This signal indicates an ADAS map message request from FR_CMR to H_U. Each bit indicates the request messages as follows. - Bit 0 : H_U_NAVI_V2_STUB_E - Bit 1 : HU_NAVI_V2_PROSHORT_E_00 (곡률) - Bit 2 : HU_NAVI_V2_PROSHORT_E_00 (곡률 외 정보)";
|
||||
CM_ SG_ 282 FR_CMR_SwVer1Val "This signal indicates a major version of FR_CMR software. If FR_CMR software version is A.00, 'A' and '00' mean major and minor version respectively.";
|
||||
CM_ SG_ 282 FR_CMR_SwVer2Val "This signal indicates a minor version of FR_CMR software. If FR_CMR software version is A.00, 'A' and '00' mean major and minor version respectively.";
|
||||
CM_ BO_ 298 "This message controls steering and alerts regarding lateral control. Formerly known as LFA.
|
||||
|
||||
Node is flagged as ADRV, but in reality this signal can be seen from either the FR_CMR (front camera) or the ADRV (adas ecu) for some trims.";
|
||||
CM_ SG_ 298 LKA_OptUsmSta "LKA_OptionUsmStatus ##2G##LDW_LKA - LKA11 - CF_LKA_Opt_USM";
|
||||
CM_ SG_ 298 LKA_RcgSta "LKA_RecognitionStatus ##2G##LDW_LKA - LKA11 - CF_LKA_LaneRecogState";
|
||||
CM_ SG_ 298 LKA_LHLnWrnSta "LKA_LHLaneWarningStatus ##2G##LDW_LKA - LKA11 - CF_LKA_LHWarning";
|
||||
CM_ SG_ 298 LKA_RHLnWrnSta "LKA_RHLaneWarningStatus ##2G##LDW_LKA - LKA11 - CF_LKA_RHWarning";
|
||||
CM_ SG_ 298 LKA_HndsoffSnd "LKA_HandsoffSound ##2G##LDW_LKA - LKA11 - CF_LKA_HandsOff_Snd";
|
||||
CM_ SG_ 298 LKA_StrSnd "LKA_SteeringSound ##2G##LDW_LKA - LKA11 - CF_LKA_Steer_Snd";
|
||||
CM_ SG_ 298 LKA_SysIndReq "LKA_SystemIndicatorRequest ##2G##LDW_LKA - LKA11 - CF_LKA_SymbolState";
|
||||
CM_ SG_ 298 StrTqReqVal "This is the driver torque overlay demand value. A negative value represents a torque that would accelerate the steering wheel in a clockwise direction. This signal is always zero whilst the TOI is inactive. (the official DBC defines this as SG_ StrTqReqVal : xx|11@1+ (0.0078125,-8) [-8|7.9921875] \"Nm\" XXX but I am not changing it since it has a broader impact on the OP code)";
|
||||
CM_ SG_ 298 ActToiSta "This is a flag that is set to 1 when requesting the steering to activate the torque overlay interface (TOI). This must be done before an attempt is made to request non-zero steering torque overlay.";
|
||||
CM_ SG_ 298 ToiFltSta "This fault flag is set when a fault in the LKA system has been detected by the LKA ECU such that LKA can no longer function. CAN failures, internal video ECU failures, hard-wired component (e.g. master switch) failures and other system logic failures are";
|
||||
CM_ SG_ 298 LKA_SysWrn "A signal that provides additional information on the operation of the LKA system for the HMI to display to the driver. This includes additional fault information, reasons for unavailability of the system and additional warnings like the hands-off warning";
|
||||
CM_ SG_ 298 FCA_LS_WrnSta "(Reverse Engineered) This signal was observed while ELK was taking over to prevent a blind spot collision.";
|
||||
CM_ SG_ 298 LKA_UsmMod "This signal indicates LKA USM Mode";
|
||||
CM_ SG_ 298 ELK_SymbDisp "Emergency Lane-Keeping";
|
||||
CM_ SG_ 298 Damping_Gain "ADAS Damping Gain for MDPS";
|
||||
CM_ SG_ 298 NEW_SIGNAL_4 "todo: figure out why always set to 9";
|
||||
CM_ SG_ 352 SET_ME_9 "has something to do with AEB settings";
|
||||
CM_ SG_ 373 ACCEnable "Likely a copy of CAN's TCS13->ACCEnable";
|
||||
CM_ SG_ 373 DriverBraking "Likely derived from BRAKE->BRAKE_POSITION";
|
||||
@@ -1544,56 +1049,14 @@ VAL_ 96 TRACTION_AND_STABILITY_CONTROL 0 "On" 5 "Limited" 1 "Off";
|
||||
VAL_ 112 GEAR 0 "P" 5 "D" 6 "N" 7 "R";
|
||||
VAL_ 203 ADAS_ActvACISta 0 "INIT" 1 "INACTIVE" 2 "ACTIVE35(ACTIVE)" 3 "ACTIVE33(Redundancy)" 4 "RESERVED" 5 "RESERVED" 6 "RESERVED" 7 "RESERVED" 8 "RESERVED" 9 "RESERVED" 10 "RESERVED" 11 "RESERVED" 12 "RESERVED" 13 "RESERVED" 14 "RESERVED" 15 "RESERVED";
|
||||
VAL_ 203 ADAS_ActvACILvl2Sta 0 "INIT" 1 "INACTIVE" 2 "ACTIVE35(ACTIVE)" 3 "RESERVED" 4 "RESERVED" 5 "RESERVED" 6 "RESERVED" 7 "RESERVED" 8 "RESERVED" 9 "RESERVED" 10 "RESERVED" 11 "RESERVED" 12 "RESERVED" 13 "RESERVED" 14 "RESERVED" 15 "RESERVED";
|
||||
VAL_ 203 ADAS_StrAnglReqVal 0 "0 (0x000~0x3FFF valid range)" 16383 "16383 (0x000~0x3FFF valid range)";
|
||||
VAL_ 203 ADAS_StrAnglReqVal 0 "0x0x000~0x3FFF:Real Values" 16383 "0x0x000~0x3FFF:Real Values";
|
||||
VAL_ 203 ADAS_ACIAnglTqRedcGainVal 0 "0x0x00~0xFA:Real Values" 250 "0x0x00~0xFA:Real Values" 251 "RESERVED" 252 "RESERVED" 253 "RESERVED" 254 "RESERVED" 255 "RESERVED";
|
||||
VAL_ 203 FCA_ESA_ActvSta 0 "Inactive" 1 "Active" 2 "RESERVED" 3 "RESERVED";
|
||||
VAL_ 203 FCA_ESA_TqBstGainVal 0 "0x0x00~0xFA:Real Values" 250 "0x0x00~0xFA:Real Values" 251 "RESERVED" 252 "RESERVED" 253 "RESERVED" 254 "RESERVED" 255 "RESERVED";
|
||||
VAL_ 234 MDPS_WrngLmpSta 0 "MDPS Malfunction Warning lamp OFF" 1 "MDPS Malfunciton Warning lamp BLANKING(2Hz)" 2 "MDPS Malfunction Warning lamp ON" 3 "MDPS Malfunction Warning lamp BLANKING(1Hz)" 4 "RESERVED" 5 "RESERVED" 6 "RESERVED" 7 "Error Indicator";
|
||||
VAL_ 234 MDPS_Typ 0 "C-MDPS" 1 "R-MDPS(Dual Pinion)" 2 "R-MDPS(Belt)" 3 "SbW" 4 "RESERVED" 5 "RESERVED" 6 "RESERVED" 7 "Error Indicator";
|
||||
VAL_ 234 MDPS_EngIdleRpmReq 0 "Current Consumption is Low" 1 "Current Consumption is High" 2 ":RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_VsmPlgInSta 0 "The VSM function of MDPS is not plugged in (unplugged)." 1 "The VSM function of MDPS is plugged in." 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_VsmDfctvSta 0 "MDPS is not defective" 1 "MDPS is defective" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_VsmSigErrSta 0 "VSM1 signal is not error" 1 "VSM signal is error" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_PaPlugInSta 0 "The PA function of MDPS is not plugged in (unplugged)." 1 "The PA function of MDPS is plugged in." 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_PaModeSta 0 "RESERVED" 1 "Steering still in initialization phase" 2 "Steering ready, waits for PA command" 3 "Steering set in standby by PA" 4 "Steering requested to go to first activation step" 5 "Steering requested to go to final activation step" 6 "Steering went to error internally" 7 "Steering aborted the automatic function" 8 "RESERVED" 9 "RESERVED" 10 "RESERVED" 11 "RESERVED" 12 "RESERVED" 13 "RESERVED" 14 "RESERVED" 15 "Error Indicator";
|
||||
VAL_ 234 MDPS_PaCanfltSta 0 "No Failure" 1 "Failure about Pa can message" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_LkaPlgInSta 0 "The LKA function of MDPS is not plugged in (unplugged)." 1 "The LKA function of MDPS is plugged in." 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_LkaToiActvSta 0 "Deactivated" 1 "Activated" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_LkaToiUnblSta 0 "Available" 1 "Unavailable" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_LkaToiFltSta 0 "No fault" 1 "Faulty" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_LkaFailSta 0 "Not in fail state" 1 "In fail state" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_ResetOpSta 0 "Normal" 1 "Reset Complete" 2 "Reset Fail" 3 "RESERVED";
|
||||
VAL_ 234 MDPS_CurrModVal 0 "Comfort Mode" 1 "Sport Mode" 2 "Sport+ Mode" 3 "Chauffeur Mode" 4 "Mild Mode" 5 "Drift Mode" 6 "RESERVED" 7 "Error Indicator";
|
||||
VAL_ 234 MDPS_OutTqVal 0 "0x0x000~0xFFD:real values" 4093 "0x0x000~0xFFD:real values" 4094 "RESERVED" 4095 "Error Indicator";
|
||||
VAL_ 234 MDPS_VsmActResp 0 "VSM Control inactivated" 1 "VSM Control Activated" 2 "RESERVED" 3 "Invalid";
|
||||
VAL_ 234 Reprogram_State_MDPS 0 "normal operation" 1 "reprogramming" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_StrTqSnsrVal 0 "0 (0x000~0x7FFD valid range)" 8189 "32765 (0x000~0x1FFD valid range)" 8190 "RESERVED" 8191 "Error Indicator";
|
||||
VAL_ 234 MDPS_PaStrAnglVal 0 "0 (0x000~0x7FFD valid range)" 32765 "32765 (0x000~0x7FFD valid range)" 32766 "Not Initialized" 32767 "Error Indicator" 32768 "32768 (0x8000~0xFFFF valid range)" 65535 "65535 (0x8000~0xFFFF valid range)";
|
||||
VAL_ 234 MDPS_LoamModSta 0 "Normal" 1 "Loam Flag Warning Display" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_HDPSpprtSWVer 0 "HDP-MDPS Control Requirement Version" 1 "HDP-MDPS Control Requirement Version" 2 "HDP-MDPS Control Requirement Version" 3 "HDP-MDPS Control Requirement Version" 4 "HDP-MDPS Control Requirement Version" 5 "HDP-MDPS Control Requirement Version" 6 "HDP-MDPS Control Requirement Version" 7 "HDP-MDPS Control Requirement Version" 8 "HDP-MDPS Control Requirement Version" 9 "HDP-MDPS Control Requirement Version" 10 "HDP-MDPS Control Requirement Version" 11 "HDP-MDPS Control Requirement Version" 12 "HDP-MDPS Control Requirement Version" 13 "HDP-MDPS Control Requirement Version" 14 "HDP-MDPS Control Requirement Version" 15 "HDP-MDPS Control Requirement Version" 16 "HDP-MDPS Control Requirement Version" 17 "HDP-MDPS Control Requirement Version" 18 "HDP-MDPS Control Requirement Version" 19 "HDP-MDPS Control Requirement Version" 20 "HDP-MDPS Control Requirement Version" 21 "HDP-MDPS Control Requirement Version" 22 "HDP-MDPS Control Requirement Version" 23 "HDP-MDPS Control Requirement Version" 24 "HDP-MDPS Control Requirement Version" 25 "HDP-MDPS Control Requirement Version" 26 "HDP-MDPS Control Requirement Version" 27 "HDP-MDPS Control Requirement Version" 28 "HDP-MDPS Control Requirement Version" 29 "HDP-MDPS Control Requirement Version" 30 "HDP-MDPS Control Requirement Version" 31 "HDP-MDPS Control Requirement Version";
|
||||
VAL_ 234 MDPS_ADASAciActvSta 0 "INIT" 1 "INACTIVE" 2 "ACTIVE35(ACTIVE)" 3 "ACTIVE33(Redundancy)" 4 "RESERVED" 5 "RESERVED" 6 "RESERVED" 7 "RESERVED" 8 "RESERVED" 9 "RESERVED" 10 "RESERVED" 11 "RESERVED" 12 "RESERVED" 13 "RESERVED" 14 "RESERVED" 15 "RESERVED";
|
||||
VAL_ 234 MDPS_ADASAciPluginSta 0 "ADASAciNotPlugged-in" 1 "ADASAciPlugged-in" 2 "RESERVED" 3 "ErrorIndicator";
|
||||
VAL_ 234 MDPS_ADAS_AciFltSig 0 "No Fault" 1 "MDPS Fault" 2 "Fault Except MDPS" 3 "Both Fault";
|
||||
VAL_ 234 MDPS_EstStrAnglVal 0 "0 (0x000~0x7FFD valid range)" 32765 "32765 (0x000~0x7FFD valid range)" 32766 "Not Initialized" 32767 "Error Indicator" 32768 "32768 (0x8000~0xFFFF valid range)" 65535 "65535 (0x8000~0xFFFF valid range)";
|
||||
VAL_ 234 MDPS_ADASAciActvSta_Lv2 0 "Not USED" 1 "INACTIVE" 2 "ACTIVE35(Active)" 3 "Reserved" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Reserved" 8 "Reserved" 9 "Reserved" 10 "Reserved" 11 "Reserved" 12 "Reserved" 13 "Reserved" 14 "Reserved" 15 "Reserved";
|
||||
VAL_ 234 MDPS_ADAS_AciFltSig_Lv2 0 "No Fault" 1 "MDPS Fault" 2 "Fault Except MDPS" 3 "Both Fault" 4 "Temporarily Unavailable" 5 "Temporarily Unavailable and MDPS Fault" 6 "Temporarily Unavailable and Fault Except MDPS" 7 "Temporarily Unavailable and Both Fault";
|
||||
VAL_ 234 MDPS_TpaPlugInSta 0 "The TPA function of MDPS is not plugged in (unplugged)" 1 "The TPA function of MDPS is plugged in" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_TpaCanfltSta 0 "No Failure" 1 "Failure about Tpa can message" 2 "RESERVED" 3 "Error Indicator";
|
||||
VAL_ 234 MDPS_TpaModeSta 0 "RESERVED" 1 "Steering still in initialization phase" 2 "Steering ready, waits for TPA command" 3 "Steering set in standby by TPA" 4 "Steering requested to go to first activation step activation step" 5 "Steering requested to go to final activation step" 6 "Steering went to error internally" 7 "Steering aborted the automatic function" 14 "RESERVED" 15 "Error Indicator";
|
||||
VAL_ 234 MDPS_TpaStrAnglVal 0 "0 (0x000~0x7FFD valid range)" 32765 "32765 (0x000~0x7FFD valid range)" 32766 "Not Initialized" 32767 "Error Indicator" 32768 "32768 (0x8000~0xFFFF valid range)" 65535 "65535 (0x8000~0xFFFF valid range)";
|
||||
VAL_ 272 LKA_OptUsmSta 0 "None LKA/LDW Option (Default)" 1 "LDW" 2 "LKA" 3 "Reserved" 4 "LDW Only (None LKA)" 5 "LDW only OFF (None LKA)" 6 "LDW/LKA OFF" 7 "Invalid";
|
||||
VAL_ 272 LKA_RcgSta 0 "Not Recognized" 1 "Left Lane Recognition" 2 "Right Lane Recognition" 3 "Full Lane Recognition" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Reserved";
|
||||
VAL_ 272 LKA_LHLnWrnSta 0 "No Warning" 1 "Lane Departure Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 272 LKA_RHLnWrnSta 0 "No Warning" 1 "Lane Departure Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 272 LKA_HndsoffSnd 0 "Off" 1 "Hands-off Sound Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 272 LKA_StrSnd 0 "Off" 1 "Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 272 LKA_SysIndReq 0 "Off" 1 "Unavailable_(Grey On)" 2 "Lane Recognized_(Green On)" 3 "Lane Departure_(Green Blink)" 4 "System Fail_(Orange On)" 5 "Not Calibrated_(Orange Blink)" 6 "Regulation_(Orange On)" 7 "Reserved";
|
||||
VAL_ 272 StrTqReqVal 2046 "Reserved" 2047 "Invalid";
|
||||
VAL_ 272 ActToiSta 0 "De-activate TOI" 1 "Activate TOI" 2 "Reserved" 3 "Error indicator";
|
||||
VAL_ 272 ToiFltSta 0 "No Fault" 1 "Fault" 2 "Reserved" 3 "Error indicatorr";
|
||||
VAL_ 272 LKA_SysWrn 0 "No Info" 1 "Reserved" 2 "Reserved" 3 "Reserved" 4 "Hands-Off Warning 1" 5 "Hands-Off Warning 2" 6 "Hands-Off Warning 3" 7 "Reserved" 8 "Reserved" 9 "System Automatic off" 10 "Reserved" 11 "Reserved" 12 "Reserved" 13 "Reserved" 14 "Reserved" 15 "System Fail";
|
||||
VAL_ 272 LKA_UsmMod 0 "NONE" 1 "LKA 1 mode" 2 "Reserved" 3 "LDW";
|
||||
VAL_ 272 ADAS_ACIAnglTqRedcGainVal 0 "0x0x00~0xFA:Real Values" 250 "0x0x00~0xFA:Real Values" 251 "RESERVED" 252 "RESERVED" 253 "RESERVED" 254 "RESERVED" 255 "RESERVED";
|
||||
VAL_ 234 LKA_FAULT 0 "ok" 1 "lka fault";
|
||||
VAL_ 272 LKA_MODE 1 "warning only" 2 "assist" 6 "off";
|
||||
VAL_ 272 LKA_ICON 0 "hidden" 1 "grey" 2 "green" 3 "flashing green";
|
||||
VAL_ 272 LKAS_ANGLE_ACTIVE 0 "off" 1 "not active" 2 "active";
|
||||
VAL_ 282 HBA_SysOptSta 0 "None HBA Option (Default)" 1 "HBA Option" 2 "Reserved" 3 "Error indicator";
|
||||
VAL_ 282 HBA_SysSta 0 "HBA Disable" 1 "HBA Enable & High Beam Off" 2 "HBA Enable & High Beam On" 3 "Reserved" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "System Fail";
|
||||
VAL_ 282 HBA_IndLmpReq 0 "HBA Indicator Lamp Off" 1 "HBA Indicator Lamp On" 2 "Reserved" 3 "Error indicator";
|
||||
@@ -1607,20 +1070,8 @@ VAL_ 282 DAW_WrnMsgSta 0 "No Warning" 1 "Rest Recommend Warning" 2 "Hands-Off TM
|
||||
VAL_ 282 DAW_TimeRstReq 0 "No signal" 1 "Time reset" 2 "Reserved" 3 "Error indicator";
|
||||
VAL_ 282 DAW_SnstvtyModRetVal 0 "Default" 1 "Late" 2 "Normal" 3 "Reserved" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Invalid";
|
||||
VAL_ 282 FR_CMR_SCCEquipSta 0 "Not Applied" 1 "Applied" 2 "Not used" 3 "Error Indicator";
|
||||
VAL_ 298 LKA_OptUsmSta 0 "None LKA/LDW Option (Default)" 1 "LDW" 2 "LKA" 3 "Reserved" 4 "LDW Only (None LKA)" 5 "LDW only OFF (None LKA)" 6 "LDW/LKA OFF" 7 "Invalid";
|
||||
VAL_ 298 LKA_RcgSta 0 "Not Recognized" 1 "Left Lane Recognition" 2 "Right Lane Recognition" 3 "Full Lane Recognition" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Reserved";
|
||||
VAL_ 298 LKA_LHLnWrnSta 0 "No Warning" 1 "Lane Departure Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 298 LKA_RHLnWrnSta 0 "No Warning" 1 "Lane Departure Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 298 LKA_HndsoffSnd 0 "Off" 1 "Hands-off Sound Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 298 LKA_StrSnd 0 "Off" 1 "Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 298 LKA_SysIndReq 0 "Off" 1 "Unavailable_(Grey On)" 2 "Lane Recognized_(Green On)" 3 "Lane Departure_(Green Blink)" 4 "System Fail_(Orange On)" 5 "Not Calibrated_(Orange Blink)" 6 "Regulation_(Orange On)" 7 "Reserved";
|
||||
VAL_ 298 StrTqReqVal 2046 "Reserved" 2047 "Invalid";
|
||||
VAL_ 298 ActToiSta 0 "De-activate TOI" 1 "Activate TOI" 2 "Reserved" 3 "Error indicator";
|
||||
VAL_ 298 ToiFltSta 0 "No Fault" 1 "Fault" 2 "Reserved" 3 "Error indicatorr";
|
||||
VAL_ 298 LKA_SysWrn 0 "No Info" 1 "Reserved" 2 "Reserved" 3 "Reserved" 4 "Hands-Off Warning 1" 5 "Hands-Off Warning 2" 6 "Hands-Off Warning 3" 7 "Reserved" 8 "Reserved" 9 "System Automatic off" 10 "Reserved" 11 "Reserved" 12 "Reserved" 13 "Reserved" 14 "Reserved" 15 "System Fail";
|
||||
VAL_ 298 FCA_LS_WrnSta 3 "ELK Steering to the right";
|
||||
VAL_ 298 LKA_UsmMod 0 "NONE" 1 "LKA 1 mode" 2 "Reserved" 3 "LDW";
|
||||
VAL_ 298 ELK_SymbDisp 3 "Evasive Action Taking Place";
|
||||
VAL_ 298 LKA_MODE 1 "warning only" 2 "assist" 6 "off";
|
||||
VAL_ 298 LKA_ICON 0 "hidden" 1 "grey" 2 "green" 3 "flashing green";
|
||||
VAL_ 304 PARK_BUTTON 1 "Pressed" 2 "Not Pressed";
|
||||
VAL_ 304 KNOB_POSITION 1 "R" 2 "N (on R side)" 3 "Centered" 4 "N (on D side)" 5 "D";
|
||||
VAL_ 304 GEAR 1 "P" 2 "R" 3 "N" 4 "D";
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -43,21 +43,19 @@ BU_: XXX CAMERA FRONT_RADAR ADRV APRK
|
||||
BO_ 80 LKAS: 16 XXX
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_OptUsmSta : 24|3@1+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ LKA_RcgSta : 27|3@1+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ LKA_LHLnWrnSta : 30|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_RHLnWrnSta : 32|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_HndsoffSnd : 34|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_StrSnd : 36|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_SysIndReq : 38|3@1+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ StrTqReqVal : 41|11@1+ (1,-1024) [0|4095] "" XXX
|
||||
SG_ ActToiSta : 52|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ ToiFltSta : 54|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ LKA_MODE : 24|3@1+ (1,0) [0|7] "" XXX
|
||||
SG_ LKA_AVAILABLE : 27|2@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ LKA_ICON : 38|2@1+ (1,0) [0|255] "" XXX
|
||||
SG_ FCA_SYSWARN : 40|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ TORQUE_REQUEST : 41|11@1+ (1,-1024) [0|4095] "" XXX
|
||||
SG_ STEER_REQ : 52|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|255] "" XXX
|
||||
SG_ LKA_SysWrn : 60|4@1+ (1,0) [0|15] "" ADAS_DRV
|
||||
SG_ Damping_Gain : 64|8@1+ (1,0) [0|255] "" CGW
|
||||
SG_ LKA_UsmMod : 80|2@1+ (1,0) [0|3] "" ADAS_DRV
|
||||
SG_ Info_PedtrnDst : 84|3@1+ (1,0) [0|7] "" ADAS_DRV
|
||||
SG_ LKA_ASSIST : 62|1@1+ (1,0) [0|1] "" XXX
|
||||
SG_ STEER_MODE : 65|3@1+ (1,0) [0|1] "" XXX
|
||||
SG_ NEW_SIGNAL_2 : 70|2@0+ (1,0) [0|3] "" XXX
|
||||
SG_ HAS_LANE_SAFETY : 80|1@0+ (1,0) [0|1] "" XXX
|
||||
SG_ DAMP_FACTOR : 64|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
BO_ 81 ADRV_0x51: 32 ADRV
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
@@ -227,27 +225,13 @@ BO_ 702 CAM_0x2be: 32 CAMERA
|
||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||
|
||||
CM_ BO_ 80 "Known in official DBC as L_ADAS_CMD_30_10ms";
|
||||
CM_ SG_ 80 StrTqReqVal "This is the driver torque overlay demand value. A negative value represents a torque that would accelerate the steering wheel in a clockwise direction. This signal is always zero whilst the TOI is inactive. (the official DBC defines this as SG_ StrTqReqVal : xx|11@1+ (0.0078125,-8) [-8|7.9921875] \"Nm\" XXX but I am not changing it since it has a broader impact on the OP code)";
|
||||
CM_ SG_ 80 ActToiSta "This is a flag that is set to 1 when requesting the steering to activate the torque overlay interface (TOI). This must be done before an attempt is made to request non-zero steering torque overlay.";
|
||||
CM_ SG_ 80 ToiFltSta "This fault flag is set when a fault in the LKA system has been detected by the LKA ECU such that LKA can no longer function. CAN failures, internal video ECU failures, hard-wired component (e.g. master switch) failures and other system logic failures are";
|
||||
CM_ SG_ 80 LKA_SysWrn "A signal that provides additional information on the operation of the LKA system for the HMI to display to the driver. This includes additional fault information, reasons for unavailability of the system and additional warnings like the hands-off warning";
|
||||
CM_ SG_ 80 LKA_UsmMod "This signal indicates LKA USM Mode";
|
||||
CM_ SG_ 80 Info_PedtrnDst "Distance of the nearest pedestrian";
|
||||
CM_ BO_ 676 "Contains signals with detailed lane line information. Used by ADAS ECU on HDA 2 vehicles to operate LFA.";
|
||||
|
||||
CM_ SG_ 80 HAS_LANE_SAFETY "If 0, hides LKAS 'Lane Safety' menu from vehicle settings";
|
||||
CM_ SG_ 676 LEFT_LANE_LINE "Left lane line confidence";
|
||||
CM_ SG_ 676 RIGHT_LANE_LINE "Right lane line confidence";
|
||||
VAL_ 80 LKA_OptUsmSta 0 "None LKA/LDW Option (Default)" 1 "LDW" 2 "LKA" 3 "Reserved" 4 "LDW Only (None LKA)" 5 "LDW only OFF (None LKA)" 6 "LDW/LKA OFF" 7 "Invalid";
|
||||
VAL_ 80 LKA_RcgSta 0 "Not Recognized" 1 "Full Lane Recognized" 2 "Left Line Recognized" 3 "Right Line Recognized" 4 "Reserved" 5 "Reserved" 6 "Reserved" 7 "Reserved";
|
||||
VAL_ 80 LKA_LHLnWrnSta 0 "No Warning" 1 "Lane Departure Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 80 LKA_RHLnWrnSta 0 "No Warning" 1 "Lane Departure Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 80 LKA_HndsoffSnd 0 "Off" 1 "Hands-off Sound Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 80 LKA_StrSnd 0 "Off" 1 "Warning" 2 "Reserved" 3 "Reserved";
|
||||
VAL_ 80 LKA_SysIndReq 0 "Off" 1 "Unavailable_(Grey On)" 2 "Lane Recognized_(Green On)" 3 "Lane Departure_(Green Blink)" 4 "System Fail_(Orange On)" 5 "Not Calibrated_(Orange Blink)" 6 "Regulation_(Orange On)" 7 "Reserved";
|
||||
VAL_ 80 ActToiSta 0 "De-activate TOI" 1 "Activate TOI" 2 "Reserved" 3 "Error indicator";
|
||||
VAL_ 80 ToiFltSta 0 "No Fault" 1 "Fault" 2 "Reserved" 3 "Error indicatorr";
|
||||
VAL_ 80 LKA_SysWrn 0 "No Info" 1 "Reserved" 2 "Reserved" 3 "Reserved" 4 "Hands-Off Warning 1" 5 "Hands-Off Warning 2" 6 "Reserved" 7 "Reserved" 8 "Reserved" 9 "System Automatic off" 10 "Reserved" 11 "Reserved" 12 "Reserved" 13 "Reserved" 14 "Reserved" 15 "System Fail";
|
||||
VAL_ 80 LKA_UsmMod 0 "NONE" 1 "LKA 1 mode" 2 "LKA 2 mode" 3 "LDW";
|
||||
VAL_ 80 LKA_ICON 0 "hidden" 1 "grey" 2 "green" 3 "flashing green" ;
|
||||
VAL_ 80 LKA_MODE 1 "warning only" 2 "assist" 6 "off" ;
|
||||
VAL_ 676 LEFT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence" 3 "High Confidence";
|
||||
VAL_ 676 RIGHT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence" 3 "High Confidence";
|
||||
|
||||
|
||||
@@ -47,7 +47,6 @@
|
||||
|
||||
static bool hyundai_canfd_alt_buttons = false;
|
||||
static bool hyundai_canfd_lka_steering_alt = false;
|
||||
static bool hyundai_canfd_angle_steering = false;
|
||||
|
||||
static unsigned int hyundai_canfd_get_lka_addr(void) {
|
||||
return hyundai_canfd_lka_steering_alt ? 0x110U : 0x50U;
|
||||
@@ -79,10 +78,6 @@ static void hyundai_canfd_rx_hook(const CANPacket_t *msg) {
|
||||
int torque_driver_new = ((msg->data[11] & 0x1fU) << 8U) | msg->data[10];
|
||||
torque_driver_new -= 4095;
|
||||
update_sample(&torque_driver, torque_driver_new);
|
||||
|
||||
int angle_meas_new = (msg->data[17] << 8) | msg->data[16];
|
||||
angle_meas_new = to_signed(angle_meas_new, 16);
|
||||
update_sample(&angle_meas, angle_meas_new);
|
||||
}
|
||||
|
||||
// cruise buttons
|
||||
@@ -146,7 +141,7 @@ static void hyundai_canfd_rx_hook(const CANPacket_t *msg) {
|
||||
}
|
||||
|
||||
static bool hyundai_canfd_tx_hook(const CANPacket_t *msg) {
|
||||
const TorqueSteeringLimits HYUNDAI_CANFD_TORQUE_STEERING_LIMITS = {
|
||||
const TorqueSteeringLimits HYUNDAI_CANFD_STEERING_LIMITS = {
|
||||
.max_torque = 270,
|
||||
.max_rt_delta = 112,
|
||||
.max_rate_up = 2,
|
||||
@@ -163,62 +158,16 @@ static bool hyundai_canfd_tx_hook(const CANPacket_t *msg) {
|
||||
.has_steer_req_tolerance = true,
|
||||
};
|
||||
|
||||
const AngleSteeringLimits HYUNDAI_CANFD_ANGLE_STEERING_LIMITS = {
|
||||
.max_angle = 1800,
|
||||
.angle_deg_to_can = 10,
|
||||
.frequency = 100U,
|
||||
};
|
||||
|
||||
// We need to find a middle ground between all the possible params or find a way to properly fingerprint.
|
||||
// HYUNDAI_IONIQ_5_PE: -0.0008688329819908074
|
||||
// KIA_EV6_2025: -0.000889804937754786
|
||||
// KIA_EV9: -0.0005410588125765342
|
||||
// GENESIS_GV80_2025: -0.0005685702046115589
|
||||
// HYUNDAI_SANTA_FE_HEV_5TH_GEN: -0.00059689759884299
|
||||
|
||||
// IONIQ 5 PE values.
|
||||
// const AngleSteeringParams HYUNDAI_STEERING_PARAMS = {
|
||||
// .slip_factor = -0.0008688329819908074, // calc_slip_factor(VM)
|
||||
// .steer_ratio = 14.26,
|
||||
// .wheelbase = 2.97,
|
||||
// };
|
||||
|
||||
// // GENESIS_GV80_2025 values. (values can be found on values.py)
|
||||
// const AngleSteeringParams HYUNDAI_STEERING_PARAMS = {
|
||||
// .slip_factor = -0.0005685702046115589, // calc_slip_factor(VM)
|
||||
// .steer_ratio = 14.14,
|
||||
// .wheelbase = 2.95,
|
||||
// };
|
||||
|
||||
// HYUNDAI_SANTA_FE_HEV_5TH_GEN values. (most conservative for now) (values can be found on values.py)
|
||||
const AngleSteeringParams HYUNDAI_STEERING_PARAMS = {
|
||||
.slip_factor = -0.00059689759884299, // calc_slip_factor(VM)
|
||||
.steer_ratio = 13.72,
|
||||
.wheelbase = 2.81,
|
||||
};
|
||||
|
||||
bool tx = true;
|
||||
|
||||
// steering
|
||||
const unsigned int steer_addr = (hyundai_canfd_lka_steering && !hyundai_longitudinal) ? hyundai_canfd_get_lka_addr() : 0x12aU;
|
||||
if (msg->addr == steer_addr) {
|
||||
if (hyundai_canfd_angle_steering) {
|
||||
const int lkas_angle_active = (msg->data[9] >> 4U) & 0x3U;
|
||||
const bool steer_angle_req = lkas_angle_active != 1;
|
||||
int desired_torque = (((msg->data[6] & 0xFU) << 7U) | (msg->data[5] >> 1U)) - 1024U;
|
||||
bool steer_req = GET_BIT(msg, 52U);
|
||||
|
||||
int desired_angle = (msg->data[11] << 6U) | (msg->data[10] >> 2U);
|
||||
desired_angle = to_signed(desired_angle, 14);
|
||||
|
||||
if (steer_angle_cmd_checks_vm(desired_angle, steer_angle_req, HYUNDAI_CANFD_ANGLE_STEERING_LIMITS, HYUNDAI_STEERING_PARAMS)) {
|
||||
tx = false;
|
||||
}
|
||||
} else {
|
||||
int desired_torque = (((msg->data[6] & 0xFU) << 7U) | (msg->data[5] >> 1U)) - 1024U;
|
||||
bool steer_req = GET_BIT(msg, 52U);
|
||||
|
||||
if (steer_torque_cmd_checks(desired_torque, steer_req, HYUNDAI_CANFD_TORQUE_STEERING_LIMITS)) {
|
||||
tx = false;
|
||||
}
|
||||
if (steer_torque_cmd_checks(desired_torque, steer_req, HYUNDAI_CANFD_STEERING_LIMITS)) {
|
||||
tx = false;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -277,7 +226,6 @@ static bool hyundai_canfd_tx_hook(const CANPacket_t *msg) {
|
||||
static safety_config hyundai_canfd_init(uint16_t param) {
|
||||
const int HYUNDAI_PARAM_CANFD_LKA_STEERING_ALT = 128;
|
||||
const int HYUNDAI_PARAM_CANFD_ALT_BUTTONS = 32;
|
||||
const int HYUNDAI_PARAM_CANFD_ANGLE_STEERING = 1024;
|
||||
|
||||
static const CanMsg HYUNDAI_CANFD_LKA_STEERING_TX_MSGS[] = {
|
||||
HYUNDAI_CANFD_LKA_STEERING_COMMON_TX_MSGS(0, 1)
|
||||
@@ -326,8 +274,6 @@ static safety_config hyundai_canfd_init(uint16_t param) {
|
||||
|
||||
gen_crc_lookup_table_16(0x1021, hyundai_canfd_crc_lut);
|
||||
hyundai_canfd_alt_buttons = GET_FLAG(param, HYUNDAI_PARAM_CANFD_ALT_BUTTONS);
|
||||
hyundai_canfd_angle_steering = GET_FLAG(param, HYUNDAI_PARAM_CANFD_ANGLE_STEERING);
|
||||
// TODO: test this restriction
|
||||
hyundai_canfd_lka_steering_alt = GET_FLAG(param, HYUNDAI_PARAM_CANFD_LKA_STEERING_ALT);
|
||||
|
||||
safety_config ret;
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -60,10 +60,7 @@ def get_steer_value(mode, param, msg):
|
||||
elif mode in (CarParams.SafetyModel.hyundai, CarParams.SafetyModel.hyundaiLegacy):
|
||||
torque = (((msg.data[3] & 0x7) << 8) | msg.data[2]) - 1024
|
||||
elif mode == CarParams.SafetyModel.hyundaiCanfd:
|
||||
if param & HyundaiSafetyFlags.CANFD_ANGLE_STEERING:
|
||||
angle = (msg.data[11] << 6) | (msg.data[10] >> 2)
|
||||
else:
|
||||
torque = ((msg.data[5] >> 1) | (msg.data[6] & 0xF) << 7) - 1024
|
||||
torque = ((msg.data[5] >> 1) | (msg.data[6] & 0xF) << 7) - 1024
|
||||
elif mode == CarParams.SafetyModel.chrysler:
|
||||
torque = (((msg.data[0] & 0x7) << 8) | msg.data[1]) - 1024
|
||||
elif mode == CarParams.SafetyModel.subaru:
|
||||
|
||||
@@ -18,9 +18,6 @@ DEBUG_VARS = {
|
||||
'current_disengage_reason': lambda safety: safety.mads_get_current_disengage_reason(),
|
||||
'stock_acc_main': lambda safety: safety.get_acc_main_on(),
|
||||
'mads_acc_main': lambda safety: safety.get_mads_acc_main(),
|
||||
'desired_angle_last': lambda safety: safety.get_desired_angle_last(),
|
||||
'angle_meas_min': lambda safety: safety.get_angle_meas_min(),
|
||||
'angle_meas_max': lambda safety: safety.get_angle_meas_max(),
|
||||
}
|
||||
|
||||
|
||||
@@ -91,27 +88,17 @@ def replay_drive(msgs, safety_mode, param, alternative_experience, param_sp):
|
||||
last_good = last_good_states[canmsg.address]
|
||||
print(f"\nBlocked message at {(msg.logMonoTime - start_t) / 1e9:.3f}s:")
|
||||
print(f"Address: {hex(canmsg.address)} (bus {canmsg.src})")
|
||||
|
||||
# Header with tab-separated columns
|
||||
print("\nVariable\t\tLast Good State\t\tCurrent State")
|
||||
print("-" * 80)
|
||||
|
||||
print("Current state:")
|
||||
for var, getter in DEBUG_VARS.items():
|
||||
current_val = getter(safety)
|
||||
last_val = last_good[var] if last_good['timestamp'] is not None else "N/A"
|
||||
|
||||
# Align columns based on variable name length
|
||||
tab_count = 1 if len(var) >= 16 else 2 # crude spacing control
|
||||
tabs = '\t' * tab_count
|
||||
print(f"{var}{tabs}\t{last_val}\t\t{current_val}")
|
||||
print(f" {var}: {getter(safety)}")
|
||||
|
||||
if last_good['timestamp'] is not None:
|
||||
print(f"\nLast good timestamp: {last_good['timestamp']:.3f}s")
|
||||
print(f"\nLast good state ({last_good['timestamp']:.3f}s):")
|
||||
for var in DEBUG_VARS:
|
||||
print(f" {var}: {last_good[var]}")
|
||||
else:
|
||||
print("\nNo previous good state found for this address")
|
||||
|
||||
print("-" * 80)
|
||||
|
||||
else: # Update last good state if message is allowed
|
||||
last_good_states[canmsg.address].update({
|
||||
'timestamp': (msg.logMonoTime - start_t) / 1e9,
|
||||
|
||||
@@ -1,20 +1,13 @@
|
||||
#!/usr/bin/env python3
|
||||
from parameterized import parameterized_class
|
||||
import unittest
|
||||
import numpy as np
|
||||
|
||||
from opendbc.car import ACCELERATION_DUE_TO_GRAVITY
|
||||
from opendbc.car.hyundai.carcontroller import ANGLE_SAFETY_BASELINE_MODEL
|
||||
from opendbc.car.hyundai.values import HyundaiSafetyFlags, CAR, HyundaiFlags, CarControllerParams
|
||||
from opendbc.car.hyundai.values import HyundaiSafetyFlags
|
||||
from opendbc.car.structs import CarParams
|
||||
from opendbc.car.vehicle_model import VehicleModel, calc_slip_factor
|
||||
from opendbc.safety.tests.libsafety import libsafety_py
|
||||
import opendbc.safety.tests.common as common
|
||||
from opendbc.safety.tests.common import CANPackerPanda, away_round, round_speed
|
||||
from opendbc.safety.tests.common import CANPackerPanda
|
||||
from opendbc.safety.tests.hyundai_common import HyundaiButtonBase, HyundaiLongitudinalBase
|
||||
from opendbc.car.lateral import get_max_angle_delta_vm, get_max_angle_vm, ISO_LATERAL_ACCEL, AngleSteeringLimits
|
||||
from parameterized import parameterized
|
||||
from opendbc.car.hyundai.interface import CarInterface
|
||||
|
||||
# All combinations of radar/camera-SCC and gas/hybrid/EV cars
|
||||
ALL_GAS_EV_HYBRID_COMBOS = [
|
||||
@@ -29,16 +22,10 @@ ALL_GAS_EV_HYBRID_COMBOS = [
|
||||
]
|
||||
|
||||
|
||||
def round_angle(angle_deg: float, can_offset=0):
|
||||
scaled = angle_deg / 0.1
|
||||
scaled += can_offset
|
||||
return int(scaled) * 0.1
|
||||
|
||||
|
||||
class TestHyundaiCanfdBase(HyundaiButtonBase, common.PandaCarSafetyTest):
|
||||
class TestHyundaiCanfdBase(HyundaiButtonBase, common.PandaCarSafetyTest, common.DriverTorqueSteeringSafetyTest, common.SteerRequestCutSafetyTest):
|
||||
|
||||
TX_MSGS = [[0x50, 0], [0x1CF, 1], [0x2A4, 0]]
|
||||
STANDSTILL_THRESHOLD = 0.375 * 0.03125 # kph
|
||||
STANDSTILL_THRESHOLD = 12 # 0.375 kph
|
||||
FWD_BLACKLISTED_ADDRS = {2: [0x50, 0x2a4]}
|
||||
|
||||
MAX_RATE_UP = 2
|
||||
@@ -62,15 +49,15 @@ class TestHyundaiCanfdBase(HyundaiButtonBase, common.PandaCarSafetyTest):
|
||||
BUTTONS_TX_BUS = 1
|
||||
|
||||
def _torque_driver_msg(self, torque):
|
||||
values = {"MDPS_StrTqSnsrVal": torque}
|
||||
values = {"STEERING_COL_TORQUE": torque}
|
||||
return self.packer.make_can_msg_panda("MDPS", self.PT_BUS, values)
|
||||
|
||||
def _torque_cmd_msg(self, torque, steer_req=1):
|
||||
values = {"StrTqReqVal": torque, "ActToiSta": steer_req}
|
||||
values = {"TORQUE_REQUEST": torque, "STEER_REQ": steer_req}
|
||||
return self.packer.make_can_msg_panda(self.STEER_MSG, self.STEER_BUS, values)
|
||||
|
||||
def _speed_msg(self, speed):
|
||||
values = {f"WHL_Spd{pos}Val": speed * 3.6 for pos in ["FL", "FR", "RL", "RR"]}
|
||||
values = {f"WHL_Spd{pos}Val": speed * 0.03125 for pos in ["FL", "FR", "RL", "RR"]}
|
||||
return self.packer.make_can_msg_panda("WHEEL_SPEEDS", self.PT_BUS, values)
|
||||
|
||||
def _user_brake_msg(self, brake):
|
||||
@@ -106,269 +93,7 @@ class TestHyundaiCanfdBase(HyundaiButtonBase, common.PandaCarSafetyTest):
|
||||
return self._button_msg(0, enabled)
|
||||
|
||||
|
||||
class TestHyundaiCanfdTorqueSteering(TestHyundaiCanfdBase, common.DriverTorqueSteeringSafetyTest, common.SteerRequestCutSafetyTest):
|
||||
|
||||
MAX_RATE_UP = 2
|
||||
MAX_RATE_DOWN = 3
|
||||
MAX_TORQUE = 270
|
||||
|
||||
MAX_RT_DELTA = 112
|
||||
RT_INTERVAL = 250000
|
||||
|
||||
DRIVER_TORQUE_ALLOWANCE = 250
|
||||
DRIVER_TORQUE_FACTOR = 2
|
||||
|
||||
# Safety around steering req bit
|
||||
MIN_VALID_STEERING_FRAMES = 89
|
||||
MAX_INVALID_STEERING_FRAMES = 2
|
||||
MIN_VALID_STEERING_RT_INTERVAL = 810000 # a ~10% buffer, can send steer up to 110Hz
|
||||
|
||||
@classmethod
|
||||
def setUpClass(cls):
|
||||
super().setUpClass()
|
||||
if cls.__name__ == "TestHyundaiCanfdTorqueSteering":
|
||||
cls.packer = None
|
||||
cls.safety = None
|
||||
raise unittest.SkipTest
|
||||
|
||||
def setUp(self):
|
||||
self.packer = CANPackerPanda("hyundai_canfd_generated")
|
||||
self.safety = libsafety_py.libsafety
|
||||
self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiCanfd, 0)
|
||||
self.safety.init_tests()
|
||||
|
||||
|
||||
class TestHyundaiCanfdAngleSteering(TestHyundaiCanfdBase, common.AngleSteeringSafetyTest):
|
||||
PLATFORMS = {str(platform): platform for platform in CAR if
|
||||
platform.config.flags & HyundaiFlags.CANFD_ANGLE_STEERING and not CarInterface.get_non_essential_params(str(platform)).dashcamOnly}
|
||||
|
||||
# Angle control limits
|
||||
BASELINE_PANDA_ANGLE_LIMITS: AngleSteeringLimits = AngleSteeringLimits(
|
||||
180, # degrees (safe upper bound for command, allowing some margin)
|
||||
([], []),
|
||||
([], []),
|
||||
MAX_LATERAL_ACCEL=(ISO_LATERAL_ACCEL + (ACCELERATION_DUE_TO_GRAVITY * 0.06)), # ~3.0 m/s^2
|
||||
MAX_LATERAL_JERK=(3.0 + (ACCELERATION_DUE_TO_GRAVITY * 0.06)), # ~3.0 m/s^3,
|
||||
MAX_ANGLE_RATE=5 # comfort rate limit for angle commands, in degrees per frame.
|
||||
)
|
||||
|
||||
STEER_ANGLE_MAX = 180 # deg
|
||||
DEG_TO_CAN = 10
|
||||
ANGLE_SAFETY_THRESHOLD_PCT = -2.0 # Fail if difference is less than -2%
|
||||
|
||||
# Panda safety has hardcoded 0.06 superelevation for road roll, we test safety with that.
|
||||
AVERAGE_ROAD_ROLL = 0.06 # ~3.4 degrees, 6% superelevation. higher actual roll lowers lateral acceleration
|
||||
MAX_LATERAL_ACCEL=(ISO_LATERAL_ACCEL + (ACCELERATION_DUE_TO_GRAVITY * AVERAGE_ROAD_ROLL))
|
||||
MAX_LATERAL_JERK=(3.0 + (ACCELERATION_DUE_TO_GRAVITY * AVERAGE_ROAD_ROLL))
|
||||
|
||||
# Hyundai uses get_max_angle_delta and get_max_angle for real lateral accel and jerk limits
|
||||
# TODO: integrate this into AngleSteeringSafetyTest
|
||||
ANGLE_RATE_BP = None
|
||||
ANGLE_RATE_UP = None
|
||||
ANGLE_RATE_DOWN = None
|
||||
|
||||
# Real time limits
|
||||
LATERAL_FREQUENCY = 100 # Hz
|
||||
|
||||
cnt_angle_cmd = 0
|
||||
|
||||
def get_baseline_limits(self):
|
||||
limits = CarControllerParams(CarInterface.get_non_essential_params(ANGLE_SAFETY_BASELINE_MODEL))
|
||||
limits.ANGLE_LIMITS = self.BASELINE_PANDA_ANGLE_LIMITS
|
||||
return limits
|
||||
|
||||
def _angle_cmd_msg(self, angle: float, enabled: bool, increment_timer: bool = True):
|
||||
if increment_timer:
|
||||
self.safety.set_timer(self.cnt_angle_cmd * int(1e6 / self.LATERAL_FREQUENCY))
|
||||
self.__class__.cnt_angle_cmd += 1
|
||||
values = {"ADAS_StrAnglReqVal": angle, "LKAS_ANGLE_ACTIVE": 2 if enabled else 1}
|
||||
return self.packer.make_can_msg_panda(self.STEER_MSG, self.STEER_BUS, values)
|
||||
|
||||
def _angle_meas_msg(self, angle: float):
|
||||
values = {"MDPS_EstStrAnglVal": angle}
|
||||
return self.packer.make_can_msg_panda("MDPS", self.PT_BUS, values)
|
||||
|
||||
def _get_steer_cmd_angle_max(self, speed):
|
||||
baseline_vm = self.get_vm(ANGLE_SAFETY_BASELINE_MODEL)
|
||||
return get_max_angle_vm(max(speed, 1), baseline_vm, self.get_baseline_limits())
|
||||
|
||||
@classmethod
|
||||
def setUpClass(cls):
|
||||
super().setUpClass()
|
||||
if cls.__name__ == "TestHyundaiCanfdAngleSteering":
|
||||
cls.packer = None
|
||||
cls.safety = None
|
||||
raise unittest.SkipTest
|
||||
|
||||
def get_vm(self, car_name):
|
||||
return VehicleModel(CarInterface.get_non_essential_params(car_name))
|
||||
|
||||
def setUp(self):
|
||||
self.packer = CANPackerPanda("hyundai_canfd_generated")
|
||||
self.safety = libsafety_py.libsafety
|
||||
self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiCanfd, HyundaiSafetyFlags.CANFD_ANGLE_STEERING)
|
||||
self.safety.init_tests()
|
||||
|
||||
def test_angle_cmd_when_enabled(self):
|
||||
# We properly test lateral acceleration and jerk below
|
||||
pass
|
||||
|
||||
def test_lateral_accel_limit(self):
|
||||
car_name = ANGLE_SAFETY_BASELINE_MODEL
|
||||
for speed in np.linspace(0, 40, 100):
|
||||
speed = round_speed(away_round(speed / 0.03125 * 3.6) * 0.03125 / 3.6)
|
||||
speed = max(speed, 1)
|
||||
for sign in (-1, 1):
|
||||
self.safety.set_controls_allowed(True)
|
||||
self._reset_speed_measurement(speed + 1) # safety fudges the speed
|
||||
|
||||
# at limit (safety tolerance adds 1)
|
||||
angl = get_max_angle_vm(speed, self.get_vm(car_name), self.get_baseline_limits())
|
||||
max_angle = round_angle(get_max_angle_vm(speed, self.get_vm(car_name), self.get_baseline_limits()), 1) * sign
|
||||
max_angle = np.clip(max_angle, -self.STEER_ANGLE_MAX, self.STEER_ANGLE_MAX)
|
||||
self.safety.set_desired_angle_last(round(max_angle * self.DEG_TO_CAN))
|
||||
|
||||
self.assertTrue(self._tx(self._angle_cmd_msg(max_angle, True)), f"{angl} -- {max_angle}")
|
||||
|
||||
# 1 unit above limit
|
||||
max_angle_raw = round_angle(get_max_angle_vm(speed, self.get_vm(car_name), self.get_baseline_limits()), 3) * sign
|
||||
max_angle = np.clip(max_angle_raw, -self.STEER_ANGLE_MAX, self.STEER_ANGLE_MAX)
|
||||
self._tx(self._angle_cmd_msg(max_angle, True))
|
||||
|
||||
# at low speeds max angle is above 360, so adding 1 has no effect
|
||||
should_tx = abs(max_angle_raw) >= self.STEER_ANGLE_MAX
|
||||
self.assertEqual(should_tx, self._tx(self._angle_cmd_msg(max_angle, True)), f"should_tx: {should_tx}, max_angle: {max_angle}, speed: {speed}")
|
||||
|
||||
def test_lateral_jerk_limit(self):
|
||||
car_name = ANGLE_SAFETY_BASELINE_MODEL
|
||||
for speed in np.linspace(0, 40, 100):
|
||||
speed = round_speed(away_round(speed / 0.03125 * 3.6) * 0.03125 / 3.6)
|
||||
speed = max(speed, 1)
|
||||
for sign in (-1, 1): # (-1, 1):
|
||||
self.safety.set_controls_allowed(True)
|
||||
self._reset_speed_measurement(speed + 1) # safety fudges the speed
|
||||
self._tx(self._angle_cmd_msg(0, True))
|
||||
|
||||
# Stay within limits
|
||||
# Up
|
||||
max_angle_delta = round_angle(get_max_angle_delta_vm(speed, self.get_vm(car_name), self.get_baseline_limits())) * sign
|
||||
self.assertTrue(self._tx(self._angle_cmd_msg(max_angle_delta, True)))
|
||||
|
||||
# Don't change
|
||||
self.safety.set_desired_angle_last(round(max_angle_delta * self.DEG_TO_CAN))
|
||||
self.assertTrue(self._tx(self._angle_cmd_msg(max_angle_delta, True)))
|
||||
|
||||
# Down
|
||||
self.assertTrue(self._tx(self._angle_cmd_msg(0, True)))
|
||||
|
||||
# Inject too high rates
|
||||
# Up
|
||||
# TODO-SP: Why do I need to set a can_offset so high to pass the tests and why tesla only does +1? and why does it seem to differ based on the baseline?
|
||||
max_angle_delta = round_angle(get_max_angle_delta_vm(speed, self.get_vm(car_name), self.get_baseline_limits()), 6) * sign
|
||||
self.assertFalse(self._tx(self._angle_cmd_msg(max_angle_delta, True)), vars(self.get_baseline_limits()))
|
||||
|
||||
# Don't change
|
||||
self.safety.set_desired_angle_last(round(max_angle_delta * self.DEG_TO_CAN))
|
||||
self.assertTrue(self._tx(self._angle_cmd_msg(max_angle_delta, True)))
|
||||
|
||||
# Down
|
||||
self.assertFalse(self._tx(self._angle_cmd_msg(0, True)))
|
||||
|
||||
# Recover
|
||||
self.assertTrue(self._tx(self._angle_cmd_msg(0, True)))
|
||||
|
||||
def test_rt_limits(self):
|
||||
# TODO: remove and check all safety modes
|
||||
if self.LATERAL_FREQUENCY == -1:
|
||||
raise unittest.SkipTest("No real time limits")
|
||||
|
||||
# Angle safety enforces real time limits by checking the message send frequency in a 250ms time window
|
||||
self.safety.set_timer(0)
|
||||
self.safety.set_controls_allowed(True)
|
||||
max_rt_msgs = int(self.LATERAL_FREQUENCY * common.RT_INTERVAL / 1e6 * 1.2 + 1) # 1.2x buffer
|
||||
|
||||
for i in range(max_rt_msgs * 2):
|
||||
should_tx = i <= max_rt_msgs
|
||||
self.assertEqual(should_tx, self._tx(self._angle_cmd_msg(0, True, increment_timer=False)))
|
||||
|
||||
# One under RT interval should do nothing
|
||||
self.safety.set_timer(common.RT_INTERVAL - 1)
|
||||
for _ in range(5):
|
||||
self.assertFalse(self._tx(self._angle_cmd_msg(0, True, increment_timer=False)))
|
||||
|
||||
# Increment timer and send 1 message to reset RT window
|
||||
self.safety.set_timer(common.RT_INTERVAL)
|
||||
self.assertFalse(self._tx(self._angle_cmd_msg(0, True, increment_timer=False)))
|
||||
for _ in range(5):
|
||||
self.assertTrue(self._tx(self._angle_cmd_msg(0, True, increment_timer=False)))
|
||||
|
||||
@parameterized.expand([(car,) for car in sorted(PLATFORMS)])
|
||||
def test_max_steering_angle_safety(self, car_name):
|
||||
"""
|
||||
Test that ensures the current car's max steering angles are never more than 2%
|
||||
lower than the baseline car across all test speeds.
|
||||
"""
|
||||
baseline_car = ANGLE_SAFETY_BASELINE_MODEL
|
||||
baseline_vm = self.get_vm(baseline_car)
|
||||
current_vm = self.get_vm(car_name)
|
||||
|
||||
for speed in np.linspace(1, 40, 10):
|
||||
baseline_max_angle = get_max_angle_vm(speed, baseline_vm, self.get_baseline_limits())
|
||||
current_max_angle = get_max_angle_vm(speed, current_vm, self.get_baseline_limits())
|
||||
|
||||
# Skip if both exceed STEER_ANGLE_MAX (only_relevant_angles logic)
|
||||
if current_max_angle > self.STEER_ANGLE_MAX and baseline_max_angle > self.STEER_ANGLE_MAX:
|
||||
continue
|
||||
|
||||
# Calculate percentage difference
|
||||
if baseline_max_angle != 0:
|
||||
angle_diff_pct = ((current_max_angle - baseline_max_angle) / baseline_max_angle) * 100
|
||||
else:
|
||||
angle_diff_pct = 0
|
||||
|
||||
# Assert that difference is not dangerously low
|
||||
self.assertTrue(
|
||||
angle_diff_pct >= self.ANGLE_SAFETY_THRESHOLD_PCT,
|
||||
f"{car_name} max steering angle at {speed:.1f} m/s [{current_max_angle:.2f}°] is {angle_diff_pct:.2f}% " +
|
||||
f"lower than baseline {baseline_car} ({current_max_angle:.2f}° vs {baseline_max_angle:.2f}°). " +
|
||||
f"Must be >= {self.ANGLE_SAFETY_THRESHOLD_PCT}% to ensure safety." +
|
||||
f"Consider updating the baseline model to be {car_name} (which will lower the threshold for ALL models). " +
|
||||
f"Slip Factor: {repr(calc_slip_factor(current_vm))}"
|
||||
)
|
||||
|
||||
@parameterized.expand([(car,) for car in sorted(PLATFORMS)])
|
||||
def test_max_steering_angle_delta_safety(self, car_name):
|
||||
"""
|
||||
Test that ensures the current car's max steering angle deltas are never more than 2%
|
||||
lower than the baseline car across all test speeds.
|
||||
"""
|
||||
baseline_car = ANGLE_SAFETY_BASELINE_MODEL
|
||||
baseline_vm = self.get_vm(baseline_car)
|
||||
baseline_limits = CarControllerParams(CarInterface.get_non_essential_params(baseline_car))
|
||||
current_vm = self.get_vm(car_name)
|
||||
current_limits = CarControllerParams(CarInterface.get_non_essential_params(car_name))
|
||||
|
||||
for speed in np.linspace(1, 40, 10):
|
||||
baseline_max_delta = get_max_angle_delta_vm(speed, baseline_vm, baseline_limits)
|
||||
current_max_delta = get_max_angle_delta_vm(speed, current_vm, current_limits)
|
||||
|
||||
# Calculate percentage difference
|
||||
if baseline_max_delta != 0:
|
||||
delta_diff_pct = ((current_max_delta - baseline_max_delta) / baseline_max_delta) * 100
|
||||
else:
|
||||
delta_diff_pct = 0
|
||||
|
||||
# Assert that difference is not dangerously low
|
||||
self.assertTrue(
|
||||
delta_diff_pct >= self.ANGLE_SAFETY_THRESHOLD_PCT,
|
||||
f"{car_name} max steering angle delta at {speed:.1f} m/s is {delta_diff_pct:.2f}% " +
|
||||
f"lower than {baseline_car} ({current_max_delta:.4f} vs {baseline_max_delta:.4f} deg/frame). " +
|
||||
f"Must be >= {self.ANGLE_SAFETY_THRESHOLD_PCT}% to ensure safety." +
|
||||
f"Consider updating the baseline model to be {car_name} (which will lower the threshold for ALL models)."
|
||||
)
|
||||
|
||||
|
||||
class TestHyundaiCanfdLFASteeringBase(TestHyundaiCanfdTorqueSteering):
|
||||
class TestHyundaiCanfdLFASteeringBase(TestHyundaiCanfdBase):
|
||||
|
||||
TX_MSGS = [[0x12A, 0], [0x1A0, 1], [0x1CF, 0], [0x1E0, 0]]
|
||||
RELAY_MALFUNCTION_ADDRS = {0: (0x12A, 0x1E0)} # LFA, LFAHDA_CLUSTER
|
||||
@@ -446,7 +171,7 @@ class TestHyundaiCanfdLFASteeringAltButtons(TestHyundaiCanfdLFASteeringAltButton
|
||||
pass
|
||||
|
||||
|
||||
class TestHyundaiCanfdLKASteeringEV(TestHyundaiCanfdTorqueSteering):
|
||||
class TestHyundaiCanfdLKASteeringEV(TestHyundaiCanfdBase):
|
||||
|
||||
TX_MSGS = [[0x50, 0], [0x1CF, 1], [0x2A4, 0]]
|
||||
RELAY_MALFUNCTION_ADDRS = {0: (0x50, 0x2a4)} # LKAS, CAM_0x2A4
|
||||
@@ -465,7 +190,7 @@ class TestHyundaiCanfdLKASteeringEV(TestHyundaiCanfdTorqueSteering):
|
||||
|
||||
|
||||
# TODO: Handle ICE and HEV configurations once we see cars that use the new messages
|
||||
class TestHyundaiCanfdLKASteeringAltEVBase(TestHyundaiCanfdBase):
|
||||
class TestHyundaiCanfdLKASteeringAltEV(TestHyundaiCanfdBase):
|
||||
|
||||
TX_MSGS = [[0x110, 0], [0x1CF, 1], [0x362, 0]]
|
||||
RELAY_MALFUNCTION_ADDRS = {0: (0x110, 0x362)} # LKAS_ALT, CAM_0x362
|
||||
@@ -484,26 +209,6 @@ class TestHyundaiCanfdLKASteeringAltEVBase(TestHyundaiCanfdBase):
|
||||
self.safety.init_tests()
|
||||
|
||||
|
||||
class TestHyundaiCanfdLKASteeringAltEVTorque(TestHyundaiCanfdLKASteeringAltEVBase, TestHyundaiCanfdTorqueSteering):
|
||||
|
||||
def setUp(self):
|
||||
self.packer = CANPackerPanda("hyundai_canfd_generated")
|
||||
self.safety = libsafety_py.libsafety
|
||||
self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiCanfd, HyundaiSafetyFlags.CANFD_LKA_STEERING | HyundaiSafetyFlags.EV_GAS |
|
||||
HyundaiSafetyFlags.CANFD_LKA_STEERING_ALT)
|
||||
self.safety.init_tests()
|
||||
|
||||
|
||||
class TestHyundaiCanfdLKASteeringAltEVAngle(TestHyundaiCanfdLKASteeringAltEVBase, TestHyundaiCanfdAngleSteering):
|
||||
|
||||
def setUp(self):
|
||||
self.packer = CANPackerPanda("hyundai_canfd_generated")
|
||||
self.safety = libsafety_py.libsafety
|
||||
self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiCanfd, HyundaiSafetyFlags.CANFD_LKA_STEERING | HyundaiSafetyFlags.EV_GAS |
|
||||
HyundaiSafetyFlags.CANFD_LKA_STEERING_ALT | HyundaiSafetyFlags.CANFD_ANGLE_STEERING)
|
||||
self.safety.init_tests()
|
||||
|
||||
|
||||
class TestHyundaiCanfdLKASteeringLongEV(HyundaiLongitudinalBase, TestHyundaiCanfdLKASteeringEV):
|
||||
|
||||
TX_MSGS = [[0x50, 0], [0x1CF, 1], [0x2A4, 0], [0x51, 0], [0x730, 1], [0x12a, 1], [0x160, 1],
|
||||
|
||||
@@ -786,16 +786,6 @@
|
||||
],
|
||||
"package": "All"
|
||||
},
|
||||
"Genesis GV70 Electrified 2026": {
|
||||
"platform": "GENESIS_GV70_ELECTRIFIED_2ND_GEN",
|
||||
"make": "Genesis",
|
||||
"brand": "hyundai",
|
||||
"model": "GV70 Electrified",
|
||||
"year": [
|
||||
"2026"
|
||||
],
|
||||
"package": "All"
|
||||
},
|
||||
"Genesis GV70 Electrified (Australia Only) 2022": {
|
||||
"platform": "GENESIS_GV70_ELECTRIFIED_1ST_GEN",
|
||||
"make": "Genesis",
|
||||
@@ -827,26 +817,6 @@
|
||||
],
|
||||
"package": "All"
|
||||
},
|
||||
"Genesis GV80 (3.5T Prestige Trim, with HDA II & LFA2) 2025": {
|
||||
"platform": "GENESIS_GV80_2025",
|
||||
"make": "Genesis",
|
||||
"brand": "hyundai",
|
||||
"model": "GV80 (3.5T Prestige Trim, with HDA II & LFA2)",
|
||||
"year": [
|
||||
"2025"
|
||||
],
|
||||
"package": "Highway Driving Assist II & Lane Follow Assist 2"
|
||||
},
|
||||
"Genesis GV80 Coupe (with HDA II & LFA2) 2025": {
|
||||
"platform": "GENESIS_GV80_2025",
|
||||
"make": "Genesis",
|
||||
"brand": "hyundai",
|
||||
"model": "GV80 Coupe (with HDA II & LFA2)",
|
||||
"year": [
|
||||
"2025"
|
||||
],
|
||||
"package": "Highway Driving Assist II & Lane Follow Assist 2"
|
||||
},
|
||||
"GMC Acadia 2018": {
|
||||
"platform": "GMC_ACADIA",
|
||||
"make": "GMC",
|
||||
@@ -1430,16 +1400,6 @@
|
||||
],
|
||||
"package": "Highway Driving Assist"
|
||||
},
|
||||
"Hyundai Ioniq 5 PE (with HDA II & LFA2) 2025": {
|
||||
"platform": "HYUNDAI_IONIQ_5_PE",
|
||||
"make": "Hyundai",
|
||||
"brand": "hyundai",
|
||||
"model": "Ioniq 5 PE (with HDA II & LFA2)",
|
||||
"year": [
|
||||
"2025"
|
||||
],
|
||||
"package": "Highway Driving Assist II & Lane Follow Assist 2"
|
||||
},
|
||||
"Hyundai Ioniq 6 (with HDA II) 2023-24": {
|
||||
"platform": "HYUNDAI_IONIQ_6",
|
||||
"make": "Hyundai",
|
||||
@@ -1670,17 +1630,6 @@
|
||||
],
|
||||
"package": "All"
|
||||
},
|
||||
"Hyundai Santa Fe Hybrid (with HDA II & LFA2) 2024-25": {
|
||||
"platform": "HYUNDAI_SANTA_FE_HEV_5TH_GEN",
|
||||
"make": "Hyundai",
|
||||
"brand": "hyundai",
|
||||
"model": "Santa Fe Hybrid (with HDA II & LFA2)",
|
||||
"year": [
|
||||
"2024",
|
||||
"2025"
|
||||
],
|
||||
"package": "Highway Driving Assist II & Lane Follow Assist 2"
|
||||
},
|
||||
"Hyundai Santa Fe Plug-in Hybrid 2022-23": {
|
||||
"platform": "HYUNDAI_SANTA_FE_PHEV_2022",
|
||||
"make": "Hyundai",
|
||||
@@ -1893,16 +1842,6 @@
|
||||
],
|
||||
"package": "All"
|
||||
},
|
||||
"Kia EV6 (with HDA I) 2025": {
|
||||
"platform": "KIA_EV6_2025",
|
||||
"make": "Kia",
|
||||
"brand": "hyundai",
|
||||
"model": "EV6 (with HDA I)",
|
||||
"year": [
|
||||
"2025"
|
||||
],
|
||||
"package": "Highway Driving Assist I"
|
||||
},
|
||||
"Kia EV6 (with HDA II) 2022-24": {
|
||||
"platform": "KIA_EV6",
|
||||
"make": "Kia",
|
||||
@@ -1927,17 +1866,6 @@
|
||||
],
|
||||
"package": "Highway Driving Assist"
|
||||
},
|
||||
"Kia EV9 2025-26": {
|
||||
"platform": "KIA_EV9",
|
||||
"make": "Kia",
|
||||
"brand": "hyundai",
|
||||
"model": "EV9",
|
||||
"year": [
|
||||
"2025",
|
||||
"2026"
|
||||
],
|
||||
"package": "Smart Cruise Control (SCC)"
|
||||
},
|
||||
"Kia Forte 2019-21": {
|
||||
"platform": "KIA_FORTE",
|
||||
"make": "Kia",
|
||||
|
||||
@@ -84,7 +84,6 @@ explicit_package_bases=true
|
||||
line-length = 160
|
||||
indent-width = 2
|
||||
target-version="py311"
|
||||
exclude = ["**/*.ipynb"]
|
||||
|
||||
[tool.ruff.lint]
|
||||
preview = true
|
||||
|
||||
Binary file not shown.
@@ -13,7 +13,7 @@ cd $ROOT
|
||||
|
||||
FAILED=0
|
||||
|
||||
IGNORED_FILES="uv\.lock|docs\/CARS.md|LICENSE\.md|layouts\/.*\.xml|.*\.ipynb"
|
||||
IGNORED_FILES="uv\.lock|docs\/CARS.md|LICENSE\.md"
|
||||
IGNORED_DIRS="^third_party.*|^msgq.*|^msgq_repo.*|^opendbc.*|^opendbc_repo.*|^cereal.*|^panda.*|^rednose.*|^rednose_repo.*|^tinygrad.*|^tinygrad_repo.*|^teleoprtc.*|^teleoprtc_repo.*"
|
||||
|
||||
function run() {
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
from openpilot.selfdrive.controls.lib.latcontrol_torque import LatControlTorque
|
||||
from openpilot.selfdrive.controls.lib.latcontrol_angle import LatControlAngle
|
||||
|
||||
|
||||
class LatControlAngleTorque(LatControlTorque, LatControlAngle):
|
||||
def __init__(self, CP, CP_SP, CI):
|
||||
LatControlTorque.__init__(self, CP, CP_SP, CI)
|
||||
LatControlAngle.__init__(self, CP, CP_SP, CI)
|
||||
|
||||
def update(self, active, CS, VM, params, steer_limited_by_controls, desired_curvature, calibrated_pose, curvature_limited):
|
||||
torque, _, _ = LatControlTorque.update(self, active, CS, VM, params, steer_limited_by_controls, desired_curvature, calibrated_pose, curvature_limited)
|
||||
_, angle, angle_log = LatControlAngle.update(self, active, CS, VM, params, steer_limited_by_controls, desired_curvature, calibrated_pose, curvature_limited)
|
||||
return torque, angle, angle_log
|
||||
@@ -1,538 +0,0 @@
|
||||
{
|
||||
"acados_include_path": "/data/openpilot/third_party/acados/include",
|
||||
"acados_lib_path": "/data/openpilot/third_party/acados/lib",
|
||||
"code_export_directory": "/data/openpilot/selfdrive/controls/lib/lateral_mpc_lib/c_generated_code",
|
||||
"constraints": {
|
||||
"C": [],
|
||||
"C_e": [],
|
||||
"D": [],
|
||||
"constr_type": "BGH",
|
||||
"constr_type_e": "BGH",
|
||||
"idxbu": [],
|
||||
"idxbx": [
|
||||
2,
|
||||
3
|
||||
],
|
||||
"idxbx_0": [
|
||||
0,
|
||||
1,
|
||||
2,
|
||||
3
|
||||
],
|
||||
"idxbx_e": [],
|
||||
"idxbxe_0": [
|
||||
0,
|
||||
1,
|
||||
2,
|
||||
3
|
||||
],
|
||||
"idxsbu": [],
|
||||
"idxsbx": [],
|
||||
"idxsbx_e": [],
|
||||
"idxsg": [],
|
||||
"idxsg_e": [],
|
||||
"idxsh": [],
|
||||
"idxsh_e": [],
|
||||
"idxsphi": [],
|
||||
"idxsphi_e": [],
|
||||
"lbu": [],
|
||||
"lbx": [
|
||||
-1.5707963267948966,
|
||||
-0.8726646259971648
|
||||
],
|
||||
"lbx_0": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"lbx_e": [],
|
||||
"lg": [],
|
||||
"lg_e": [],
|
||||
"lh": [],
|
||||
"lh_e": [],
|
||||
"lphi": [],
|
||||
"lphi_e": [],
|
||||
"lsbu": [],
|
||||
"lsbx": [],
|
||||
"lsbx_e": [],
|
||||
"lsg": [],
|
||||
"lsg_e": [],
|
||||
"lsh": [],
|
||||
"lsh_e": [],
|
||||
"lsphi": [],
|
||||
"lsphi_e": [],
|
||||
"ubu": [],
|
||||
"ubx": [
|
||||
1.5707963267948966,
|
||||
0.8726646259971648
|
||||
],
|
||||
"ubx_0": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"ubx_e": [],
|
||||
"ug": [],
|
||||
"ug_e": [],
|
||||
"uh": [],
|
||||
"uh_e": [],
|
||||
"uphi": [],
|
||||
"uphi_e": [],
|
||||
"usbu": [],
|
||||
"usbx": [],
|
||||
"usbx_e": [],
|
||||
"usg": [],
|
||||
"usg_e": [],
|
||||
"ush": [],
|
||||
"ush_e": [],
|
||||
"usphi": [],
|
||||
"usphi_e": []
|
||||
},
|
||||
"cost": {
|
||||
"Vu": [],
|
||||
"Vu_0": [],
|
||||
"Vx": [],
|
||||
"Vx_0": [],
|
||||
"Vx_e": [],
|
||||
"Vz": [],
|
||||
"Vz_0": [],
|
||||
"W": [
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
]
|
||||
],
|
||||
"W_0": [
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
]
|
||||
],
|
||||
"W_e": [
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
]
|
||||
],
|
||||
"Zl": [],
|
||||
"Zl_e": [],
|
||||
"Zu": [],
|
||||
"Zu_e": [],
|
||||
"cost_ext_fun_type": "casadi",
|
||||
"cost_ext_fun_type_0": "casadi",
|
||||
"cost_ext_fun_type_e": "casadi",
|
||||
"cost_type": "NONLINEAR_LS",
|
||||
"cost_type_0": "NONLINEAR_LS",
|
||||
"cost_type_e": "NONLINEAR_LS",
|
||||
"yref": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"yref_0": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"yref_e": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"zl": [],
|
||||
"zl_e": [],
|
||||
"zu": [],
|
||||
"zu_e": []
|
||||
},
|
||||
"cython_include_dirs": [
|
||||
"/usr/local/venv/lib/python3.12/site-packages/numpy/_core/include",
|
||||
"/usr/include/python3.12"
|
||||
],
|
||||
"dims": {
|
||||
"N": 32,
|
||||
"nbu": 0,
|
||||
"nbx": 2,
|
||||
"nbx_0": 4,
|
||||
"nbx_e": 0,
|
||||
"nbxe_0": 4,
|
||||
"ng": 0,
|
||||
"ng_e": 0,
|
||||
"nh": 0,
|
||||
"nh_e": 0,
|
||||
"np": 2,
|
||||
"nphi": 0,
|
||||
"nphi_e": 0,
|
||||
"nr": 0,
|
||||
"nr_e": 0,
|
||||
"ns": 0,
|
||||
"ns_e": 0,
|
||||
"nsbu": 0,
|
||||
"nsbx": 0,
|
||||
"nsbx_e": 0,
|
||||
"nsg": 0,
|
||||
"nsg_e": 0,
|
||||
"nsh": 0,
|
||||
"nsh_e": 0,
|
||||
"nsphi": 0,
|
||||
"nsphi_e": 0,
|
||||
"nu": 1,
|
||||
"nx": 4,
|
||||
"ny": 5,
|
||||
"ny_0": 5,
|
||||
"ny_e": 3,
|
||||
"nz": 0
|
||||
},
|
||||
"json_file": "/data/openpilot/selfdrive/controls/lib/lateral_mpc_lib/acados_ocp_lat.json",
|
||||
"model": {
|
||||
"con_h_expr": null,
|
||||
"con_h_expr_e": null,
|
||||
"con_phi_expr": null,
|
||||
"con_phi_expr_e": null,
|
||||
"con_r_expr": null,
|
||||
"con_r_expr_e": null,
|
||||
"con_r_in_phi": null,
|
||||
"con_r_in_phi_e": null,
|
||||
"cost_conl_custom_outer_hess": null,
|
||||
"cost_conl_custom_outer_hess_0": null,
|
||||
"cost_conl_custom_outer_hess_e": null,
|
||||
"cost_expr_ext_cost": null,
|
||||
"cost_expr_ext_cost_0": null,
|
||||
"cost_expr_ext_cost_custom_hess": null,
|
||||
"cost_expr_ext_cost_custom_hess_0": null,
|
||||
"cost_expr_ext_cost_custom_hess_e": null,
|
||||
"cost_expr_ext_cost_e": null,
|
||||
"cost_psi_expr": null,
|
||||
"cost_psi_expr_0": null,
|
||||
"cost_psi_expr_e": null,
|
||||
"cost_r_in_psi_expr": null,
|
||||
"cost_r_in_psi_expr_0": null,
|
||||
"cost_r_in_psi_expr_e": null,
|
||||
"cost_y_expr": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaegjaaaaaaaaaaaaaaafaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaacaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaajhpffghgpgegdaaaaaaaaaaaaaaaegbaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaaghpffghgpgegmcaaaaaaaaaaaaaajgkaaaaaaaegpcaaaaaaaaaaaaaahaaaaaaaahdhjgpffghgpgegdaaaaaaaaaaaaaaacheaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaamaaaaaaaahdhjgpfchbgehfgpffghgpgegdaaaaaaaaaaaaaaacheaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaanaaaaaaaahdhjgpfbgdgdgfgmgpffghgpgegeaaaaaaaaaaaaaaachjaaaaaaaaaaaaaaaegbaaaaaaaaaaaaaaachcaaaaaaaaaaaaaaaegmcaaaaaaaaaaaaaachkjjjjjjjjjjjjlpd",
|
||||
"cost_y_expr_0": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaegjaaaaaaaaaaaaaaafaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaacaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaajhpffghgpgegdaaaaaaaaaaaaaaaegbaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaaghpffghgpgegmcaaaaaaaaaaaaaajgkaaaaaaaegpcaaaaaaaaaaaaaahaaaaaaaahdhjgpffghgpgegdaaaaaaaaaaaaaaacheaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaamaaaaaaaahdhjgpfchbgehfgpffghgpgegdaaaaaaaaaaaaaaacheaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaanaaaaaaaahdhjgpfbgdgdgfgmgpffghgpgegeaaaaaaaaaaaaaaachjaaaaaaaaaaaaaaaegbaaaaaaaaaaaaaaachcaaaaaaaaaaaaaaaegmcaaaaaaaaaaaaaachkjjjjjjjjjjjjlpd",
|
||||
"cost_y_expr_e": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaeghaaaaaaaaaaaaaaadaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaacaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaajhpffghgpgegdaaaaaaaaaaaaaaaegbaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaaghpffghgpgegmcaaaaaaaaaaaaaajgkaaaaaaaegpcaaaaaaaaaaaaaahaaaaaaaahdhjgpffghgpgegdaaaaaaaaaaaaaaacheaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaamaaaaaaaahdhjgpfchbgehfgpffghgpg",
|
||||
"disc_dyn_expr": null,
|
||||
"dyn_disc_fun": null,
|
||||
"dyn_disc_fun_jac": null,
|
||||
"dyn_disc_fun_jac_hess": null,
|
||||
"dyn_ext_fun_type": "casadi",
|
||||
"dyn_generic_source": null,
|
||||
"f_expl_expr": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaegiaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaacaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaegcaaaaaaaaaaaaaaaegdaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaaghpffghgpgegoaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaahaaaaaaaahdhjgpffghgpgegdaaaaaaaaaaaaaaaegdaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaapaaaaaaachpgehbgehjgpgogpfchbgegjgfhdhegnaaaaaaaaaaaaaaachcaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaamaaaaaaaahdhjgpfchbgehfgpffghgpgegbaaaaaaaaaaaaaaaegdaaaaaaaaaaaaaaachbaaaaaaaaaaaaaaaegnaaaaaaaaaaaaaaachcaaaaaaaaaaaaaaaegdaaaaaaaaaaaaaaaegdaaaaaaaaaaaaaaachfaaaaaaaaaaaaaaaegoaaaaaaaaaaaaaaachcaaaaaaaaaaaaaaachiaaaaaaaaaaaaaaachiaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaanaaaaaaaahdhjgpfbgdgdgfgmgpffghgpg",
|
||||
"f_impl_expr": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaegiaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaacaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaegcaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaajaaaaaaaihpffghgpgpfegpgehegcaaaaaaaaaaaaaaaegdaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaaghpffghgpgegoaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaahaaaaaaaahdhjgpffghgpgegdaaaaaaaaaaaaaaaegdaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaapaaaaaaachpgehbgehjgpgogpfchbgegjgfhdhegnaaaaaaaaaaaaaaachdaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaamaaaaaaaahdhjgpfchbgehfgpffghgpgegcaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaajaaaaaaajhpffghgpgpfegpgehegbaaaaaaaaaaaaaaaegdaaaaaaaaaaaaaaachcaaaaaaaaaaaaaaaegnaaaaaaaaaaaaaaachdaaaaaaaaaaaaaaaegdaaaaaaaaaaaaaaaegdaaaaaaaaaaaaaaachgaaaaaaaaaaaaaaaegoaaaaaaaaaaaaaaachdaaaaaaaaaaaaaaachjaaaaaaaaaaaaaaaegcaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaalaaaaaaaahdhjgpffghgpgpfegpgehchjaaaaaaaaaaaaaaaegcaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaaabaaaaaaahdhjgpfchbgehfgpffghgpgpfegpgehegpcaaaaaaaaaaaaaanaaaaaaaahdhjgpfbgdgdgfgmgpffghgpg",
|
||||
"gnsf": {
|
||||
"nontrivial_f_LO": 1,
|
||||
"purely_linear": 0
|
||||
},
|
||||
"name": "lat",
|
||||
"p": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaeggaaaaaaaaaaaaaaacaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaaghpffghgpgegpcaaaaaaaaaaaaaapaaaaaaachpgehbgehjgpgogpfchbgegjgfhdh",
|
||||
"u": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaegfaaaaaaaaaaaaaaabaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaanaaaaaaaahdhjgpfbgdgdgfgmgpffghgpg",
|
||||
"x": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaegiaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaacaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaaihpffghgpgegpcaaaaaaaaaaaaaafaaaaaaajhpffghgpgegpcaaaaaaaaaaaaaahaaaaaaaahdhjgpffghgpgegpcaaaaaaaaaaaaaamaaaaaaaahdhjgpfchbgehfgpffghgpg",
|
||||
"xdot": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaegiaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaacaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaajaaaaaaaihpffghgpgpfegpgehegpcaaaaaaaaaaaaaajaaaaaaajhpffghgpgpfegpgehegpcaaaaaaaaaaaaaalaaaaaaaahdhjgpffghgpgpfegpgehegpcaaaaaaaaaaaaaaabaaaaaaahdhjgpfchbgehfgpffghgpgpfegpgeh",
|
||||
"z": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaegdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
|
||||
},
|
||||
"parameter_values": [
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"problem_class": "OCP",
|
||||
"shared_lib_ext": ".so",
|
||||
"solver_options": {
|
||||
"Tsim": 0.009765625,
|
||||
"alpha_min": 0.05,
|
||||
"alpha_reduction": 0.7,
|
||||
"collocation_type": "GAUSS_LEGENDRE",
|
||||
"custom_templates": [],
|
||||
"custom_update_copy": true,
|
||||
"custom_update_filename": "",
|
||||
"custom_update_header_filename": "",
|
||||
"eps_sufficient_descent": 0.0001,
|
||||
"exact_hess_constr": 1,
|
||||
"exact_hess_cost": 1,
|
||||
"exact_hess_dyn": 1,
|
||||
"ext_cost_num_hess": 0,
|
||||
"ext_fun_compile_flags": "-O2",
|
||||
"full_step_dual": 0,
|
||||
"globalization": "FIXED_STEP",
|
||||
"globalization_use_SOC": 0,
|
||||
"hessian_approx": "GAUSS_NEWTON",
|
||||
"hpipm_mode": "BALANCE",
|
||||
"initialize_t_slacks": 0,
|
||||
"integrator_type": "ERK",
|
||||
"levenberg_marquardt": 0.0,
|
||||
"line_search_use_sufficient_descent": 0,
|
||||
"model_external_shared_lib_dir": null,
|
||||
"model_external_shared_lib_name": null,
|
||||
"nlp_solver_ext_qp_res": 0,
|
||||
"nlp_solver_max_iter": 100,
|
||||
"nlp_solver_step_length": 1.0,
|
||||
"nlp_solver_tol_comp": 1e-06,
|
||||
"nlp_solver_tol_eq": 1e-06,
|
||||
"nlp_solver_tol_ineq": 1e-06,
|
||||
"nlp_solver_tol_stat": 1e-06,
|
||||
"nlp_solver_type": "SQP_RTI",
|
||||
"print_level": 0,
|
||||
"qp_solver": "PARTIAL_CONDENSING_HPIPM",
|
||||
"qp_solver_cond_N": 1,
|
||||
"qp_solver_cond_ric_alg": 1,
|
||||
"qp_solver_iter_max": 1,
|
||||
"qp_solver_ric_alg": 1,
|
||||
"qp_solver_tol_comp": null,
|
||||
"qp_solver_tol_eq": null,
|
||||
"qp_solver_tol_ineq": null,
|
||||
"qp_solver_tol_stat": null,
|
||||
"qp_solver_warm_start": 0,
|
||||
"regularize_method": null,
|
||||
"shooting_nodes": [
|
||||
0.0,
|
||||
0.009765625,
|
||||
0.0390625,
|
||||
0.087890625,
|
||||
0.15625,
|
||||
0.244140625,
|
||||
0.3515625,
|
||||
0.478515625,
|
||||
0.625,
|
||||
0.791015625,
|
||||
0.9765625,
|
||||
1.181640625,
|
||||
1.40625,
|
||||
1.650390625,
|
||||
1.9140625,
|
||||
2.197265625,
|
||||
2.5,
|
||||
2.822265625,
|
||||
3.1640625,
|
||||
3.525390625,
|
||||
3.90625,
|
||||
4.306640625,
|
||||
4.7265625,
|
||||
5.166015625,
|
||||
5.625,
|
||||
6.103515625,
|
||||
6.6015625,
|
||||
7.119140625,
|
||||
7.65625,
|
||||
8.212890625,
|
||||
8.7890625,
|
||||
9.384765625,
|
||||
10.0
|
||||
],
|
||||
"sim_method_jac_reuse": [
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
"sim_method_newton_iter": 3,
|
||||
"sim_method_newton_tol": 0.0,
|
||||
"sim_method_num_stages": [
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4
|
||||
],
|
||||
"sim_method_num_steps": [
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1
|
||||
],
|
||||
"tf": 10.0,
|
||||
"time_steps": [
|
||||
0.009765625,
|
||||
0.029296875,
|
||||
0.048828125,
|
||||
0.068359375,
|
||||
0.087890625,
|
||||
0.107421875,
|
||||
0.126953125,
|
||||
0.146484375,
|
||||
0.166015625,
|
||||
0.185546875,
|
||||
0.205078125,
|
||||
0.224609375,
|
||||
0.244140625,
|
||||
0.263671875,
|
||||
0.283203125,
|
||||
0.302734375,
|
||||
0.322265625,
|
||||
0.341796875,
|
||||
0.361328125,
|
||||
0.380859375,
|
||||
0.400390625,
|
||||
0.419921875,
|
||||
0.439453125,
|
||||
0.458984375,
|
||||
0.478515625,
|
||||
0.498046875,
|
||||
0.517578125,
|
||||
0.537109375,
|
||||
0.556640625,
|
||||
0.576171875,
|
||||
0.595703125,
|
||||
0.615234375
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -1,524 +0,0 @@
|
||||
{
|
||||
"acados_include_path": "/data/openpilot/third_party/acados/include",
|
||||
"acados_lib_path": "/data/openpilot/third_party/acados/lib",
|
||||
"code_export_directory": "/data/openpilot/selfdrive/controls/lib/longitudinal_mpc_lib/c_generated_code",
|
||||
"constraints": {
|
||||
"C": [],
|
||||
"C_e": [],
|
||||
"D": [],
|
||||
"constr_type": "BGH",
|
||||
"constr_type_e": "BGH",
|
||||
"idxbu": [],
|
||||
"idxbx": [],
|
||||
"idxbx_0": [
|
||||
0,
|
||||
1,
|
||||
2
|
||||
],
|
||||
"idxbx_e": [],
|
||||
"idxbxe_0": [
|
||||
0,
|
||||
1,
|
||||
2
|
||||
],
|
||||
"idxsbu": [],
|
||||
"idxsbx": [],
|
||||
"idxsbx_e": [],
|
||||
"idxsg": [],
|
||||
"idxsg_e": [],
|
||||
"idxsh": [
|
||||
0,
|
||||
1,
|
||||
2,
|
||||
3
|
||||
],
|
||||
"idxsh_e": [],
|
||||
"idxsphi": [],
|
||||
"idxsphi_e": [],
|
||||
"lbu": [],
|
||||
"lbx": [],
|
||||
"lbx_0": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"lbx_e": [],
|
||||
"lg": [],
|
||||
"lg_e": [],
|
||||
"lh": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"lh_e": [],
|
||||
"lphi": [],
|
||||
"lphi_e": [],
|
||||
"lsbu": [],
|
||||
"lsbx": [],
|
||||
"lsbx_e": [],
|
||||
"lsg": [],
|
||||
"lsg_e": [],
|
||||
"lsh": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"lsh_e": [],
|
||||
"lsphi": [],
|
||||
"lsphi_e": [],
|
||||
"ubu": [],
|
||||
"ubx": [],
|
||||
"ubx_0": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"ubx_e": [],
|
||||
"ug": [],
|
||||
"ug_e": [],
|
||||
"uh": [
|
||||
10000.0,
|
||||
10000.0,
|
||||
10000.0,
|
||||
10000.0
|
||||
],
|
||||
"uh_e": [],
|
||||
"uphi": [],
|
||||
"uphi_e": [],
|
||||
"usbu": [],
|
||||
"usbx": [],
|
||||
"usbx_e": [],
|
||||
"usg": [],
|
||||
"usg_e": [],
|
||||
"ush": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"ush_e": [],
|
||||
"usphi": [],
|
||||
"usphi_e": []
|
||||
},
|
||||
"cost": {
|
||||
"Vu": [],
|
||||
"Vu_0": [],
|
||||
"Vx": [],
|
||||
"Vx_0": [],
|
||||
"Vx_e": [],
|
||||
"Vz": [],
|
||||
"Vz_0": [],
|
||||
"W": [
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
]
|
||||
],
|
||||
"W_0": [
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
]
|
||||
],
|
||||
"W_e": [
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
[
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
]
|
||||
],
|
||||
"Zl": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"Zl_e": [],
|
||||
"Zu": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"Zu_e": [],
|
||||
"cost_ext_fun_type": "casadi",
|
||||
"cost_ext_fun_type_0": "casadi",
|
||||
"cost_ext_fun_type_e": "casadi",
|
||||
"cost_type": "NONLINEAR_LS",
|
||||
"cost_type_0": "NONLINEAR_LS",
|
||||
"cost_type_e": "NONLINEAR_LS",
|
||||
"yref": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"yref_0": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"yref_e": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"zl": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"zl_e": [],
|
||||
"zu": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
],
|
||||
"zu_e": []
|
||||
},
|
||||
"cython_include_dirs": [
|
||||
"/usr/local/venv/lib/python3.12/site-packages/numpy/_core/include",
|
||||
"/usr/include/python3.12"
|
||||
],
|
||||
"dims": {
|
||||
"N": 12,
|
||||
"nbu": 0,
|
||||
"nbx": 0,
|
||||
"nbx_0": 3,
|
||||
"nbx_e": 0,
|
||||
"nbxe_0": 3,
|
||||
"ng": 0,
|
||||
"ng_e": 0,
|
||||
"nh": 4,
|
||||
"nh_e": 0,
|
||||
"np": 6,
|
||||
"nphi": 0,
|
||||
"nphi_e": 0,
|
||||
"nr": 0,
|
||||
"nr_e": 0,
|
||||
"ns": 4,
|
||||
"ns_e": 0,
|
||||
"nsbu": 0,
|
||||
"nsbx": 0,
|
||||
"nsbx_e": 0,
|
||||
"nsg": 0,
|
||||
"nsg_e": 0,
|
||||
"nsh": 4,
|
||||
"nsh_e": 0,
|
||||
"nsphi": 0,
|
||||
"nsphi_e": 0,
|
||||
"nu": 1,
|
||||
"nx": 3,
|
||||
"ny": 6,
|
||||
"ny_0": 6,
|
||||
"ny_e": 5,
|
||||
"nz": 0
|
||||
},
|
||||
"json_file": "/data/openpilot/selfdrive/controls/lib/longitudinal_mpc_lib/acados_ocp_long.json",
|
||||
"model": {
|
||||
"con_h_expr": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaegiaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaacaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaaghpffghgpgegcaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaabgpffghgpgegpcaaaaaaaaaaaaaafaaaaaaabgpfngjgogegcaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaabgpfngbgihchcaaaaaaaaaaaaaaaegeaaaaaaaaaaaaaaaegcaaaaaaaaaaaaaaaegcaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaakaaaaaaaihpfpgcgdhehbgdgmgfgegpcaaaaaaaaaaaaaafaaaaaaaihpffghgpgegdaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaacbaaaaaamgfgbgegpfegbgoghgfgchpfggbgdgehpgchegbaaaaaaaaaaaaaaaegbaaaaaaaaaaaaaaaegeaaaaaaaaaaaaaaaeglaaaaaaaaaaaaaaachbaaaaaaaaaaaaaaaegmcaaaaaaaaaaaaaajgfaaaaaaaegdaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaanaaaaaaamgfgbgegpfehpfggpgmgmgpghhchbaaaaaaaaaaaaaaaegmcaaaaaaaaaaaaaajggaaaaaaaegbaaaaaaaaaaaaaaachbaaaaaaaaaaaaaaaegmcaaaaaaaaaaaaaajgkaaaaaaa",
|
||||
"con_h_expr_e": null,
|
||||
"con_phi_expr": null,
|
||||
"con_phi_expr_e": null,
|
||||
"con_r_expr": null,
|
||||
"con_r_expr_e": null,
|
||||
"con_r_in_phi": null,
|
||||
"con_r_in_phi_e": null,
|
||||
"cost_conl_custom_outer_hess": null,
|
||||
"cost_conl_custom_outer_hess_0": null,
|
||||
"cost_conl_custom_outer_hess_e": null,
|
||||
"cost_expr_ext_cost": null,
|
||||
"cost_expr_ext_cost_0": null,
|
||||
"cost_expr_ext_cost_custom_hess": null,
|
||||
"cost_expr_ext_cost_custom_hess_0": null,
|
||||
"cost_expr_ext_cost_custom_hess_e": null,
|
||||
"cost_expr_ext_cost_e": null,
|
||||
"cost_psi_expr": null,
|
||||
"cost_psi_expr_0": null,
|
||||
"cost_psi_expr_e": null,
|
||||
"cost_r_in_psi_expr": null,
|
||||
"cost_r_in_psi_expr_0": null,
|
||||
"cost_r_in_psi_expr_e": null,
|
||||
"cost_y_expr": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaegkaaaaaaaaaaaaaaagaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaacaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaafaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaegeaaaaaaaaaaaaaaaegcaaaaaaaaaaaaaaaegcaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaakaaaaaaaihpfpgcgdhehbgdgmgfgegpcaaaaaaaaaaaaaafaaaaaaaihpffghgpgegbaaaaaaaaaaaaaaaegbaaaaaaaaaaaaaaaegeaaaaaaaaaaaaaaaeglaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaaghpffghgpgegmcaaaaaaaaaaaaaajgfaaaaaaaegdaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaanaaaaaaamgfgbgegpfehpfggpgmgmgpghhcheaaaaaaaaaaaaaaaegmcaaaaaaaaaaaaaajggaaaaaaaegbaaaaaaaaaaaaaaacheaaaaaaaaaaaaaaaegmcaaaaaaaaaaaaaajgkaaaaaaachcaaaaaaaaaaaaaaacheaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaabgpffghgpgegcaaaaaaaaaaaaaaachbbaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaagaaaaaaaahchfgghpfbgegpcaaaaaaaaaaaaaafaaaaaaakgpffghgpg",
|
||||
"cost_y_expr_0": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaegkaaaaaaaaaaaaaaagaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaacaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaafaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaegeaaaaaaaaaaaaaaaegcaaaaaaaaaaaaaaaegcaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaakaaaaaaaihpfpgcgdhehbgdgmgfgegpcaaaaaaaaaaaaaafaaaaaaaihpffghgpgegbaaaaaaaaaaaaaaaegbaaaaaaaaaaaaaaaegeaaaaaaaaaaaaaaaeglaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaaghpffghgpgegmcaaaaaaaaaaaaaajgfaaaaaaaegdaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaanaaaaaaamgfgbgegpfehpfggpgmgmgpghhcheaaaaaaaaaaaaaaaegmcaaaaaaaaaaaaaajggaaaaaaaegbaaaaaaaaaaaaaaacheaaaaaaaaaaaaaaaegmcaaaaaaaaaaaaaajgkaaaaaaachcaaaaaaaaaaaaaaacheaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaabgpffghgpgegcaaaaaaaaaaaaaaachbbaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaagaaaaaaaahchfgghpfbgegpcaaaaaaaaaaaaaafaaaaaaakgpffghgpg",
|
||||
"cost_y_expr_e": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaegjaaaaaaaaaaaaaaafaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaacaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaafaaaaaaaaaaaaaaaegeaaaaaaaaaaaaaaaegcaaaaaaaaaaaaaaaegcaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaakaaaaaaaihpfpgcgdhehbgdgmgfgegpcaaaaaaaaaaaaaafaaaaaaaihpffghgpgegbaaaaaaaaaaaaaaaegbaaaaaaaaaaaaaaaegeaaaaaaaaaaaaaaaeglaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaaghpffghgpgegmcaaaaaaaaaaaaaajgfaaaaaaaegdaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaanaaaaaaamgfgbgegpfehpfggpgmgmgpghhcheaaaaaaaaaaaaaaaegmcaaaaaaaaaaaaaajggaaaaaaaegbaaaaaaaaaaaaaaacheaaaaaaaaaaaaaaaegmcaaaaaaaaaaaaaajgkaaaaaaachcaaaaaaaaaaaaaaacheaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaabgpffghgpgegcaaaaaaaaaaaaaaachbbaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaagaaaaaaaahchfgghpfbg",
|
||||
"disc_dyn_expr": null,
|
||||
"dyn_disc_fun": null,
|
||||
"dyn_disc_fun_jac": null,
|
||||
"dyn_disc_fun_jac_hess": null,
|
||||
"dyn_ext_fun_type": "casadi",
|
||||
"dyn_generic_source": null,
|
||||
"f_expl_expr": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaeghaaaaaaaaaaaaaaadaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaacaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaaghpffghgpgegpcaaaaaaaaaaaaaafaaaaaaabgpffghgpgegpcaaaaaaaaaaaaaafaaaaaaakgpffghgpg",
|
||||
"f_impl_expr": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaeghaaaaaaaaaaaaaaadaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaacaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaegcaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaajaaaaaaaihpffghgpgpfegpgehegpcaaaaaaaaaaaaaafaaaaaaaghpffghgpgegcaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaajaaaaaaaghpffghgpgpfegpgehegpcaaaaaaaaaaaaaafaaaaaaabgpffghgpgegcaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaajaaaaaaabgpffghgpgpfegpgehegpcaaaaaaaaaaaaaafaaaaaaakgpffghgpg",
|
||||
"gnsf": {
|
||||
"nontrivial_f_LO": 1,
|
||||
"purely_linear": 0
|
||||
},
|
||||
"name": "long",
|
||||
"p": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaegkaaaaaaaaaaaaaaagaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaacaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaafaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaabgpfngjgogegpcaaaaaaaaaaaaaafaaaaaaabgpfngbgihegpcaaaaaaaaaaaaaakaaaaaaaihpfpgcgdhehbgdgmgfgegpcaaaaaaaaaaaaaagaaaaaaaahchfgghpfbgegpcaaaaaaaaaaaaaanaaaaaaamgfgbgegpfehpfggpgmgmgpghhegpcaaaaaaaaaaaaaacbaaaaaamgfgbgegpfegbgoghgfgchpfggbgdgehpgch",
|
||||
"u": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaegfaaaaaaaaaaaaaaabaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaakgpffghgpg",
|
||||
"x": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaeghaaaaaaaaaaaaaaadaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaacaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaafaaaaaaaihpffghgpgegpcaaaaaaaaaaaaaafaaaaaaaghpffghgpgegpcaaaaaaaaaaaaaafaaaaaaabgpffghgpg",
|
||||
"xdot": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaeghaaaaaaaaaaaaaaadaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaacaaaaaaaaaaaaaaadaaaaaaaaaaaaaaaegpcaaaaaaaaaaaaaajaaaaaaaihpffghgpgpfegpgehegpcaaaaaaaaaaaaaajaaaaaaaghpffghgpgpfegpgehegpcaaaaaaaaaaaaaajaaaaaaabgpffghgpgpfegpgeh",
|
||||
"z": "jhpnnagiieahaaaadaaaaaaaaaaaaaaaaaegdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
|
||||
},
|
||||
"parameter_values": [
|
||||
-1.2,
|
||||
1.2,
|
||||
0.0,
|
||||
0.0,
|
||||
1.45,
|
||||
0.75
|
||||
],
|
||||
"problem_class": "OCP",
|
||||
"shared_lib_ext": ".so",
|
||||
"solver_options": {
|
||||
"Tsim": 0.06944444444444445,
|
||||
"alpha_min": 0.05,
|
||||
"alpha_reduction": 0.7,
|
||||
"collocation_type": "GAUSS_LEGENDRE",
|
||||
"custom_templates": [],
|
||||
"custom_update_copy": true,
|
||||
"custom_update_filename": "",
|
||||
"custom_update_header_filename": "",
|
||||
"eps_sufficient_descent": 0.0001,
|
||||
"exact_hess_constr": 1,
|
||||
"exact_hess_cost": 1,
|
||||
"exact_hess_dyn": 1,
|
||||
"ext_cost_num_hess": 0,
|
||||
"ext_fun_compile_flags": "-O2",
|
||||
"full_step_dual": 0,
|
||||
"globalization": "FIXED_STEP",
|
||||
"globalization_use_SOC": 0,
|
||||
"hessian_approx": "GAUSS_NEWTON",
|
||||
"hpipm_mode": "BALANCE",
|
||||
"initialize_t_slacks": 0,
|
||||
"integrator_type": "ERK",
|
||||
"levenberg_marquardt": 0.0,
|
||||
"line_search_use_sufficient_descent": 0,
|
||||
"model_external_shared_lib_dir": null,
|
||||
"model_external_shared_lib_name": null,
|
||||
"nlp_solver_ext_qp_res": 0,
|
||||
"nlp_solver_max_iter": 100,
|
||||
"nlp_solver_step_length": 1.0,
|
||||
"nlp_solver_tol_comp": 1e-06,
|
||||
"nlp_solver_tol_eq": 1e-06,
|
||||
"nlp_solver_tol_ineq": 1e-06,
|
||||
"nlp_solver_tol_stat": 1e-06,
|
||||
"nlp_solver_type": "SQP_RTI",
|
||||
"print_level": 0,
|
||||
"qp_solver": "PARTIAL_CONDENSING_HPIPM",
|
||||
"qp_solver_cond_N": 1,
|
||||
"qp_solver_cond_ric_alg": 1,
|
||||
"qp_solver_iter_max": 10,
|
||||
"qp_solver_ric_alg": 1,
|
||||
"qp_solver_tol_comp": 0.001,
|
||||
"qp_solver_tol_eq": 0.001,
|
||||
"qp_solver_tol_ineq": 0.001,
|
||||
"qp_solver_tol_stat": 0.001,
|
||||
"qp_solver_warm_start": 0,
|
||||
"regularize_method": null,
|
||||
"shooting_nodes": [
|
||||
0.0,
|
||||
0.06944444444444445,
|
||||
0.2777777777777778,
|
||||
0.625,
|
||||
1.1111111111111112,
|
||||
1.7361111111111114,
|
||||
2.5,
|
||||
3.4027777777777786,
|
||||
4.444444444444445,
|
||||
5.625,
|
||||
6.9444444444444455,
|
||||
8.402777777777777,
|
||||
10.0
|
||||
],
|
||||
"sim_method_jac_reuse": [
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
],
|
||||
"sim_method_newton_iter": 3,
|
||||
"sim_method_newton_tol": 0.0,
|
||||
"sim_method_num_stages": [
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4
|
||||
],
|
||||
"sim_method_num_steps": [
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
1
|
||||
],
|
||||
"tf": 10.0,
|
||||
"time_steps": [
|
||||
0.06944444444444445,
|
||||
0.20833333333333334,
|
||||
0.3472222222222222,
|
||||
0.48611111111111116,
|
||||
0.6250000000000002,
|
||||
0.7638888888888886,
|
||||
0.9027777777777786,
|
||||
1.041666666666666,
|
||||
1.1805555555555554,
|
||||
1.3194444444444455,
|
||||
1.4583333333333313,
|
||||
1.5972222222222232
|
||||
]
|
||||
}
|
||||
}
|
||||
Binary file not shown.
Binary file not shown.
@@ -23,7 +23,7 @@ from websocket import (ABNF, WebSocket, WebSocketException, WebSocketTimeoutExce
|
||||
|
||||
import cereal.messaging as messaging
|
||||
from sunnypilot.sunnylink.api import SunnylinkApi
|
||||
from sunnypilot.sunnylink.utils import sunnylink_need_register, sunnylink_ready, get_param_as_byte, save_param_from_base64_encoded_string
|
||||
from sunnypilot.sunnylink.utils import sunnylink_need_register, sunnylink_ready, get_param_as_byte
|
||||
|
||||
SUNNYLINK_ATHENA_HOST = os.getenv('SUNNYLINK_ATHENA_HOST', 'wss://ws.stg.api.sunnypilot.ai')
|
||||
HANDLER_THREADS = int(os.getenv('HANDLER_THREADS', "4"))
|
||||
@@ -184,18 +184,14 @@ def getParams(params_keys: list[str], compression: bool = False) -> str | dict[s
|
||||
|
||||
try:
|
||||
param_keys_validated = [key for key in params_keys if key in getParamsAllKeys()]
|
||||
params_dict: dict[str, list[dict[str, str | bool | int]]] = {"params": []}
|
||||
for key in param_keys_validated:
|
||||
value = get_param_as_byte(key)
|
||||
if value is None:
|
||||
continue
|
||||
|
||||
params_dict["params"].append({
|
||||
params_dict: dict[str, list[dict[str, str | bool | int ]]] = {"params": [
|
||||
{
|
||||
"key": key,
|
||||
"value": base64.b64encode(gzip.compress(value) if compression else value).decode('utf-8'),
|
||||
"value": base64.b64encode(gzip.compress(get_param_as_byte(key)) if compression else get_param_as_byte(key)).decode('utf-8'),
|
||||
"type": int(params.get_type(key).value),
|
||||
"is_compressed": compression
|
||||
})
|
||||
} for key in param_keys_validated
|
||||
]}
|
||||
|
||||
response = {str(param.get('key')): str(param.get('value')) for param in params_dict.get("params", [])}
|
||||
response |= {"params": json.dumps(params_dict.get("params", []))} # Upcoming for settings v1
|
||||
@@ -208,9 +204,15 @@ def getParams(params_keys: list[str], compression: bool = False) -> str | dict[s
|
||||
|
||||
@dispatcher.add_method
|
||||
def saveParams(params_to_update: dict[str, str], compression: bool = False) -> None:
|
||||
for key, value in params_to_update.items():
|
||||
params = Params()
|
||||
params_dict = {key: base64.b64decode(value) for key, value in params_to_update.items()}
|
||||
|
||||
if compression:
|
||||
params_dict = {key: gzip.decompress(value) for key, value in params_dict.items()}
|
||||
|
||||
for key, value in params_dict.items():
|
||||
try:
|
||||
save_param_from_base64_encoded_string(key, value, compression)
|
||||
params.put(key, value)
|
||||
except Exception as e:
|
||||
cloudlog.error(f"sunnylinkd.saveParams.exception {e}")
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ from enum import Enum
|
||||
from typing import Any
|
||||
|
||||
from openpilot.common.git import get_branch
|
||||
from openpilot.common.params import Params, ParamKeyFlag
|
||||
from openpilot.common.params import Params, ParamKeyType, ParamKeyFlag
|
||||
from openpilot.common.realtime import Ratekeeper
|
||||
from openpilot.common.swaglog import cloudlog
|
||||
from openpilot.system.version import get_version
|
||||
@@ -20,7 +20,7 @@ from openpilot.system.version import get_version
|
||||
from cereal import messaging, custom
|
||||
from sunnypilot.sunnylink.api import SunnylinkApi
|
||||
from sunnypilot.sunnylink.backups.utils import decrypt_compressed_data, encrypt_compress_data, SnakeCaseEncoder
|
||||
from sunnypilot.sunnylink.utils import get_param_as_byte, save_param_from_base64_encoded_string
|
||||
from sunnypilot.sunnylink.utils import get_param_as_byte
|
||||
|
||||
|
||||
class OperationType(Enum):
|
||||
@@ -173,7 +173,8 @@ class BackupManagerSP:
|
||||
self._update_progress(75.0, OperationType.RESTORE)
|
||||
|
||||
# Apply configuration
|
||||
self._apply_config(config_data)
|
||||
all_values_encoded = self._get_metadata_value(backup_metadata, "all_values_encoded", "false")
|
||||
self._apply_config(config_data, str(all_values_encoded).lower() == "true")
|
||||
|
||||
self.restore_status = custom.BackupManagerSP.Status.completed
|
||||
self._update_progress(100.0, OperationType.RESTORE)
|
||||
@@ -186,7 +187,7 @@ class BackupManagerSP:
|
||||
self._report_status()
|
||||
return False
|
||||
|
||||
def _apply_config(self, config_data: dict[str, str]) -> None:
|
||||
def _apply_config(self, config_data: dict[str, str], all_values_encoded: bool = False) -> None:
|
||||
"""Applies configuration data from a backup, but only for parameters marked as backupable."""
|
||||
backupable_params = [k.decode('utf-8') for k in self.params.all_keys(ParamKeyFlag.BACKUP)]
|
||||
backupable_set_lower = {p.lower() for p in backupable_params}
|
||||
@@ -198,8 +199,26 @@ class BackupManagerSP:
|
||||
if param.lower() in backupable_set_lower:
|
||||
# Find real param name (with correct casing)
|
||||
real_param = next(p for p in backupable_params if p.lower() == param.lower())
|
||||
param_type = self.params.get_type(real_param)
|
||||
try:
|
||||
save_param_from_base64_encoded_string(real_param, encoded_value)
|
||||
value = base64.b64decode(encoded_value) if all_values_encoded else encoded_value
|
||||
|
||||
if param_type != ParamKeyType.BYTES:
|
||||
value = value.decode('utf-8') # type: ignore
|
||||
|
||||
if param_type == ParamKeyType.STRING:
|
||||
value = value
|
||||
elif param_type == ParamKeyType.BOOL:
|
||||
value = value.lower() in ('true', '1', 'yes') # type: ignore
|
||||
elif param_type == ParamKeyType.INT:
|
||||
value = int(value) # type: ignore
|
||||
elif param_type == ParamKeyType.FLOAT:
|
||||
value = float(value) # type: ignore
|
||||
elif param_type == ParamKeyType.TIME:
|
||||
value = str(value)
|
||||
elif param_type == ParamKeyType.JSON:
|
||||
value = json.loads(value)
|
||||
self.params.put(real_param, value)
|
||||
restored_count += 1
|
||||
except Exception as e:
|
||||
cloudlog.error(f"Failed to restore param {param}: {str(e)}")
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
import base64
|
||||
import gzip
|
||||
import json
|
||||
from sunnypilot.sunnylink.api import SunnylinkApi, UNREGISTERED_SUNNYLINK_DONGLE_ID
|
||||
from openpilot.common.params import Params, ParamKeyType
|
||||
@@ -60,45 +58,13 @@ def get_api_token():
|
||||
print(f"API Token: {token}")
|
||||
|
||||
|
||||
def get_param_as_byte(param_name: str) -> bytes | None:
|
||||
"""Get a parameter as bytes. Returns None if the parameter does not exist."""
|
||||
def get_param_as_byte(param_name: str) -> bytes:
|
||||
params = Params()
|
||||
param = params.get(param_name)
|
||||
if param is None:
|
||||
return None
|
||||
|
||||
param_type = params.get_type(param_name)
|
||||
|
||||
if param_type == ParamKeyType.BYTES:
|
||||
return bytes(param)
|
||||
elif param_type == ParamKeyType.JSON:
|
||||
return json.dumps(param).encode('utf-8')
|
||||
return str(param).encode('utf-8')
|
||||
|
||||
|
||||
def save_param_from_base64_encoded_string(param_name: str, base64_encoded_data: str, is_compressed=False) -> None:
|
||||
"""Save a parameter from bytes. Overwrites the parameter if it already exists."""
|
||||
params = Params()
|
||||
# Find real param name (with correct casing)
|
||||
param_type = params.get_type(param_name)
|
||||
value = base64.b64decode(base64_encoded_data)
|
||||
|
||||
if is_compressed:
|
||||
value = gzip.decompress(value)
|
||||
|
||||
# We convert to string anything that isn't bytes first. We later transform further.
|
||||
if param_type != ParamKeyType.BYTES:
|
||||
value = value.decode('utf-8') # type: ignore
|
||||
|
||||
if param_type == ParamKeyType.STRING:
|
||||
value = value
|
||||
elif param_type == ParamKeyType.BOOL:
|
||||
value = value.lower() in ('true', '1', 'yes') # type: ignore
|
||||
elif param_type == ParamKeyType.INT:
|
||||
value = int(value) # type: ignore
|
||||
elif param_type == ParamKeyType.FLOAT:
|
||||
value = float(value) # type: ignore
|
||||
elif param_type == ParamKeyType.TIME:
|
||||
value = str(value) # type: ignore
|
||||
elif param_type == ParamKeyType.JSON:
|
||||
value = json.loads(value)
|
||||
params.put(param_name, value)
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -24,8 +24,6 @@ SP_BRANCH_MIGRATIONS = {
|
||||
("tizi", "staging-c3-new"): "staging",
|
||||
("tizi", "dev-c3-new"): "dev",
|
||||
("tizi", "master-dev-c3-new"): "master-dev",
|
||||
("tici", "hkg-angle-steering-2025"): "hkg-angle-steering-2025-tici",
|
||||
("tici", "hkg-angle-steering-2025-prebuilt"): "hkg-angle-steering-2025-tici-prebuilt"
|
||||
}
|
||||
|
||||
BUILD_METADATA_FILENAME = "build.json"
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
@@ -1,183 +0,0 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<root>
|
||||
<tabbed_widget parent="main_window" name="Main Window">
|
||||
<Tab containers="1" tab_name="actuator data">
|
||||
<Container>
|
||||
<DockSplitter orientation="-" sizes="0.25;0.25;0.25;0.25" count="4">
|
||||
<DockArea name="...">
|
||||
<plot mode="TimeSeries" flip_x="false" flip_y="false" style="Lines">
|
||||
<range bottom="-0.100000" left="301.990881" top="0.100000" right="462.962504"/>
|
||||
<limitY/>
|
||||
<curve name="/carControl/actuators/torque" color="#17becf"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot mode="TimeSeries" flip_x="false" flip_y="false" style="Lines">
|
||||
<range bottom="-130.920132" left="301.990881" top="103.993176" right="462.962504"/>
|
||||
<limitY/>
|
||||
<curve name="/carControl/actuators/steeringAngleDeg" color="#1f77b4"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot mode="TimeSeries" flip_x="false" flip_y="false" style="Lines">
|
||||
<range bottom="-0.604818" left="301.990881" top="24.797527" right="462.962504"/>
|
||||
<limitY/>
|
||||
<curve name="/carState/vEgoRaw" color="#ff7f0e"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot mode="TimeSeries" flip_x="false" flip_y="false" style="Lines">
|
||||
<range bottom="-0.037812" left="301.990881" top="0.047261" right="462.962504"/>
|
||||
<limitY/>
|
||||
<curve name="/carControl/actuators/curvature" color="#f14cc1"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
</DockSplitter>
|
||||
</Container>
|
||||
</Tab>
|
||||
<Tab containers="1" tab_name="steering messages (CAN)">
|
||||
<Container>
|
||||
<DockSplitter orientation="-" sizes="0.142857;0.142857;0.142857;0.142857;0.142857;0.142857;0.142857" count="7">
|
||||
<DockArea name="...">
|
||||
<plot mode="TimeSeries" flip_x="false" flip_y="false" style="Lines">
|
||||
<range bottom="-0.025000" left="301.990881" top="1.025000" right="462.962504"/>
|
||||
<limitY/>
|
||||
<curve name="/can/128/LKAS_ALT/ADAS_ACIAnglTqRedcGainVal" color="#1f77b4"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot mode="TimeSeries" flip_x="false" flip_y="false" style="Lines">
|
||||
<range bottom="-128.740000" left="301.990881" top="103.940000" right="462.962504"/>
|
||||
<limitY/>
|
||||
<curve name="/can/128/LKAS_ALT/ADAS_StrAnglReqVal" color="#29d627"/>
|
||||
<curve name="/can/192/LKAS_ALT/ADAS_StrAnglReqVal" color="#b41f32"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot mode="TimeSeries" flip_x="false" flip_y="false" style="Lines">
|
||||
<range bottom="-0.025000" left="301.990881" top="1.025000" right="462.962504"/>
|
||||
<limitY/>
|
||||
<curve name="/carState/steeringPressed" color="#d62728"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot mode="TimeSeries" flip_x="false" flip_y="false" style="Lines">
|
||||
<range bottom="0.975000" left="301.990881" top="2.025000" right="462.962504"/>
|
||||
<limitY/>
|
||||
<curve name="/sendcan/0/LKAS_ALT/LKAS_ANGLE_ACTIVE" color="#1f77b4"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot mode="TimeSeries" flip_x="false" flip_y="false" style="Lines">
|
||||
<range bottom="-0.025000" left="301.990881" top="1.025000" right="462.962504"/>
|
||||
<limitY/>
|
||||
<curve name="/carState/steerFaultTemporary" color="#d62728"/>
|
||||
<curve name="/carControl/latActive" color="#1ac938"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot mode="TimeSeries" flip_x="false" flip_y="false" style="Lines">
|
||||
<range bottom="-0.025000" left="301.990881" top="1.025000" right="462.962504"/>
|
||||
<limitY/>
|
||||
<curve name="/can/1/CCNC_0x161/DAW_ICON" color="#f14cc1"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot mode="TimeSeries" flip_x="false" flip_y="false" style="Lines">
|
||||
<range bottom="-14.375000" left="301.990881" top="589.375000" right="462.962504"/>
|
||||
<limitY/>
|
||||
<curve name="/pandaStates/0/safetyTxBlocked" color="#1f77b4"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
</DockSplitter>
|
||||
</Container>
|
||||
</Tab>
|
||||
<Tab containers="1" tab_name="Understanding Torque">
|
||||
<Container>
|
||||
<DockSplitter orientation="-" sizes="0.5;0.5" count="2">
|
||||
<DockArea name="...">
|
||||
<plot mode="TimeSeries" flip_x="false" flip_y="false" style="Lines">
|
||||
<range bottom="-6.175000" left="429.901019" top="253.175000" right="590.696728"/>
|
||||
<limitY/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot mode="TimeSeries" flip_x="false" flip_y="false" style="Lines">
|
||||
<range bottom="-24.190000" left="301.990881" top="21.590000" right="462.962504"/>
|
||||
<limitY/>
|
||||
<curve name="/carState/steeringTorqueEps" color="#1ac938"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
</DockSplitter>
|
||||
</Container>
|
||||
</Tab>
|
||||
<Tab containers="1" tab_name="tab2">
|
||||
<Container>
|
||||
<DockSplitter orientation="-" sizes="0.25;0.25;0.25;0.25" count="4">
|
||||
<DockArea name="...">
|
||||
<plot mode="TimeSeries" flip_x="false" flip_y="false" style="Dots">
|
||||
<range bottom="-0.025000" left="301.990881" top="1.025000" right="462.962504"/>
|
||||
<limitY/>
|
||||
<curve name="/sendcan/0/LKAS_ALT/ADAS_ACIAnglTqRedcGainVal" color="#9467bd"/>
|
||||
<curve name="/can/1/LFA_ALT/ADAS_ACIAnglTqRedcGainVal" color="#17becf"/>
|
||||
<curve name="/can/128/LKAS_ALT/ADAS_ACIAnglTqRedcGainVal" color="#1f77b4"/>
|
||||
<curve name="/can/192/LKAS_ALT/ADAS_ACIAnglTqRedcGainVal" color="#d62728"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot mode="TimeSeries" flip_x="false" flip_y="false" style="Dots">
|
||||
<range bottom="0.975000" left="301.990881" top="2.025000" right="462.962504"/>
|
||||
<limitY/>
|
||||
<curve name="/can/128/LKAS_ALT/LKAS_ANGLE_ACTIVE" color="#b8c91a"/>
|
||||
<curve name="/can/192/LKAS_ALT/LKAS_ANGLE_ACTIVE" color="#ff7f0e"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot mode="TimeSeries" flip_x="false" flip_y="false" style="Lines">
|
||||
<range bottom="-0.025000" left="301.990881" top="1.025000" right="462.962504"/>
|
||||
<limitY/>
|
||||
<curve name="/can/1/CCNC_0x161/DAW_ICON" color="#f14cc1"/>
|
||||
<curve name="/carState/steerFaultTemporary" color="#1f77b4"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot mode="TimeSeries" flip_x="false" flip_y="false" style="Dots">
|
||||
<range bottom="-14.375000" left="301.990881" top="589.375000" right="462.962504"/>
|
||||
<limitY/>
|
||||
<curve name="/pandaStates/0/safetyTxBlocked" color="#bcbd22"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
</DockSplitter>
|
||||
</Container>
|
||||
</Tab>
|
||||
<currentTabIndex index="3"/>
|
||||
</tabbed_widget>
|
||||
<use_relative_time_offset enabled="1"/>
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
<Plugins>
|
||||
<plugin ID="DataLoad CSV">
|
||||
<default time_axis="" delimiter="0"/>
|
||||
</plugin>
|
||||
<plugin ID="DataLoad MCAP"/>
|
||||
<plugin ID="DataLoad Rlog"/>
|
||||
<plugin ID="DataLoad ULog"/>
|
||||
<plugin ID="Cereal Subscriber"/>
|
||||
<plugin ID="UDP Server"/>
|
||||
<plugin ID="WebSocket Server"/>
|
||||
<plugin ID="ZMQ Subscriber"/>
|
||||
<plugin ID="Fast Fourier Transform"/>
|
||||
<plugin ID="Quaternion to RPY"/>
|
||||
<plugin ID="Reactive Script Editor">
|
||||
<library code="--[[ Helper function to create a series from arrays

 new_series: a series previously created with ScatterXY.new(name)
 prefix: prefix of the timeseries, before the index of the array
 suffix_X: suffix to complete the name of the series containing the X value. If [nil], use the index of the array.
 suffix_Y: suffix to complete the name of the series containing the Y value
 timestamp: usually the tracker_time variable
 
 Example:
 
 Assuming we have multiple series in the form:
 
 /trajectory/node.{X}/position/x
 /trajectory/node.{X}/position/y
 
 where {N} is the index of the array (integer). We can create a reactive series from the array with:
 
 new_series = ScatterXY.new("my_trajectory") 
 CreateSeriesFromArray( new_series, "/trajectory/node", "position/x", "position/y", tracker_time );
--]]

function CreateSeriesFromArray( new_series, prefix, suffix_X, suffix_Y, timestamp )
 
 --- clear previous values
 new_series:clear()
 
 --- Append points to new_series
 index = 0
 while(true) do

 x = index;
 -- if not nil, get the X coordinate from a series
 if suffix_X ~= nil then 
 series_x = TimeseriesView.find( string.format( "%s.%d/%s", prefix, index, suffix_X) )
 if series_x == nil then break end
 x = series_x:atTime(timestamp)	 
 end
 
 series_y = TimeseriesView.find( string.format( "%s.%d/%s", prefix, index, suffix_Y) )
 if series_y == nil then break end 
 y = series_y:atTime(timestamp)
 
 new_series:push_back(x,y)
 index = index+1
 end
end

--[[ Similar to the built-in function GetSeriesNames(), but select only the names with a give prefix. --]]

function GetSeriesNamesByPrefix(prefix)
 -- GetSeriesNames(9 is a built-in function
 all_names = GetSeriesNames()
 filtered_names = {}
 for i, name in ipairs(all_names) do
 -- check the prefix
 if name:find(prefix, 1, #prefix) then
 table.insert(filtered_names, name);
 end
 end
 return filtered_names
end

--[[ Modify an existing series, applying offsets to all their X and Y values

 series: an existing timeseries, obtained with TimeseriesView.find(name)
 delta_x: offset to apply to each x value
 delta_y: offset to apply to each y value 
 
--]]

function ApplyOffsetInPlace(series, delta_x, delta_y)
 -- use C++ indeces, not Lua indeces
 for index=0, series:size()-1 do
 x,y = series:at(index)
 series:set(index, x + delta_x, y + delta_y)
 end
end
"/>
|
||||
<scripts/>
|
||||
</plugin>
|
||||
<plugin ID="CSV Exporter"/>
|
||||
</Plugins>
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
<customMathEquations/>
|
||||
<snippets/>
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
</root>
|
||||
|
||||
@@ -1,636 +0,0 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<root>
|
||||
<tabbed_widget name="Main Window" parent="main_window">
|
||||
<Tab tab_name="actuator data" containers="1">
|
||||
<Container>
|
||||
<DockSplitter orientation="-" sizes="0.25;0.25;0.25;0.25" count="4">
|
||||
<DockArea name="...">
|
||||
<plot style="Lines" mode="TimeSeries" flip_x="false" flip_y="false">
|
||||
<range right="396.045059" bottom="-0.100000" left="6.467547" top="0.100000"/>
|
||||
<limitY/>
|
||||
<curve name="/carControl/actuators/torque" color="#17becf"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot style="Lines" mode="TimeSeries" flip_x="false" flip_y="false">
|
||||
<range right="396.045059" bottom="-356.587494" left="6.467547" top="491.287506"/>
|
||||
<limitY/>
|
||||
<curve name="/carControl/actuators/steeringAngleDeg" color="#1f77b4"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot style="Lines" mode="TimeSeries" flip_x="false" flip_y="false">
|
||||
<range right="396.045059" bottom="-0.856228" left="6.467547" top="35.834527"/>
|
||||
<limitY/>
|
||||
<curve name="/carState/vEgoRaw" color="#ff7f0e"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot style="Lines" mode="TimeSeries" flip_x="false" flip_y="false">
|
||||
<range right="396.045059" bottom="-0.186684" left="6.467547" top="0.134230"/>
|
||||
<limitY/>
|
||||
<curve name="/carControl/actuators/curvature" color="#f14cc1"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
</DockSplitter>
|
||||
</Container>
|
||||
</Tab>
|
||||
<Tab tab_name="steering messages (CAN)" containers="1">
|
||||
<Container>
|
||||
<DockSplitter orientation="-" sizes="0.25;0.25;0.25;0.25" count="4">
|
||||
<DockArea name="...">
|
||||
<plot style="Lines" mode="TimeSeries" flip_x="false" flip_y="false">
|
||||
<range right="396.045059" bottom="-0.022000" left="6.467547" top="0.902000"/>
|
||||
<limitY/>
|
||||
<curve name="/sendcan/0/LKAS_ALT/ADAS_ACIAnglTqRedcGainVal" color="#1f77b4"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot style="Lines" mode="TimeSeries" flip_x="false" flip_y="false">
|
||||
<range right="396.045059" bottom="-5.168301" left="6.467547" top="4.590794"/>
|
||||
<limitY/>
|
||||
<curve name="IMU_LatAccelVal_ms^2_roll_compensated" color="#ff7f0e"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot style="Lines" mode="TimeSeries" flip_x="false" flip_y="false">
|
||||
<range right="396.045059" bottom="-0.025000" left="6.467547" top="1.025000"/>
|
||||
<limitY/>
|
||||
<curve name="/carState/steeringPressed" color="#d62728"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot style="Lines" mode="TimeSeries" flip_x="false" flip_y="false">
|
||||
<range right="396.045059" bottom="-0.100000" left="6.467547" top="0.100000"/>
|
||||
<limitY/>
|
||||
<curve name="/can/1/CCNC_0x161/DAW_ICON" color="#f14cc1"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
</DockSplitter>
|
||||
</Container>
|
||||
</Tab>
|
||||
<Tab tab_name="Understanding Torque" containers="1">
|
||||
<Container>
|
||||
<DockSplitter orientation="-" sizes="0.5;0.5" count="2">
|
||||
<DockArea name="...">
|
||||
<plot style="Lines" mode="TimeSeries" flip_x="false" flip_y="false">
|
||||
<range right="722.420439" bottom="-6.250000" left="0.000000" top="256.250000"/>
|
||||
<limitY/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot style="Lines" mode="TimeSeries" flip_x="false" flip_y="false">
|
||||
<range right="396.045059" bottom="-34.457500" left="6.467547" top="26.757499"/>
|
||||
<limitY/>
|
||||
<curve name="/carState/steeringTorqueEps" color="#1ac938"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
</DockSplitter>
|
||||
</Container>
|
||||
</Tab>
|
||||
<Tab tab_name="Angle Error and Saturation TQ" containers="1">
|
||||
<Container>
|
||||
<DockSplitter orientation="-" sizes="0.200218;0.200218;0.199129;0.200218;0.200218" count="5">
|
||||
<DockArea name="...">
|
||||
<plot style="Lines" mode="TimeSeries" flip_x="false" flip_y="false">
|
||||
<range right="396.045059" bottom="-356.587494" left="6.467547" top="491.287506"/>
|
||||
<limitY/>
|
||||
<curve name="/carControl/actuators/steeringAngleDeg" color="#d62728"/>
|
||||
<curve name="/carState/steeringAngleDeg" color="#1ac938"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot style="Lines" mode="TimeSeries" flip_x="false" flip_y="false">
|
||||
<range right="396.045059" bottom="-134.196237" left="6.467547" top="34.112077"/>
|
||||
<limitY/>
|
||||
<curve name="Angle Error" color="#ff7f0e"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot style="Lines" mode="TimeSeries" flip_x="false" flip_y="false">
|
||||
<range right="396.045059" bottom="-0.022000" left="6.467547" top="0.902000"/>
|
||||
<limitY/>
|
||||
<curve name="/sendcan/0/LKAS_ALT/ADAS_ACIAnglTqRedcGainVal" color="#1f77b4"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot style="Lines" mode="TimeSeries" flip_x="false" flip_y="false">
|
||||
<range right="396.045059" bottom="-0.025000" left="6.467547" top="1.025000"/>
|
||||
<limitY/>
|
||||
<curve name="Angle Staturation" color="#f14cc1"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot style="Lines" mode="TimeSeries" flip_x="false" flip_y="false">
|
||||
<range right="396.045059" bottom="-0.025000" left="6.467547" top="1.025000"/>
|
||||
<limitY/>
|
||||
<curve name="/carControl/latActive" color="#9467bd"/>
|
||||
<curve name="/carState/steeringPressed" color="#17becf"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
</DockSplitter>
|
||||
</Container>
|
||||
</Tab>
|
||||
<currentTabIndex index="3"/>
|
||||
</tabbed_widget>
|
||||
<use_relative_time_offset enabled="1"/>
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
<Plugins>
|
||||
<plugin ID="DataLoad CSV">
|
||||
<default time_axis="" delimiter="0"/>
|
||||
</plugin>
|
||||
<plugin ID="DataLoad MCAP"/>
|
||||
<plugin ID="DataLoad Rlog"/>
|
||||
<plugin ID="DataLoad ULog"/>
|
||||
<plugin ID="Cereal Subscriber"/>
|
||||
<plugin ID="UDP Server"/>
|
||||
<plugin ID="WebSocket Server"/>
|
||||
<plugin ID="ZMQ Subscriber"/>
|
||||
<plugin ID="Fast Fourier Transform"/>
|
||||
<plugin ID="Quaternion to RPY"/>
|
||||
<plugin ID="Reactive Script Editor">
|
||||
<library code="--[[ Helper function to create a series from arrays

 new_series: a series previously created with ScatterXY.new(name)
 prefix: prefix of the timeseries, before the index of the array
 suffix_X: suffix to complete the name of the series containing the X value. If [nil], use the index of the array.
 suffix_Y: suffix to complete the name of the series containing the Y value
 timestamp: usually the tracker_time variable
 
 Example:
 
 Assuming we have multiple series in the form:
 
 /trajectory/node.{X}/position/x
 /trajectory/node.{X}/position/y
 
 where {N} is the index of the array (integer). We can create a reactive series from the array with:
 
 new_series = ScatterXY.new("my_trajectory") 
 CreateSeriesFromArray( new_series, "/trajectory/node", "position/x", "position/y", tracker_time );
--]]

function CreateSeriesFromArray( new_series, prefix, suffix_X, suffix_Y, timestamp )
 
 --- clear previous values
 new_series:clear()
 
 --- Append points to new_series
 index = 0
 while(true) do

 x = index;
 -- if not nil, get the X coordinate from a series
 if suffix_X ~= nil then 
 series_x = TimeseriesView.find( string.format( "%s.%d/%s", prefix, index, suffix_X) )
 if series_x == nil then break end
 x = series_x:atTime(timestamp)	 
 end
 
 series_y = TimeseriesView.find( string.format( "%s.%d/%s", prefix, index, suffix_Y) )
 if series_y == nil then break end 
 y = series_y:atTime(timestamp)
 
 new_series:push_back(x,y)
 index = index+1
 end
end

--[[ Similar to the built-in function GetSeriesNames(), but select only the names with a give prefix. --]]

function GetSeriesNamesByPrefix(prefix)
 -- GetSeriesNames(9 is a built-in function
 all_names = GetSeriesNames()
 filtered_names = {}
 for i, name in ipairs(all_names) do
 -- check the prefix
 if name:find(prefix, 1, #prefix) then
 table.insert(filtered_names, name);
 end
 end
 return filtered_names
end

--[[ Modify an existing series, applying offsets to all their X and Y values

 series: an existing timeseries, obtained with TimeseriesView.find(name)
 delta_x: offset to apply to each x value
 delta_y: offset to apply to each y value 
 
--]]

function ApplyOffsetInPlace(series, delta_x, delta_y)
 -- use C++ indeces, not Lua indeces
 for index=0, series:size()-1 do
 x,y = series:at(index)
 series:set(index, x + delta_x, y + delta_y)
 end
end
"/>
|
||||
<scripts/>
|
||||
</plugin>
|
||||
<plugin ID="CSV Exporter"/>
|
||||
</Plugins>
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
<previouslyLoaded_Datafiles>
|
||||
<fileInfo filename="../tmpgh9xhmjb.rlog" prefix="">
|
||||
<selected_datasources value=""/>
|
||||
</fileInfo>
|
||||
</previouslyLoaded_Datafiles>
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
<customMathEquations>
|
||||
<snippet name="Angle Staturation">
|
||||
<global></global>
|
||||
<function>if value > .3 then
|
||||
return 1
|
||||
end
|
||||
|
||||
return 0</function>
|
||||
<linked_source>Angle Error</linked_source>
|
||||
</snippet>
|
||||
<snippet name="ang_cmd rate">
|
||||
<global>firstX = 0
|
||||
firstY = 0
|
||||
is_first = true
|
||||
secondX = 0
|
||||
secondY = 0
|
||||
is_second = false</global>
|
||||
<function>-- Wait for initial values
|
||||
if (is_first) then
|
||||
is_first = false
|
||||
is_second = true
|
||||
firstX = time
|
||||
firstY = value
|
||||
end
|
||||
|
||||
if (is_second) then
|
||||
is_second = false
|
||||
secondX = time
|
||||
secondY = value
|
||||
end
|
||||
|
||||
-- Central derivative: dy/dx ~= f(x+delta_x)-f(x-delta_x)/(2*delta_x)
|
||||
dx = time - firstX
|
||||
dy = value - firstY
|
||||
-- Increment
|
||||
firstX = secondX
|
||||
firstY = secondY
|
||||
secondX = time
|
||||
secondY = value
|
||||
|
||||
return dy/dx</function>
|
||||
<linked_source>/can/1/LFA_ALT/LKAS_ANGLE_CMD</linked_source>
|
||||
</snippet>
|
||||
<snippet name="max torque lj adj">
|
||||
<global>min=0
|
||||
max=250
|
||||
max_from_speed=96
|
||||
|
||||
k1=200
|
||||
k2=30
|
||||
k3=1
|
||||
k4=1
|
||||
k5=10
|
||||
|
||||
function sign(number)
|
||||
return number > 0 and 1 or (number == 0 and 0 or -1)
|
||||
end</global>
|
||||
<function>return 250 - value * 20</function>
|
||||
<linked_source>desired lateral jark</linked_source>
|
||||
</snippet>
|
||||
<snippet name="max torque(calc)">
|
||||
<global>min=0
|
||||
max=250
|
||||
max_from_speed=96
|
||||
|
||||
rate_lim = 500
|
||||
|
||||
la_deadzone = 0.38
|
||||
|
||||
k1=200
|
||||
k2=20
|
||||
k3=1.0
|
||||
k4=1
|
||||
k5=10
|
||||
|
||||
old = 0
|
||||
|
||||
function sign(number)
|
||||
return number > 0 and 1 or (number == 0 and 0 or -1)
|
||||
end
|
||||
|
||||
function apply_rate_limit(old, new, limit)
|
||||
return math.min(math.max(new, old - limit), old + limit)
|
||||
end
|
||||
|
||||
function apply_deadzone(val, deadzone)
|
||||
if math.abs(val) <= deadzone then
|
||||
return 0.0
|
||||
elseif val < 0.0 then
|
||||
return val + deadzone
|
||||
else
|
||||
return val - deadzone
|
||||
end
|
||||
end</global>
|
||||
<function>la = apply_deadzone(v2, la_deadzone)
|
||||
lj = v3
|
||||
|
||||
if la == 0.0 then
|
||||
lj = 0.0
|
||||
end
|
||||
|
||||
fla = math.min(math.abs(k1 * la)^k3, max)
|
||||
flj = math.min(math.abs(k2 * lj)^k4, max)
|
||||
|
||||
out = fla
|
||||
|
||||
flv = math.min(max_from_speed, k5 * v4)
|
||||
|
||||
out = out + flv
|
||||
|
||||
out = math.max(math.min(out, max), min)
|
||||
|
||||
if sign(la) == sign(lj) then
|
||||
out = out - flj
|
||||
else
|
||||
out = out + flj
|
||||
end
|
||||
|
||||
|
||||
if v5 == 1.0 then
|
||||
out = 0.0
|
||||
end
|
||||
|
||||
out = math.max(math.min(out, max), min)
|
||||
out = apply_rate_limit(old, out, rate_lim)
|
||||
old = out
|
||||
|
||||
return out</function>
|
||||
<linked_source>/can/1/LFA_ALT/LKAS_ANGLE_CMD</linked_source>
|
||||
<additional_sources>
|
||||
<v1>ang_cmd rate</v1>
|
||||
<v2>desired lat accel</v2>
|
||||
<v3>desired lateral jark</v3>
|
||||
<v4>/carState/vEgo</v4>
|
||||
<v5>/can/1/LFA_ALT/LKAS_ANGLE_ACTIVE</v5>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="carState.vEgo mph">
|
||||
<global></global>
|
||||
<function>return value * 2.23694</function>
|
||||
<linked_source>/carState/vEgo</linked_source>
|
||||
</snippet>
|
||||
<snippet name="abs(des la accel)">
|
||||
<global></global>
|
||||
<function>return math.abs(value)</function>
|
||||
<linked_source>desired lat accel</linked_source>
|
||||
</snippet>
|
||||
<snippet name="roll compensated lateral acceleration">
|
||||
<global></global>
|
||||
<function>if (v3 == 0 and v4 == 1) then
|
||||
return (value * v1 ^ 2) - (v2 * 9.81)
|
||||
end
|
||||
return 0</function>
|
||||
<linked_source>/controlsState/curvature</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/vEgo</v1>
|
||||
<v2>/liveParameters/roll</v2>
|
||||
<v3>/carState/steeringPressed</v3>
|
||||
<v4>/carControl/latActive</v4>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="Zero">
|
||||
<global></global>
|
||||
<function>return (0)</function>
|
||||
<linked_source>/carState/canValid</linked_source>
|
||||
</snippet>
|
||||
<snippet name="IMU_LatAccelVal_ms^2">
|
||||
<global></global>
|
||||
<function>return value * -9.8</function>
|
||||
<linked_source>/can/1/IMU_01_10ms/IMU_LatAccelVal</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/steeringPressed</v1>
|
||||
<v2>/carControl/latActive</v2>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="desired lat accel">
|
||||
<global></global>
|
||||
<function>return value * v1^2</function>
|
||||
<linked_source>/controlsState/desiredCurvature</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/vEgo</v1>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="engaged_accel_actuator">
|
||||
<global>engage_delay = 5
|
||||
last_bad_time = -engage_delay</global>
|
||||
<function>accel = value
|
||||
brake = v1
|
||||
gas = v2
|
||||
enabled = v3
|
||||
|
||||
if (brake ~= 0 or gas ~= 0 or enabled == 0) then
|
||||
last_bad_time = time
|
||||
end
|
||||
|
||||
if (time > last_bad_time + engage_delay) then
|
||||
return value
|
||||
else
|
||||
return 0
|
||||
end</function>
|
||||
<linked_source>/carControl/actuators/accel</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/brakePressed</v1>
|
||||
<v2>/carState/gasPressed</v2>
|
||||
<v3>/carControl/enabled</v3>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="Angle Error">
|
||||
<global>last_angle_requested = 0</global>
|
||||
<function>angle_error = last_angle_requested - v1
|
||||
|
||||
|
||||
last_angle_requested = value
|
||||
return angle_error</function>
|
||||
<linked_source>/carControl/actuators/steeringAngleDeg</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/steeringAngleDeg</v1>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="carState.vEgo kmh">
|
||||
<global></global>
|
||||
<function>return value * 3.6</function>
|
||||
<linked_source>/carState/vEgo</linked_source>
|
||||
</snippet>
|
||||
<snippet name="engaged_accel_plan">
|
||||
<global>engage_delay = 5
|
||||
last_bad_time = -engage_delay</global>
|
||||
<function>accel = value
|
||||
brake = v1
|
||||
gas = v2
|
||||
enabled = v3
|
||||
|
||||
if (brake ~= 0 or gas ~= 0 or enabled == 0) then
|
||||
last_bad_time = time
|
||||
end
|
||||
|
||||
if (time > last_bad_time + engage_delay) then
|
||||
return value
|
||||
else
|
||||
return 0
|
||||
end</function>
|
||||
<linked_source>/longitudinalPlan/accels/0</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/brakePressed</v1>
|
||||
<v2>/carState/gasPressed</v2>
|
||||
<v3>/carControl/enabled</v3>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="engaged_accel_actual">
|
||||
<global>engage_delay = 5
|
||||
last_bad_time = -engage_delay</global>
|
||||
<function>accel = value
|
||||
brake = v1
|
||||
gas = v2
|
||||
enabled = v3
|
||||
|
||||
if (brake ~= 0 or gas ~= 0 or enabled == 0) then
|
||||
last_bad_time = time
|
||||
end
|
||||
|
||||
if (time > last_bad_time + engage_delay) then
|
||||
return value
|
||||
else
|
||||
return 0
|
||||
end</function>
|
||||
<linked_source>/carState/aEgo</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/brakePressed</v1>
|
||||
<v2>/carState/gasPressed</v2>
|
||||
<v3>/carControl/enabled</v3>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="desired lateral jark">
|
||||
<global>firstX = 0
|
||||
firstY = 0
|
||||
is_first = true
|
||||
secondX = 0
|
||||
secondY = 0
|
||||
is_second = false</global>
|
||||
<function>-- Wait for initial values
|
||||
if (is_first) then
|
||||
is_first = false
|
||||
is_second = true
|
||||
firstX = time
|
||||
firstY = value
|
||||
end
|
||||
|
||||
if (is_second) then
|
||||
is_second = false
|
||||
secondX = time
|
||||
secondY = value
|
||||
end
|
||||
|
||||
-- Central derivative: dy/dx ~= f(x+delta_x)-f(x-delta_x)/(2*delta_x)
|
||||
dx = time - firstX
|
||||
dy = value - firstY
|
||||
-- Increment
|
||||
firstX = secondX
|
||||
firstY = secondY
|
||||
secondX = time
|
||||
secondY = value
|
||||
|
||||
return dy/dx</function>
|
||||
<linked_source>desired lat accel</linked_source>
|
||||
</snippet>
|
||||
<snippet name="engaged curvature plan">
|
||||
<global>engage_delay = 5
|
||||
last_bad_time = -engage_delay</global>
|
||||
<function>curvature = value
|
||||
pressed = v1
|
||||
enabled = v2
|
||||
|
||||
if (pressed == 1 or enabled == 0) then
|
||||
last_bad_time = time
|
||||
end
|
||||
|
||||
if (time > last_bad_time + engage_delay) then
|
||||
return value
|
||||
else
|
||||
return 0
|
||||
end</function>
|
||||
<linked_source>/lateralPlan/curvatures/0</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/steeringPressed</v1>
|
||||
<v2>/carControl/enabled</v2>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="abs(ang_cmd)">
|
||||
<global></global>
|
||||
<function>return math.abs(value)</function>
|
||||
<linked_source>/can/1/LFA_ALT/LKAS_ANGLE_CMD</linked_source>
|
||||
</snippet>
|
||||
<snippet name="zero">
|
||||
<global>min=0
|
||||
max=250
|
||||
max_from_speed=96
|
||||
|
||||
rate_lim = 500
|
||||
|
||||
la_deadzone = 0.38
|
||||
|
||||
k1=200
|
||||
k2=20
|
||||
k3=1.0
|
||||
k4=1
|
||||
k5=10
|
||||
|
||||
old = 0
|
||||
|
||||
function sign(number)
|
||||
return number > 0 and 1 or (number == 0 and 0 or -1)
|
||||
end
|
||||
|
||||
function apply_rate_limit(old, new, limit)
|
||||
return math.min(math.max(new, old - limit), old + limit)
|
||||
end
|
||||
|
||||
function apply_deadzone(val, deadzone)
|
||||
if math.abs(val) <= deadzone then
|
||||
return 0.0
|
||||
elseif val < 0.0 then
|
||||
return val + deadzone
|
||||
else
|
||||
return val - deadzone
|
||||
end
|
||||
end</global>
|
||||
<function>return 0</function>
|
||||
<linked_source>/carState/aEgo</linked_source>
|
||||
</snippet>
|
||||
<snippet name="engaged curvature vehicle model">
|
||||
<global>engage_delay = 5
|
||||
last_bad_time = -engage_delay</global>
|
||||
<function>curvature = value
|
||||
pressed = v1
|
||||
enabled = v2
|
||||
|
||||
if (pressed == 1 or enabled == 0) then
|
||||
last_bad_time = time
|
||||
end
|
||||
|
||||
if (time > last_bad_time + engage_delay) then
|
||||
return value
|
||||
else
|
||||
return 0
|
||||
end</function>
|
||||
<linked_source>/controlsState/curvature</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/steeringPressed</v1>
|
||||
<v2>/carControl/enabled</v2>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="Actual lateral accel (roll compensated)">
|
||||
<global></global>
|
||||
<function>return (value * v1 ^ 2) - (v2 * 9.81)</function>
|
||||
<linked_source>/controlsState/curvature</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/vEgo</v1>
|
||||
<v2>/liveParameters/roll</v2>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="IMU_LatAccelVal_ms^2_roll_compensated">
|
||||
<global></global>
|
||||
<function>if (v1 == 0 and v2 == 1) then
|
||||
return (value * -9.8) - (v3 * 9.81)
|
||||
end
|
||||
--return 0
|
||||
return (value * -9.8) - (v3 * 9.81)</function>
|
||||
<linked_source>/can/1/IMU_01_10ms/IMU_LatAccelVal</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/steeringPressed</v1>
|
||||
<v2>/carControl/latActive</v2>
|
||||
<v3>/liveParameters/roll</v3>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="IMU_LatAccelVal_Ms^2">
|
||||
<global></global>
|
||||
<function>if (v1 == 0 and v2 == 1) then
|
||||
return value * -9.8
|
||||
end
|
||||
return 0</function>
|
||||
<linked_source>/can/1/IMU_01_10ms/IMU_LatAccelVal</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/steeringPressed</v1>
|
||||
<v2>/carControl/latActive</v2>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="engaged curvature yaw">
|
||||
<global>engage_delay = 5
|
||||
last_bad_time = -engage_delay</global>
|
||||
<function>curvature = value / v3
|
||||
pressed = v1
|
||||
enabled = v2
|
||||
|
||||
if (pressed == 1 or enabled == 0) then
|
||||
last_bad_time = time
|
||||
end
|
||||
|
||||
if (time > last_bad_time + engage_delay) then
|
||||
return curvature
|
||||
else
|
||||
return 0
|
||||
end</function>
|
||||
<linked_source>/liveLocationKalman/angularVelocityCalibrated/value/2</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/steeringPressed</v1>
|
||||
<v2>/carControl/enabled</v2>
|
||||
<v3>/liveLocationKalman/velocityCalibrated/value/0</v3>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="IMU_LatAccelVal_Ms^3">
|
||||
<global></global>
|
||||
<function>return value * -9.8</function>
|
||||
<linked_source>/can/1/IMU_01_10ms/IMU_LatAccelVal</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/steeringPressed</v1>
|
||||
<v2>/carControl/latActive</v2>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="Desired lateral accel (roll compensated)">
|
||||
<global></global>
|
||||
<function>return (value * v1 ^ 2) - (v2 * 9.81)</function>
|
||||
<linked_source>/controlsState/desiredCurvature</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/vEgo</v1>
|
||||
<v2>/liveParameters/roll</v2>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
</customMathEquations>
|
||||
<snippets/>
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
</root>
|
||||
|
||||
@@ -1,281 +0,0 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<root>
|
||||
<tabbed_widget name="Main Window" parent="main_window">
|
||||
<Tab containers="1" tab_name="tab1">
|
||||
<Container>
|
||||
<DockSplitter sizes="0.500397;0.499603" count="2" orientation="-">
|
||||
<DockArea name="...">
|
||||
<plot flip_x="false" flip_y="false" mode="TimeSeries" style="Lines">
|
||||
<range top="256.250000" left="0.000000" right="421.102293" bottom="-6.250000"/>
|
||||
<limitY/>
|
||||
<curve color="#1ac938" name="/can/1/LFA_ALT/LKAS_ANGLE_MAX_TORQUE"/>
|
||||
<curve color="#17becf" name="max torque(calc)">
|
||||
<transform name="Moving Average" alias="max torque(calc)[Moving Average]">
|
||||
<options compensate_offset="true" value="10"/>
|
||||
</transform>
|
||||
</curve>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot flip_x="false" flip_y="false" mode="TimeSeries" style="Lines">
|
||||
<range top="2.776497" left="0.000000" right="421.102293" bottom="-2.918548"/>
|
||||
<limitY/>
|
||||
<curve color="#f14cc1" name="desired lat accel"/>
|
||||
<curve color="#888888" name="zero"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
</DockSplitter>
|
||||
</Container>
|
||||
</Tab>
|
||||
<currentTabIndex index="0"/>
|
||||
</tabbed_widget>
|
||||
<use_relative_time_offset enabled="1"/>
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
<Plugins>
|
||||
<plugin ID="DataLoad CSV">
|
||||
<default time_axis="" delimiter="0"/>
|
||||
</plugin>
|
||||
<plugin ID="DataLoad MCAP"/>
|
||||
<plugin ID="DataLoad Rlog"/>
|
||||
<plugin ID="DataLoad ULog"/>
|
||||
<plugin ID="Cereal Subscriber"/>
|
||||
<plugin ID="UDP Server"/>
|
||||
<plugin ID="WebSocket Server"/>
|
||||
<plugin ID="ZMQ Subscriber"/>
|
||||
<plugin ID="Fast Fourier Transform"/>
|
||||
<plugin ID="Quaternion to RPY"/>
|
||||
<plugin ID="Reactive Script Editor">
|
||||
<library code="--[[ Helper function to create a series from arrays

 new_series: a series previously created with ScatterXY.new(name)
 prefix: prefix of the timeseries, before the index of the array
 suffix_X: suffix to complete the name of the series containing the X value. If [nil], use the index of the array.
 suffix_Y: suffix to complete the name of the series containing the Y value
 timestamp: usually the tracker_time variable
 
 Example:
 
 Assuming we have multiple series in the form:
 
 /trajectory/node.{X}/position/x
 /trajectory/node.{X}/position/y
 
 where {N} is the index of the array (integer). We can create a reactive series from the array with:
 
 new_series = ScatterXY.new("my_trajectory") 
 CreateSeriesFromArray( new_series, "/trajectory/node", "position/x", "position/y", tracker_time );
--]]

function CreateSeriesFromArray( new_series, prefix, suffix_X, suffix_Y, timestamp )
 
 --- clear previous values
 new_series:clear()
 
 --- Append points to new_series
 index = 0
 while(true) do

 x = index;
 -- if not nil, get the X coordinate from a series
 if suffix_X ~= nil then 
 series_x = TimeseriesView.find( string.format( "%s.%d/%s", prefix, index, suffix_X) )
 if series_x == nil then break end
 x = series_x:atTime(timestamp)	 
 end
 
 series_y = TimeseriesView.find( string.format( "%s.%d/%s", prefix, index, suffix_Y) )
 if series_y == nil then break end 
 y = series_y:atTime(timestamp)
 
 new_series:push_back(x,y)
 index = index+1
 end
end

--[[ Similar to the built-in function GetSeriesNames(), but select only the names with a give prefix. --]]

function GetSeriesNamesByPrefix(prefix)
 -- GetSeriesNames(9 is a built-in function
 all_names = GetSeriesNames()
 filtered_names = {}
 for i, name in ipairs(all_names) do
 -- check the prefix
 if name:find(prefix, 1, #prefix) then
 table.insert(filtered_names, name);
 end
 end
 return filtered_names
end

--[[ Modify an existing series, applying offsets to all their X and Y values

 series: an existing timeseries, obtained with TimeseriesView.find(name)
 delta_x: offset to apply to each x value
 delta_y: offset to apply to each y value 
 
--]]

function ApplyOffsetInPlace(series, delta_x, delta_y)
 -- use C++ indeces, not Lua indeces
 for index=0, series:size()-1 do
 x,y = series:at(index)
 series:set(index, x + delta_x, y + delta_y)
 end
end
"/>
|
||||
<scripts/>
|
||||
</plugin>
|
||||
<plugin ID="CSV Exporter"/>
|
||||
</Plugins>
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
<previouslyLoaded_Datafiles>
|
||||
<fileInfo prefix="" filename="../tmpa_e8kwpj.rlog">
|
||||
<selected_datasources value=""/>
|
||||
</fileInfo>
|
||||
</previouslyLoaded_Datafiles>
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
<customMathEquations>
|
||||
<snippet name="zero">
|
||||
<global>min=0
|
||||
max=250
|
||||
max_from_speed=96
|
||||
|
||||
rate_lim = 500
|
||||
|
||||
la_deadzone = 0.38
|
||||
|
||||
k1=200
|
||||
k2=20
|
||||
k3=1.0
|
||||
k4=1
|
||||
k5=10
|
||||
|
||||
old = 0
|
||||
|
||||
function sign(number)
|
||||
return number > 0 and 1 or (number == 0 and 0 or -1)
|
||||
end
|
||||
|
||||
function apply_rate_limit(old, new, limit)
|
||||
return math.min(math.max(new, old - limit), old + limit)
|
||||
end
|
||||
|
||||
function apply_deadzone(val, deadzone)
|
||||
if math.abs(val) <= deadzone then
|
||||
return 0.0
|
||||
elseif val < 0.0 then
|
||||
return val + deadzone
|
||||
else
|
||||
return val - deadzone
|
||||
end
|
||||
end</global>
|
||||
<function>return 0</function>
|
||||
<linked_source>/carState/aEgo</linked_source>
|
||||
</snippet>
|
||||
<snippet name="max torque lj adj">
|
||||
<global>min=0
|
||||
max=250
|
||||
max_from_speed=96
|
||||
|
||||
k1=200
|
||||
k2=30
|
||||
k3=1
|
||||
k4=1
|
||||
k5=10
|
||||
|
||||
function sign(number)
|
||||
return number > 0 and 1 or (number == 0 and 0 or -1)
|
||||
end</global>
|
||||
<function>return 250 - value * 20</function>
|
||||
<linked_source>desired lateral jark</linked_source>
|
||||
</snippet>
|
||||
<snippet name="ang_cmd rate">
|
||||
<global>firstX = 0
|
||||
firstY = 0
|
||||
is_first = true
|
||||
secondX = 0
|
||||
secondY = 0
|
||||
is_second = false</global>
|
||||
<function>-- Wait for initial values
|
||||
if (is_first) then
|
||||
is_first = false
|
||||
is_second = true
|
||||
firstX = time
|
||||
firstY = value
|
||||
end
|
||||
|
||||
if (is_second) then
|
||||
is_second = false
|
||||
secondX = time
|
||||
secondY = value
|
||||
end
|
||||
|
||||
-- Central derivative: dy/dx ~= f(x+delta_x)-f(x-delta_x)/(2*delta_x)
|
||||
dx = time - firstX
|
||||
dy = value - firstY
|
||||
-- Increment
|
||||
firstX = secondX
|
||||
firstY = secondY
|
||||
secondX = time
|
||||
secondY = value
|
||||
|
||||
return dy/dx</function>
|
||||
<linked_source>/can/1/LFA_ALT/LKAS_ANGLE_CMD</linked_source>
|
||||
</snippet>
|
||||
<snippet name="max torque(calc)">
|
||||
<global>min=0
|
||||
max=250
|
||||
max_from_speed=96
|
||||
|
||||
rate_lim = 500
|
||||
|
||||
la_deadzone = 0.38
|
||||
|
||||
k1=200
|
||||
k2=20
|
||||
k3=1.0
|
||||
k4=1
|
||||
k5=10
|
||||
|
||||
old = 0
|
||||
|
||||
function sign(number)
|
||||
return number > 0 and 1 or (number == 0 and 0 or -1)
|
||||
end
|
||||
|
||||
function apply_rate_limit(old, new, limit)
|
||||
return math.min(math.max(new, old - limit), old + limit)
|
||||
end
|
||||
|
||||
function apply_deadzone(val, deadzone)
|
||||
if math.abs(val) <= deadzone then
|
||||
return 0.0
|
||||
elseif val < 0.0 then
|
||||
return val + deadzone
|
||||
else
|
||||
return val - deadzone
|
||||
end
|
||||
end</global>
|
||||
<function>la = apply_deadzone(v2, la_deadzone)
|
||||
lj = v3
|
||||
|
||||
if la == 0.0 then
|
||||
lj = 0.0
|
||||
end
|
||||
|
||||
fla = math.min(math.abs(k1 * la)^k3, max)
|
||||
flj = math.min(math.abs(k2 * lj)^k4, max)
|
||||
|
||||
out = fla
|
||||
|
||||
flv = math.min(max_from_speed, k5 * v4)
|
||||
|
||||
out = out + flv
|
||||
|
||||
out = math.max(math.min(out, max), min)
|
||||
|
||||
if sign(la) == sign(lj) then
|
||||
out = out - flj
|
||||
else
|
||||
out = out + flj
|
||||
end
|
||||
|
||||
|
||||
if v5 == 1.0 then
|
||||
out = 0.0
|
||||
end
|
||||
|
||||
out = math.max(math.min(out, max), min)
|
||||
out = apply_rate_limit(old, out, rate_lim)
|
||||
old = out
|
||||
|
||||
return out</function>
|
||||
<linked_source>/can/1/LFA_ALT/LKAS_ANGLE_CMD</linked_source>
|
||||
<additional_sources>
|
||||
<v1>ang_cmd rate</v1>
|
||||
<v2>desired lat accel</v2>
|
||||
<v3>desired lateral jark</v3>
|
||||
<v4>/carState/vEgo</v4>
|
||||
<v5>/can/1/LFA_ALT/LKAS_ANGLE_ACTIVE</v5>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="desired lateral jark">
|
||||
<global>firstX = 0
|
||||
firstY = 0
|
||||
is_first = true
|
||||
secondX = 0
|
||||
secondY = 0
|
||||
is_second = false</global>
|
||||
<function>-- Wait for initial values
|
||||
if (is_first) then
|
||||
is_first = false
|
||||
is_second = true
|
||||
firstX = time
|
||||
firstY = value
|
||||
end
|
||||
|
||||
if (is_second) then
|
||||
is_second = false
|
||||
secondX = time
|
||||
secondY = value
|
||||
end
|
||||
|
||||
-- Central derivative: dy/dx ~= f(x+delta_x)-f(x-delta_x)/(2*delta_x)
|
||||
dx = time - firstX
|
||||
dy = value - firstY
|
||||
-- Increment
|
||||
firstX = secondX
|
||||
firstY = secondY
|
||||
secondX = time
|
||||
secondY = value
|
||||
|
||||
return dy/dx</function>
|
||||
<linked_source>desired lat accel</linked_source>
|
||||
</snippet>
|
||||
<snippet name="abs(des la accel)">
|
||||
<global></global>
|
||||
<function>return math.abs(value)</function>
|
||||
<linked_source>desired lat accel</linked_source>
|
||||
</snippet>
|
||||
<snippet name="desired lat accel">
|
||||
<global></global>
|
||||
<function>return value * v1^2</function>
|
||||
<linked_source>/controlsState/desiredCurvature</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/vEgo</v1>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="abs(ang_cmd)">
|
||||
<global></global>
|
||||
<function>return math.abs(value)</function>
|
||||
<linked_source>/can/1/LFA_ALT/LKAS_ANGLE_CMD</linked_source>
|
||||
</snippet>
|
||||
</customMathEquations>
|
||||
<snippets/>
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
</root>
|
||||
|
||||
@@ -1,175 +0,0 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<root>
|
||||
<tabbed_widget parent="main_window" name="Main Window">
|
||||
<Tab tab_name="tab1" containers="1">
|
||||
<Container>
|
||||
<DockSplitter sizes="0.25;0.25;0.25;0.25" count="4" orientation="-">
|
||||
<DockArea name="...">
|
||||
<plot flip_x="false" style="Lines" flip_y="false" mode="TimeSeries">
|
||||
<range bottom="-3.582051" right="1431.113121" top="5.314632" left="5.322399"/>
|
||||
<limitY/>
|
||||
<curve name="Actual lateral accel (roll compensated)" color="#1ac938"/>
|
||||
<curve name="Desired lateral accel (roll compensated)" color="#ff7f0e"/>
|
||||
<curve name="IMU_LatAccelVal_ms^2" color="#f14cc1"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot flip_x="false" style="Lines" flip_y="false" mode="TimeSeries">
|
||||
<range bottom="-3.741271" right="1431.113121" top="3.756006" left="5.322399"/>
|
||||
<limitY/>
|
||||
<curve name="roll compensated lateral acceleration" color="#ff7f0e"/>
|
||||
<curve name="IMU_LatAccelVal_Ms^2" color="#1ac938"/>
|
||||
<curve name="IMU_LatAccelVal_ms^2_roll_compensated" color="#9467bd"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot flip_x="false" style="Lines" flip_y="false" mode="TimeSeries">
|
||||
<range bottom="-0.025000" right="1431.113121" top="1.025000" left="5.322399"/>
|
||||
<limitY/>
|
||||
<curve name="/carState/steeringPressed" color="#0097ff"/>
|
||||
<curve name="/carOutput/actuatorsOutput/torque" color="#d62728"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot flip_x="false" style="Lines" flip_y="false" mode="TimeSeries">
|
||||
<range bottom="-1.660728" right="1431.113121" top="67.942958" left="5.322399"/>
|
||||
<limitY/>
|
||||
<curve name="/carState/vEgo" color="#f14cc1">
|
||||
<transform name="Scale/Offset" alias="/carState/vEgo[Scale/Offset]">
|
||||
<options value_scale="2.23694" time_offset="0" value_offset="0"/>
|
||||
</transform>
|
||||
</curve>
|
||||
</plot>
|
||||
</DockArea>
|
||||
</DockSplitter>
|
||||
</Container>
|
||||
</Tab>
|
||||
<Tab tab_name="tab2" containers="1">
|
||||
<Container>
|
||||
<DockSplitter sizes="0.5;0.5" count="2" orientation="-">
|
||||
<DockArea name="...">
|
||||
<plot flip_x="false" style="Lines" flip_y="false" mode="TimeSeries">
|
||||
<range bottom="30595.900000" right="1431.113121" top="34884.100000" left="5.322399"/>
|
||||
<limitY/>
|
||||
<curve name="/can/1/IMU_01_10ms/IMU_RollRtVal" color="#17becf"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
<DockArea name="...">
|
||||
<plot flip_x="false" style="Lines" flip_y="false" mode="TimeSeries">
|
||||
<range bottom="-0.058795" right="1431.113121" top="0.072448" left="5.322399"/>
|
||||
<limitY/>
|
||||
<curve name="/liveParameters/roll" color="#bcbd22"/>
|
||||
</plot>
|
||||
</DockArea>
|
||||
</DockSplitter>
|
||||
</Container>
|
||||
</Tab>
|
||||
<currentTabIndex index="1"/>
|
||||
</tabbed_widget>
|
||||
<use_relative_time_offset enabled="1"/>
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
<Plugins>
|
||||
<plugin ID="DataLoad CSV">
|
||||
<default time_axis="" delimiter="0"/>
|
||||
</plugin>
|
||||
<plugin ID="DataLoad MCAP"/>
|
||||
<plugin ID="DataLoad Rlog"/>
|
||||
<plugin ID="DataLoad ULog"/>
|
||||
<plugin ID="Cereal Subscriber"/>
|
||||
<plugin ID="UDP Server"/>
|
||||
<plugin ID="WebSocket Server"/>
|
||||
<plugin ID="ZMQ Subscriber"/>
|
||||
<plugin ID="Fast Fourier Transform"/>
|
||||
<plugin ID="Quaternion to RPY"/>
|
||||
<plugin ID="Reactive Script Editor">
|
||||
<library code="--[[ Helper function to create a series from arrays

 new_series: a series previously created with ScatterXY.new(name)
 prefix: prefix of the timeseries, before the index of the array
 suffix_X: suffix to complete the name of the series containing the X value. If [nil], use the index of the array.
 suffix_Y: suffix to complete the name of the series containing the Y value
 timestamp: usually the tracker_time variable
 
 Example:
 
 Assuming we have multiple series in the form:
 
 /trajectory/node.{X}/position/x
 /trajectory/node.{X}/position/y
 
 where {N} is the index of the array (integer). We can create a reactive series from the array with:
 
 new_series = ScatterXY.new("my_trajectory") 
 CreateSeriesFromArray( new_series, "/trajectory/node", "position/x", "position/y", tracker_time );
--]]

function CreateSeriesFromArray( new_series, prefix, suffix_X, suffix_Y, timestamp )
 
 --- clear previous values
 new_series:clear()
 
 --- Append points to new_series
 index = 0
 while(true) do

 x = index;
 -- if not nil, get the X coordinate from a series
 if suffix_X ~= nil then 
 series_x = TimeseriesView.find( string.format( "%s.%d/%s", prefix, index, suffix_X) )
 if series_x == nil then break end
 x = series_x:atTime(timestamp)	 
 end
 
 series_y = TimeseriesView.find( string.format( "%s.%d/%s", prefix, index, suffix_Y) )
 if series_y == nil then break end 
 y = series_y:atTime(timestamp)
 
 new_series:push_back(x,y)
 index = index+1
 end
end

--[[ Similar to the built-in function GetSeriesNames(), but select only the names with a give prefix. --]]

function GetSeriesNamesByPrefix(prefix)
 -- GetSeriesNames(9 is a built-in function
 all_names = GetSeriesNames()
 filtered_names = {}
 for i, name in ipairs(all_names) do
 -- check the prefix
 if name:find(prefix, 1, #prefix) then
 table.insert(filtered_names, name);
 end
 end
 return filtered_names
end

--[[ Modify an existing series, applying offsets to all their X and Y values

 series: an existing timeseries, obtained with TimeseriesView.find(name)
 delta_x: offset to apply to each x value
 delta_y: offset to apply to each y value 
 
--]]

function ApplyOffsetInPlace(series, delta_x, delta_y)
 -- use C++ indeces, not Lua indeces
 for index=0, series:size()-1 do
 x,y = series:at(index)
 series:set(index, x + delta_x, y + delta_y)
 end
end
"/>
|
||||
<scripts/>
|
||||
</plugin>
|
||||
<plugin ID="CSV Exporter"/>
|
||||
</Plugins>
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
<customMathEquations>
|
||||
<snippet name="IMU_LatAccelVal_ms^2">
|
||||
<global></global>
|
||||
<function>return value * -9.8</function>
|
||||
<linked_source>/can/1/IMU_01_10ms/IMU_LatAccelVal</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/steeringPressed</v1>
|
||||
<v2>/carControl/latActive</v2>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="roll compensated lateral acceleration">
|
||||
<global></global>
|
||||
<function>if (v3 == 0 and v4 == 1) then
|
||||
return (value * v1 ^ 2) - (v2 * 9.81)
|
||||
end
|
||||
return 0</function>
|
||||
<linked_source>/controlsState/curvature</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/vEgo</v1>
|
||||
<v2>/liveParameters/roll</v2>
|
||||
<v3>/carState/steeringPressed</v3>
|
||||
<v4>/carControl/latActive</v4>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="IMU_LatAccelVal_Ms^2">
|
||||
<global></global>
|
||||
<function>if (v1 == 0 and v2 == 1) then
|
||||
return value * -9.8
|
||||
end
|
||||
return 0</function>
|
||||
<linked_source>/can/1/IMU_01_10ms/IMU_LatAccelVal</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/steeringPressed</v1>
|
||||
<v2>/carControl/latActive</v2>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="IMU_LatAccelVal_Ms^3">
|
||||
<global></global>
|
||||
<function>return value * -9.8</function>
|
||||
<linked_source>/can/1/IMU_01_10ms/IMU_LatAccelVal</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/steeringPressed</v1>
|
||||
<v2>/carControl/latActive</v2>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="IMU_LatAccelVal_ms^2_roll_compensated">
|
||||
<global></global>
|
||||
<function>
|
||||
|
||||
if (v1 == 0 and v2 == 1) then
|
||||
return (value * -9.8) - (v3 * 9.81)
|
||||
end
|
||||
return 0</function>
|
||||
<linked_source>/can/1/IMU_01_10ms/IMU_LatAccelVal</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/steeringPressed</v1>
|
||||
<v2>/carControl/latActive</v2>
|
||||
<v3>/liveParameters/roll</v3>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="Actual lateral accel (roll compensated)">
|
||||
<global></global>
|
||||
<function>return (value * v1 ^ 2) - (v2 * 9.81)</function>
|
||||
<linked_source>/controlsState/curvature</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/vEgo</v1>
|
||||
<v2>/liveParameters/roll</v2>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
<snippet name="Desired lateral accel (roll compensated)">
|
||||
<global></global>
|
||||
<function>return (value * v1 ^ 2) - (v2 * 9.81)</function>
|
||||
<linked_source>/controlsState/desiredCurvature</linked_source>
|
||||
<additional_sources>
|
||||
<v1>/carState/vEgo</v1>
|
||||
<v2>/liveParameters/roll</v2>
|
||||
</additional_sources>
|
||||
</snippet>
|
||||
</customMathEquations>
|
||||
<snippets/>
|
||||
<!-- - - - - - - - - - - - - - - -->
|
||||
</root>
|
||||
|
||||
Reference in New Issue
Block a user