From 2e9e07b2e083f7d863ebde9fb5d42bbe0d760763 Mon Sep 17 00:00:00 2001 From: royjr Date: Wed, 15 Jul 2026 22:53:48 -0400 Subject: [PATCH] better RADAR_3A5_3C4 --- opendbc_repo | 2 +- tools/radar/custom_routes.py | 4 ++++ tools/radar/radar_helpers.py | 29 ++++++++++++++++++++++++----- 3 files changed, 29 insertions(+), 6 deletions(-) diff --git a/opendbc_repo b/opendbc_repo index da38b0028c..5fe4a8a9dd 160000 --- a/opendbc_repo +++ b/opendbc_repo @@ -1 +1 @@ -Subproject commit da38b0028c1dfaea5f4e802e025da675052c676a +Subproject commit 5fe4a8a9ddd84f9b10251e5acc8b7c040ee8b0ea diff --git a/tools/radar/custom_routes.py b/tools/radar/custom_routes.py index 01589879d2..4520fa8176 100755 --- a/tools/radar/custom_routes.py +++ b/tools/radar/custom_routes.py @@ -22,6 +22,8 @@ CUSTOM_ROUTES = [ CustomRoute("GENESIS_GV60_EV_1ST_GEN", "b1e441e63f1c99dd|0000009d--14cde5aeaf"), CustomRoute("HYUNDAI_IONIQ_6", "faa815c21279fef7/00000187--ce36ae7c11"), CustomRoute("HYUNDAI_IONIQ_6", "faa815c21279fef7/00000191--e5c3ffb55b"), + CustomRoute("HYUNDAI_IONIQ_6", "ce8a3764a8bb9141/000000f6--775693a6d6"), + CustomRoute("HYUNDAI_IONIQ_6", "ce8a3764a8bb9141/00000100--ba8bd692f5"), CustomRoute("HYUNDAI_KONA_2ND_GEN", "32025f26789d8fab/00000022--a499e8ffa3"), CustomRoute("HYUNDAI_KONA_EV_2ND_GEN", "1618132d68afc876/00000021--bf0f957649"), CustomRoute("HYUNDAI_KONA_HEV_2ND_GEN", "97ca61196eb73e0d/00000052--4555329470"), @@ -31,9 +33,11 @@ CUSTOM_ROUTES = [ CustomRoute("KIA_EV6_2025", "48c27f77f9fd1a9b|00000199--193ee1ba20"), CustomRoute("KIA_EV9", "ccfd4a1af758ee73/00000091--7fa49719a5"), CustomRoute("KIA_K4_2025", "baf39eeaba1217ca/00000002--b36e3fa031"), + CustomRoute("KIA_K4_2025", "ac30936e794b297a/00000021--dde25fcfda/24"), CustomRoute("KIA_K5_2025", "c4a804b067623789/0000007c--163f831540"), CustomRoute("KIA_NIRO_EV_2ND_GEN", "80b8e9a6ad0acec3/0000032d--8379197bd3"), CustomRoute("KIA_NIRO_EV_2ND_GEN", "80b8e9a6ad0acec3/0000032c--0055eeee96"), + CustomRoute("KIA_NIRO_EV_2ND_GEN", "cdde60a79a049bf4/00000002--f448ca40b4"), CustomRoute("KIA_NIRO_HEV_2ND_GEN", "0d4257d1c6741384/00000067--42230e4b8d"), CustomRoute("HYUNDAI_KONA_EV_2022", "e174e1a0b92263ed/00000003--d0591c14ec"), CustomRoute("HYUNDAI_KONA_EV_2022", "e174e1a0b92263ed/00000001--18955a967e"), diff --git a/tools/radar/radar_helpers.py b/tools/radar/radar_helpers.py index e7995a5db2..7231d61dbc 100755 --- a/tools/radar/radar_helpers.py +++ b/tools/radar/radar_helpers.py @@ -5,6 +5,7 @@ import tempfile from dataclasses import dataclass from opendbc.can.parser import CANParser +from opendbc.dbc.generator.hyundai.hyundai_radar_3a5_3c4 import RADAR_3A5_3C4_MESSAGE_COMMENT, RADAR_3A5_3C4_SIGNAL_COMMENTS RADAR_500_51F_DBC_TEMPLATE = """ @@ -26,24 +27,42 @@ BO_ {addr_dec} RADAR_TRACK_{addr_hex}: 24 RADAR SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX SG_ STATE_ALT : 25|2@0+ (1,0) [0|3] "" XXX - SG_ MOTION_STATE : 28|2@0+ (1,0) [0|3] "" XXX + SG_ MOTION_STATE : 28|2@0+ (1,0) [0|2] "" XXX SG_ TRACK_COUNTER : 31|2@0+ (1,0) [0|3] "" XXX SG_ NEW_SIGNAL_2 : 38|7@0- (1,0) [-64|63] "" XXX SG_ AGE : 47|8@0+ (1,0) [0|255] "" XXX SG_ COAST_AGE : 51|4@0+ (1,0) [0|15] "" XXX SG_ STATE : 54|3@0+ (1,0) [0|7] "" XXX - SG_ NEW_SIGNAL_8 : 62|7@0- (1,0) [-64|63] "" XXX - SG_ LONG_DIST : 63|12@1+ (0.05,0) [0|204.75] "m" XXX + SG_ NEW_SIGNAL_8 : 62|7@0- (1,0) [-33|37] "" XXX + SG_ LONG_DIST : 63|13@1+ (0.05,0) [0|409.55] "m" XXX SG_ LAT_DIST : 76|12@1- (0.05,0) [-102.4|102.35] "m" XXX SG_ REL_SPEED : 88|14@1- (0.01,0) [-81.92|81.91] "m/s" XXX - SG_ NEW_SIGNAL_4 : 103|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_4 : 103|2@0+ (1,0) [0|2] "" XXX SG_ REL_LAT_SPEED : 104|13@1- (0.01,0) [-40.96|40.95] "m/s" XXX SG_ REL_ACCEL : 118|10@1- (0.02,0) [-10.24|10.22] "m/s^2" XXX - SG_ NEW_SIGNAL_5 : 134|5@0+ (1,0) [0|31] "" XXX + SG_ NEW_SIGNAL_18 : 129|2@0+ (1,0) [0|2] "" XXX + SG_ NEW_SIGNAL_5 : 135|6@0+ (1,0) [0|32] "" XXX + SG_ WIDTH : 138|5@1+ (0.1,0) [0|3.1] "m" XXX + SG_ LENGTH : 151|8@0+ (0.1,0) [0|25.5] "m" XXX + SG_ ABS_SPEED : 152|10@1+ (0.1,0) [0|102.3] "m/s" XXX + SG_ ORIENTATION_ANGLE : 162|9@1- (1,0) [-180|180] "deg" XXX + SG_ NEW_SIGNAL_13 : 175|4@0+ (1,0) [0|10] "" XXX + SG_ NEW_SIGNAL_12 : 179|4@0+ (1,0) [0|10] "" XXX + SG_ NEW_SIGNAL_14 : 181|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_15 : 183|2@0+ (1,0) [0|2] "" XXX + SG_ NEW_SIGNAL_16 : 185|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_17 : 187|2@0+ (1,0) [0|2] "" XXX +VAL_ {addr_dec} STATE_ALT 0 "EMPTY" 1 "TENTATIVE" 2 "MEASURED" 3 "COASTED" ; VAL_ {addr_dec} MOTION_STATE 0 "UNKNOWN" 1 "STATIONARY" 2 "MOVING" ; +VAL_ {addr_dec} STATE 0 "EMPTY" 1 "TENTATIVE_1" 2 "TENTATIVE_2" 3 "MEASURED" 4 "COASTED" 7 "UNRESOLVED_TENTATIVE" ; """ +RADAR_3A5_3C4_DBC_TEMPLATE += "\n".join(( + 'CM_ BO_ {addr_dec} "' + RADAR_3A5_3C4_MESSAGE_COMMENT + '";', + *(f'CM_ SG_ {{addr_dec}} {signal} "{comment}";' for signal, comment in RADAR_3A5_3C4_SIGNAL_COMMENTS), +)) + "\n" + RADAR_210_21F_DBC_TEMPLATE = """ BO_ {addr_dec} RADAR_TRACK_{addr_hex}: 32 RADAR SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX