Compare commits

...

304 Commits

Author SHA1 Message Date
Jason Wen 3556610b94 Merge branch 'palisade-2023-port-1' into palisade-2023-hda2-long 2024-06-16 23:23:24 -04:00
Jason Wen d114d5a45d Merge remote-tracking branch 'commaai/openpilot/master' into palisade-2023-port-1 2024-06-16 23:22:05 -04:00
Jason Wen 90c5de8337 Revert "bump steerActuatorDelay for stock long"
This reverts commit bf26c38397.
2024-04-29 00:11:11 -04:00
Jason Wen bf26c38397 bump steerActuatorDelay for stock long 2024-04-29 00:10:56 -04:00
Jason Wen 2995424c3a match comma fleet safety 2024-04-29 00:07:30 -04:00
Jason Wen ddaaf4b8b1 keep lkas11 happy 2024-04-28 14:25:25 -04:00
Jason Wen b47a9780dc fix tofu (lead) location on cluster and HUD to center lane
the HDA icon state somehow was interfering with the lead car icon's lane location (left/middle/right)
2024-04-28 06:45:54 -04:00
Jason Wen 459ee997af revert 2024-04-28 06:43:04 -04:00
Jason Wen 04fa417a32 bump opendbc 2024-04-28 06:42:33 -04:00
Jason Wen 43d7437d7f tofu (lead) signal on cluster and HUD 2024-04-28 00:46:46 -04:00
Jason Wen 44cbdf0ba0 revert steer threshold 2024-04-27 18:24:09 -04:00
Jason Wen 3e005bb79b remove this, looks like it's keeping distance stuck at Distance 4 2024-04-27 16:48:08 -04:00
Jason Wen 406cd5351e remove 2024-04-27 13:20:18 -04:00
Jason Wen a312ee6960 limit torque and lower ramp up/down for telluride hda2 2024-04-27 13:18:46 -04:00
Jason Wen 45022daa91 does not matter freq 2024-04-27 12:53:42 -04:00
Jason Wen c1ce6cd7a0 Merge remote-tracking branch 'sunnyhaibin/openpilot-1/palisade-2023-port-1' into palisade-2023-hda2-long 2024-04-27 11:25:02 -04:00
Jason Wen f1edfbef69 bump opendbc 2024-04-27 11:15:00 -04:00
Jason Wen f0b4f075b5 unnecessary 2024-04-27 11:11:17 -04:00
Jason Wen 69ecb989ee higher friction for telluride hda2 2024-04-27 09:57:44 -04:00
Jason Wen c580b31ec8 Merge remote-tracking branch 'sunnyhaibin/openpilot-1/palisade-2023-port-1' into palisade-2023-hda2-long
# Conflicts:
#	panda
2024-04-27 03:38:17 -04:00
Jason Wen 323956d37c adjust steering threshold limits 2024-04-27 03:37:49 -04:00
Jason Wen 85986542f0 adjust steering threshold 2024-04-27 03:35:11 -04:00
Jason Wen 83512fac31 most tx are fine 2024-04-27 03:30:21 -04:00
Jason Wen 6e80cb5486 not needed 2024-04-27 03:25:37 -04:00
Jason Wen e2ebf3f1ad Merge remote-tracking branch 'sunnyhaibin/openpilot-1/palisade-2023-port-1' into palisade-2023-hda2-long
# Conflicts:
#	panda
2024-04-27 03:11:03 -04:00
Jason Wen ab12baa3c9 bump opendbc 2024-04-27 03:10:29 -04:00
Jason Wen 18e9dec240 bump panda 2024-04-27 03:10:24 -04:00
Jason Wen 60016c3edc better palisade hda2 lateral manual tune 2024-04-27 02:48:53 -04:00
Jason Wen e81cdd9f5d palisade hda2 lateral manual tune 2024-04-27 02:29:26 -04:00
Jason Wen cb77348f03 new signal 2024-04-27 01:50:29 -04:00
Jason Wen 769253cd35 corrected rx safety 2024-04-27 01:13:13 -04:00
Jason Wen 380cd84d1d bump opendbc 2024-04-27 00:55:43 -04:00
Jason Wen f2d408e6bf put lead in center lane? 2024-04-27 00:25:39 -04:00
Jason Wen cb80140505 possible lead lane location 2024-04-27 00:24:59 -04:00
Jason Wen 2996cc3e95 flipped 2024-04-26 23:06:30 -04:00
Jason Wen 56ee796b90 fix 2024-04-26 22:55:02 -04:00
Jason Wen b8d53752fa new long tune for better starting 2024-04-26 22:54:12 -04:00
Jason Wen f3a49b903b use working rx checks for now 2024-04-26 17:48:13 -04:00
Jason Wen d946f29269 Merge remote-tracking branch 'sunnyhaibin/openpilot-1/palisade-2023-port-1' into palisade-2023-hda2-long
# Conflicts:
#	panda
2024-04-26 17:39:03 -04:00
Jason Wen 8d93f86708 skip checksum for can can-fd hybrid 2024-04-26 17:38:38 -04:00
Jason Wen 1fd0ced8e3 update tune on telluride HDA2 2024-04-26 17:22:03 -04:00
Jason Wen 89b731e31b Merge remote-tracking branch 'sunnyhaibin/openpilot-1/palisade-2023-port-1' into palisade-2023-hda2-long
# Conflicts:
#	panda
2024-04-26 17:20:35 -04:00
Jason Wen 8eefab9fe2 this should be on bus 0 2024-04-26 17:19:50 -04:00
Jason Wen 299e2dea74 use can-fd tune 2024-04-26 16:08:55 -04:00
Jason Wen b02253cc3a missed this 2024-04-26 16:02:41 -04:00
Jason Wen 9df133b5c5 add negative offset to upper jerk limit 2024-04-26 15:34:11 -04:00
Jason Wen be09e41dd0 only check for fca11 if not can can-fd hybrid 2024-04-26 15:18:25 -04:00
Jason Wen b2891dc92a don't need to send these messages for can can-fd hybrid 2024-04-26 15:06:26 -04:00
Jason Wen 259f894396 fix naming syncs 2024-04-26 14:59:49 -04:00
Jason Wen 4acf477fce Merge remote-tracking branch 'sunnyhaibin/openpilot-1/palisade-2023-port-1' into palisade-2023-hda2-long
# Conflicts:
#	selfdrive/car/hyundai/hyundaican.py
#	selfdrive/car/hyundai/interface.py
#	selfdrive/car/hyundai/values.py
2024-04-26 14:52:08 -04:00
Jason Wen a47206c834 make the threshold a tad higher 2024-04-26 14:49:40 -04:00
Jason Wen 156886d11e use common macros 2024-04-26 14:47:31 -04:00
Jason Wen 876460bd10 import CAN into button sendcan 2024-04-26 14:40:43 -04:00
Jason Wen fb050acbd3 sync name 2024-04-26 14:36:14 -04:00
Jason Wen 145b46e15d bump panda 2024-04-26 14:35:23 -04:00
Jason Wen 7bac6564b0 Merge remote-tracking branch 'commaai/openpilot/master' into palisade-2023-port-1
# Conflicts:
#	RELEASES.md
2024-04-26 14:34:24 -04:00
Jason Wen b6cb2603f6 bump panda 2024-04-26 14:32:45 -04:00
Jason Wen 9df99077fb bump panda 2024-04-26 14:29:09 -04:00
Jason Wen 10d619d87a put non-HDA2 variants in dashcamOnly in this PR 2024-04-26 12:38:14 -04:00
Jason Wen 6e770ebcdf Cleaner safety config and param sets 2024-04-26 12:29:09 -04:00
Jason Wen a4e4c0ef32 Remove CAN_CANFD_HYBRID from CAN_FD checks 2024-04-26 12:16:39 -04:00
Jason Wen af701aec32 CAN_CANFD -> CAN_CANFD_HYBRID 2024-04-26 11:57:13 -04:00
Jason Wen 9d9c652c4d no longer needed 2024-04-26 11:19:50 -04:00
Jason Wen 59deb1df13 lower friction for telluride hda2 eps 2024-04-26 09:38:12 -04:00
Jason Wen 9cd72e734f Merge branch 'palisade-2023-port-1' into palisade-2023-hda2-long 2024-04-26 09:00:49 -04:00
Jason Wen 63f361b181 permission to 755 2024-04-26 09:00:31 -04:00
Jason Wen f1ae346165 add the default back 2024-04-26 08:59:05 -04:00
Jason Wen 5e9beca04b Merge branch 'palisade-2023-port-1' into palisade-2023-hda2-long 2024-04-26 08:56:06 -04:00
Jason Wen 02b7b33ca8 bump opendbc 2024-04-26 08:55:46 -04:00
Jason Wen 7a0b6e0b89 don't include this 2024-04-26 08:55:06 -04:00
Jason Wen e3356cccd0 late night typo 2024-04-26 08:46:45 -04:00
Jason Wen 9cb43f3e78 new values 2024-04-26 08:28:40 -04:00
Jason Wen 0777da28bb back to default with bumped torque 2024-04-26 08:09:30 -04:00
yufeng66 e4d335912c remove duplicate palisade 2023 line (#318) 2024-04-26 08:03:51 -04:00
Jason Wen bb6c7f3096 different EPS with different offline torque values 2024-04-26 02:55:44 -04:00
Jason Wen 2c0c3f8cfa back to old offline values 2024-04-26 02:31:37 -04:00
Jason Wen a417991e85 don't display if no lead 2024-04-26 00:59:08 -04:00
Jason Wen ae2b9a2c78 lead car status icon on cluster 2024-04-26 00:57:32 -04:00
Jason Wen f98745c42f show previously set speed and lead car status on cluster when not enabled 2024-04-26 00:47:51 -04:00
Jason Wen 8064d3de58 more sane tunes 2024-04-26 00:21:21 -04:00
Jason Wen 8bff422575 less harsh stop to 0 (hack, or is it really?) 2024-04-26 00:05:04 -04:00
Jason Wen ec378c7eba typo - undefined signal 2024-04-25 23:45:34 -04:00
Jason Wen 17dc294e00 forgot to move - undefined signal 2024-04-25 23:45:02 -04:00
Jason Wen 9012c6e7b2 try out tune 2024-04-25 23:44:01 -04:00
Jason Wen 3f4dbd52eb test theory on fcw icon on cluster 2024-04-25 19:10:20 -04:00
Jason Wen 72424f1381 testing only: keep FCW icon off on cluster 2024-04-25 13:19:01 -04:00
Jason Wen 1fc6e17201 FCW settings in head unit 2024-04-25 10:33:48 -04:00
Jason Wen a9d858af25 fixes 2024-04-24 23:22:45 -04:00
Jason Wen 3b32c666d8 remove extra 2024-04-24 22:25:38 -04:00
Jason Wen 66ed0c0605 bump opendbc 2024-04-24 17:23:55 -04:00
Jason Wen d3f6c2d6eb Support Driving Personality change 2024-04-24 17:00:13 -04:00
Jason Wen a4f2576fc5 Merge branch 'palisade-2023-port-1' into palisade-2023-hda2-long
# Conflicts:
#	selfdrive/car/torque_data/override.toml
2024-04-24 16:32:45 -04:00
Jason Wen 5303118e90 update name 2024-04-24 16:32:11 -04:00
Jason Wen 3940c20c08 Merge branch 'palisade-2023-port-1' into palisade-2023-hda2-long 2024-04-24 16:31:37 -04:00
Jason Wen 3511c4bea3 bump opendbc 2024-04-24 16:26:08 -04:00
Jason Wen 4f237bcd2d match DBC 2024-04-24 16:19:14 -04:00
Jason Wen dd2c07bfb3 distance bar 2024-04-24 16:17:42 -04:00
Jason Wen f817eab9e2 elevation from sea level 2024-04-24 15:39:13 -04:00
Jason Wen 7a5ca4d8d3 this is easier 2024-04-24 14:56:49 -04:00
Jason Wen 49c7fd709f format 2024-04-24 14:52:03 -04:00
Jason Wen 00ade0e11f update def 2024-04-24 14:50:22 -04:00
Jason Wen 3ef09aa2de format 2024-04-24 14:49:39 -04:00
Jason Wen 773f75236d generate checksum, simplify checksum and counter calculations 2024-04-24 14:47:04 -04:00
Jason Wen 9dc65daad5 format 2024-04-24 14:37:46 -04:00
Jason Wen cf66c33121 more readable 2024-04-24 12:03:21 -04:00
Jason Wen d3f16d04f9 consistent 2024-04-24 12:00:28 -04:00
Jason Wen d16696a3bd simpler acc msgs 2024-04-24 11:58:28 -04:00
Jason Wen 549e224b6a same checksum and counter defs 2024-04-24 11:52:53 -04:00
Jason Wen dff2aae17f simplify 2024-04-24 11:48:52 -04:00
Jason Wen 4e10353203 keep more things happy 2024-04-24 11:34:43 -04:00
Jason Wen c5d530000d overlapped 2024-04-24 11:26:10 -04:00
Jason Wen a3c9d41b30 let them through 2024-04-24 11:16:04 -04:00
Jason Wen 621bbf99a0 fill it up 2024-04-24 11:06:54 -04:00
Jason Wen bfe885e412 new gear shifter sig 2024-04-24 02:15:50 -04:00
Jason Wen 0d96cd9547 Revert "don't skip"
This reverts commit fd0ad9d3a3.
2024-04-24 01:06:57 -04:00
Jason Wen fd0ad9d3a3 don't skip 2024-04-24 00:41:08 -04:00
Jason Wen d9c6a52d76 generate counter 2024-04-24 00:36:24 -04:00
Jason Wen 6a9008f20b don't auto generate checksum 2024-04-24 00:35:31 -04:00
Jason Wen 2cbb977675 not fully CAN 2024-04-24 00:26:47 -04:00
Jason Wen ed9bdd949f don't forget lfahda_cluster checksum 2024-04-24 00:18:20 -04:00
Jason Wen 98e9adcbd0 can't forget this 2024-04-24 00:03:54 -04:00
Jason Wen cd8dc0f174 wrong bus 2024-04-23 19:54:10 -08:00
Jason Wen cd57636d2d test 2024-04-23 19:10:33 -08:00
Jason Wen c66f698d6d Merge remote-tracking branch 'commaai/openpilot/master' into palisade-2023-port-1 2024-04-23 21:16:56 -04:00
Jason Wen e827df46b3 bump opendbc 2024-04-23 21:05:37 -04:00
Jason Wen 4747cd88ad no more lkas11 2024-04-23 20:30:26 -04:00
Jason Wen 0782e41f6f Revert "cs fix"
This reverts commit 7bffca40d8.
2024-04-23 20:22:05 -04:00
Jason Wen 1b43830e04 Revert "open it up"
This reverts commit 88ef06745d.
2024-04-23 20:15:20 -04:00
Jason Wen 88ef06745d open it up 2024-04-23 16:20:32 -04:00
Jason Wen 7bffca40d8 cs fix 2024-04-23 14:43:20 -04:00
Jason Wen 93eea69455 blind test 2024-04-23 10:19:04 -04:00
Jason Wen cb584f55b6 bump lateral limits for this platform 2024-04-23 03:00:13 -04:00
Jason Wen f813277836 keep things happy 2024-04-23 02:22:52 -04:00
Jason Wen b71d9f2655 explicit scc checks 2024-04-23 02:12:00 -04:00
Jason Wen 0f0193c28b scc messages 2024-04-23 02:11:50 -04:00
Jason Wen 3507ce4031 more consistent for ObjValid
0 = valid
1 = not valid
2024-04-22 23:55:56 -04:00
Jason Wen 595c41277c likely flipped signals 2024-04-22 23:17:39 -04:00
Jason Wen faaaf9bbc5 lfahda cluster 2024-04-22 22:53:42 -04:00
Jason Wen a97cda2dd6 take this out for now 2024-04-22 22:49:29 -04:00
Jason Wen 82dfbd1185 lkas11 2024-04-22 22:38:52 -04:00
Jason Wen 21742b7341 more 2024-04-22 12:53:48 -04:00
Jason Wen dca3ae3eba init 2024-04-22 03:48:49 -04:00
Jason Wen 6fda12698c More FW 2024-03-25 12:03:37 -04:00
Jason Wen b78d7b0333 Update CARS.md 2024-03-03 21:29:46 -05:00
Jason Wen 044ee32e3c Bruh 2024-03-03 21:12:33 -05:00
Jason Wen e1ebed0b30 Signal fix 2024-03-03 21:12:33 -05:00
Jason Wen 51c92d5bc0 Fixup! Under CAN, not CAN-FD 2024-03-03 21:12:33 -05:00
Jason Wen 5660599c6d Under CAN, not CAN-FD 2024-03-03 21:12:33 -05:00
Jason Wen cca9e1e66f Remove 2024-03-03 18:50:50 -05:00
Jason Wen 4c1577736e bump opendbc 2024-03-03 18:46:03 -05:00
Jason Wen 6588ec976d Merge remote-tracking branch 'commaai/openpilot/master' into palisade-2023-port-1 2024-03-03 18:34:20 -05:00
Jason Wen 99e928c7f0 Revert "Hyundai: calculate counters manually for button sends"
This reverts commit 4118acedd0.
2023-10-04 12:44:17 -04:00
Jason Wen 4118acedd0 Hyundai: calculate counters manually for button sends 2023-10-02 21:50:17 -04:00
Jason Wen 50643700b4 add 2024 Palisade FW 2023-09-18 22:56:19 -04:00
Shane Smiskol 18b6b8a86d lower friction 2023-09-07 14:16:46 -07:00
Shane Smiskol a072784c05 lower lateral limits 2023-09-07 14:11:02 -07:00
Shane Smiskol c49b4e1044 Merge remote-tracking branch 'upstream/master' into palisade-2023-port-1 2023-09-07 14:06:25 -07:00
Shane Smiskol 92abf1b325 Revert "lfa block one place" until we clear up mismatch
This reverts commit 0fb76d6ef7.
2023-09-06 03:22:56 -07:00
Shane Smiskol 0fb76d6ef7 lfa block one place 2023-09-06 03:20:18 -07:00
Shane Smiskol 0d31697ca3 Merge remote-tracking branch 'upstream/master' into palisade-2023-port-1 2023-09-06 01:37:46 -07:00
Jason Wen 604e93d522 unused 2023-08-31 23:00:27 -04:00
Jason Wen 3b6b9a08a8 take it out 2023-08-31 22:54:00 -04:00
Jason Wen 256bfa37e5 Revert "bump panda"
This reverts commit bec3fd048e.
2023-08-31 22:38:53 -04:00
Jason Wen 63d23c7949 update test route 2023-08-31 22:38:32 -04:00
Jason Wen bec3fd048e bump panda 2023-08-31 22:14:58 -04:00
Jason Wen 3e6998b442 Ugh 2023-08-31 10:58:02 -04:00
Jason Wen 95519b2c9f try this 2023-08-31 10:53:05 -04:00
Jason Wen 4b2e4f825b try this 2023-08-31 10:51:38 -04:00
Jason Wen 442a09c5e9 gotta move this too 2023-08-31 10:38:11 -04:00
Jason Wen 6594a189fe flag 2023-08-31 10:25:59 -04:00
Jason Wen 85a53c77c8 upstream fix! 2023-08-31 10:21:25 -04:00
Jason Wen 0381999d92 Update CARS.md 2023-08-31 10:12:55 -04:00
Jason Wen 72c20b3b48 consolidate get lfa block msg 2023-08-31 10:10:04 -04:00
Jason Wen 4fac70eb8a Did it just happen again 2023-08-31 09:59:07 -04:00
Jason Wen ded63d38cb upstream fix 2023-08-31 09:52:41 -04:00
Jason Wen 5bfd13407a revert 2023-08-31 09:21:31 -04:00
Jason Wen 54de2a295d move 2023-08-31 09:18:05 -04:00
Jason Wen b0c96e15c2 linter 2023-08-31 03:02:49 -04:00
Jason Wen 7fc81f0424 try this 2023-08-31 02:57:44 -04:00
Jason Wen c8e7fdbb73 exclude 2023-08-31 02:26:27 -04:00
Jason Wen 521226a37c fix 2023-08-31 02:09:18 -04:00
Jason Wen 7a86bf18bc classify as CAN 2023-08-31 01:58:02 -04:00
Jason Wen 33b9aad18a Merge remote-tracking branch 'commaai/openpilot/master' into palisade-2023-port-1 2023-08-31 01:21:11 -04:00
Jason Wen c0ac3c3cec bump model year 2023-08-31 01:20:11 -04:00
Jason Wen e89d9a61c3 Merge remote-tracking branch 'commaai/openpilot/master' into palisade-2023-port-1
# Conflicts:
#	RELEASES.md
#	opendbc
#	panda
#	selfdrive/car/hyundai/values.py
#	selfdrive/car/torque_data/override.yaml
2023-08-30 19:35:39 -04:00
Jason Wen 4eca5328bb This platform is radar SCC 2023-08-30 19:20:01 -04:00
Jason Wen c2b0fe46a2 update per community reviews 2023-08-30 00:20:25 -04:00
Jason Wen eefae2a83a Merge remote-tracking branch 'commaai/openpilot/master' into palisade-2023-port-1
# Conflicts:
#	panda
2023-08-30 00:19:39 -04:00
Jason Wen 1d06488a0d bump opendbc 2023-08-30 00:18:23 -04:00
Jason Wen 80cb3c8d3a bump panda 2023-08-29 17:36:12 -04:00
Jason Wen 8eeb64ab8c bump panda 2023-08-29 17:33:27 -04:00
Jason Wen 0999c3c629 H7 reset 2023-08-29 17:06:45 -04:00
Jason Wen 28795b0d54 try this 2023-08-29 11:30:39 -04:00
Jason Wen 399266bc45 Merge remote-tracking branch 'commaai/openpilot/master' into palisade-2023-port-1
# Conflicts:
#	opendbc
#	panda
2023-08-29 11:16:00 -04:00
Jason Wen 9d60948bac Fix button method 2023-08-28 23:42:15 -04:00
Jason Wen 18c6bf7571 bump opendbc 2023-08-28 19:00:15 -04:00
Jason Wen 706d28bcca Remove this 2023-08-28 18:42:09 -04:00
Jason Wen b4ede50b99 Merge remote-tracking branch 'commaai/openpilot/master' into palisade-2023-port-1
# Conflicts:
#	opendbc
#	selfdrive/car/hyundai/carcontroller.py
2023-08-28 18:41:46 -04:00
Jason Wen 8e1d5c3ad9 Revert for now 2023-08-28 18:36:29 -04:00
Jason Wen 3a97295963 bump MY to 2024 2023-08-28 14:47:01 -04:00
Jason Wen 4ed66b0b87 Merge remote-tracking branch 'commaai/openpilot/master' into palisade-2023-port-1 2023-08-27 14:19:48 -04:00
Jason Wen 9d8088130d Update docs 2023-08-27 03:50:17 -04:00
Jason Wen 6295334ff4 Gate it by default 2023-08-27 03:43:05 -04:00
Jason Wen 12b4878159 New test route 2023-08-27 03:39:36 -04:00
Jason Wen 924ae09cc1 Gate the list 2023-08-27 03:21:08 -04:00
Jason Wen a64a002a80 Fix 2023-08-27 03:04:31 -04:00
Jason Wen 6c6dc10c88 common flags 2023-08-27 02:44:28 -04:00
Jason Wen 3cb72958e6 Should be here 2023-08-27 02:33:22 -04:00
Jason Wen db54b02452 Panda: common CAN_CANFD flags 2023-08-27 02:17:16 -04:00
Jason Wen 4691d8b73b flipped 2023-08-27 02:07:28 -04:00
Jason Wen 884ccaaa9f cleanup and fixes 2023-08-27 01:37:40 -04:00
Jason Wen 4d51231156 consolidate in method 2023-08-27 01:13:51 -04:00
Jason Wen 1e82dd4347 Use common flag 2023-08-27 01:02:05 -04:00
Jason Wen f9d1e8f998 Merge remote-tracking branch 'commaai/openpilot/master' into palisade-2023-port-1
# Conflicts:
#	RELEASES.md
#	docs/CARS.md
#	panda
#	selfdrive/car/hyundai/hyundaican.py
#	selfdrive/car/hyundai/interface.py
#	selfdrive/car/hyundai/values.py
#	selfdrive/car/torque_data/override.yaml
2023-08-27 00:41:30 -04:00
Jason Wen 9c5c0abf52 bump opendbc 2023-08-26 23:58:29 -04:00
Jason Wen b6bf3f5a09 bump opendbc 2023-08-26 23:54:44 -04:00
Jason Wen b17a056ba8 bump opendbc 2023-08-26 23:31:45 -04:00
Jason Wen 257653fa75 Use generated DBC for common messages 2023-08-26 23:29:16 -04:00
Jason Wen 3152c367ab 2024 Palisade FW 2023-08-26 13:53:00 -04:00
Jason Wen 85ff702a9f bump opendbc 2023-08-25 11:49:19 -04:00
Jason Wen fe6d73074e Sync with CanBus helper 2023-08-25 10:28:28 -04:00
Jason Wen 0c2a6d9230 Merge remote-tracking branch 'commaai/openpilot/master' into palisade-2023-port-1
# Conflicts:
#	panda
#	selfdrive/car/hyundai/interface.py
2023-08-18 09:50:44 -04:00
Jason Wen ed6e7da39a bump panda 2023-08-11 14:48:25 -04:00
Jason Wen 4481b84c53 Add Hyundai R connector for 2023 Palisade HDA2 2023-08-11 12:16:32 -04:00
Jason Wen d50edaab9d Fix 2023-08-11 12:02:21 -04:00
Jason Wen e239344b18 Merge remote-tracking branch 'commaai/openpilot/master' into palisade-2023-port-1 2023-08-11 12:00:43 -04:00
Jason Wen 3991c4cc46 bump panda (test can bus disconnected) 2023-06-06 14:51:57 -04:00
Jason Wen f163f207db Revert "updating tuning per chichum"
This reverts commit 4bee7fc48d.
2023-06-05 21:11:59 -04:00
Jason Wen cd69f75171 bump panda (test can bus disconnected) 2023-06-05 20:33:06 -04:00
Jason Wen 82c175628a Update CARS.md 2023-06-04 16:25:30 -04:00
Jason Wen 195ac2d81b Update CARS.md 2023-06-04 16:23:27 -04:00
Jason Wen 4bee7fc48d updating tuning per chichum 2023-06-03 14:43:37 -04:00
Jason Wen a3f83d5846 fix send bus 2023-06-03 14:27:14 -04:00
Jason Wen 5040ab0f1c Don't check non-16-bit checksum msgs 2023-06-03 13:03:04 -04:00
Jason Wen 96f162a1f9 check counter explicitly 2023-06-03 12:24:32 -04:00
Jason Wen b0fb5b467e try this 2023-06-03 12:06:33 -04:00
Jason Wen bc28976359 this way 2023-06-03 11:58:24 -04:00
Jason Wen 9c83051ec0 check this platform too 2023-06-03 11:16:29 -04:00
Jason Wen ed82ff82fd Merge branch 'upstream/openpilot/master' into palisade-2023-port-1
# Conflicts:
#	RELEASES.md
#	docs/CARS.md
#	opendbc
#	panda
#	selfdrive/car/hyundai/carcontroller.py
#	selfdrive/car/hyundai/hyundaican.py
#	selfdrive/car/hyundai/values.py
#	selfdrive/car/torque_data/override.yaml
2023-06-03 10:18:51 -04:00
Jason Wen 3767feb457 bump panda 2023-03-26 20:29:11 -04:00
Jason Wen 809cdbef45 bump opendbc 2023-03-26 20:25:22 -04:00
Jason Wen a3cb2c7db8 Merge remote-tracking branch 'upstream/master' into palisade-2023-port-1
# Conflicts:
#	RELEASES.md
#	opendbc
#	panda
2023-03-26 20:21:16 -04:00
Jason Wen daa23e4013 add more FW (JackTheGiant) 2023-03-12 14:41:24 -04:00
Jason Wen 64d35d0e3c higher factor at init 2023-03-08 14:55:51 -05:00
Jason Wen 6c5d446201 lower friction to test torqued 2023-03-08 11:38:43 -05:00
Jason Wen d494949040 bump opendbc 2023-03-06 18:50:54 -05:00
Jason Wen cd051d8a03 less oversteer 2023-03-06 18:50:07 -05:00
Jason Wen 3f48736f82 fix understeer 2023-03-05 20:08:05 -05:00
Jason Wen 59241b177f bump opendbc 2023-03-05 16:27:34 -05:00
Jason Wen 32597bf832 Merge remote-tracking branch 'upstream/master' into palisade-2023-port-1 2023-03-03 23:13:29 -05:00
Jason Wen d0aff3f56a bump opendbc 2023-03-03 23:13:12 -05:00
Jason Wen 7a1dfc843e won't work 2023-03-03 14:42:47 -05:00
Jason Wen dc9737110d update tune 2023-03-02 23:01:41 -05:00
Jason Wen ef2bc240f6 bump opendbc 2023-03-02 21:42:24 -05:00
Jason Wen dfdf834f02 More explicit 2023-03-02 10:36:22 -05:00
Jason Wen 5231fa365c add test route 2023-03-01 23:12:55 -05:00
Jason Wen 1aca22fafd friction from liveTorqueParameters 2023-03-01 22:16:10 -05:00
Jason Wen 5cca282110 hda2 only 2023-03-01 22:15:04 -05:00
Jason Wen 0aafbccf54 detect using adas driving ecu 2023-03-01 22:07:56 -05:00
Jason Wen e1804a57ce hda2 only 2023-03-01 21:58:37 -05:00
Jason Wen 415b32259c use CAN method to send button presses 2023-03-01 21:43:41 -05:00
Jason Wen 63f13990db add FW versions for 2023 Telluride 2023-03-01 21:04:09 -05:00
Jason Wen 5d7162c590 ugh, new blind spot indicator signals 2023-03-01 17:45:22 -05:00
Jason Wen 2527f1db7b no need to force fingerprint 2023-03-01 17:11:28 -05:00
Jason Wen c719f5c177 only fwdCamera and fwdRadar 2023-03-01 17:11:04 -05:00
Jason Wen b260a15fa8 small cleanup 2023-03-01 17:05:08 -05:00
Jason Wen 45addc5bb9 fix set speed definitions 2023-03-01 16:54:57 -05:00
Jason Wen f698f8fbdb fix block 2023-03-01 15:21:51 -05:00
Jason Wen 3a98031f54 use can-fd button press freq 2023-02-28 22:42:56 -05:00
Jason Wen 2de50a849c split up the checks 2023-02-28 18:32:52 -05:00
Jason Wen 0d3d1fdf2e make things neater 2023-02-28 18:29:24 -05:00
Jason Wen 8be93cd7c8 Gotta block them LFA! 2023-02-28 14:46:03 -05:00
Jason Wen a298fadeb5 Update harness 2023-02-28 14:38:14 -05:00
Jason Wen 51b2d23c3b Merge remote-tracking branch 'upstream/master' into palisade-2023-port-1
# Conflicts:
#	docs/CARS.md
#	panda
2023-02-28 14:37:57 -05:00
Jason Wen 0c8e8086af checksum and counter 2023-02-28 14:37:07 -05:00
Jason Wen f928619ac7 check steering message! 2023-02-28 14:37:06 -05:00
Jason Wen fa15300ba5 Cable fixed! 2023-02-28 14:37:06 -05:00
Jason Wen a7d092ee45 don't forget to block! 2023-02-28 14:37:05 -05:00
Jason Wen 5faea1a6d9 wrong var 2023-02-28 14:37:04 -05:00
Jason Wen 1c047c6193 check this 2023-02-28 14:37:03 -05:00
Jason Wen 05fdcca82c uhhh why not multiplex busses?! 2023-02-28 14:37:03 -05:00
Jason Wen 112d314693 do this instead 2023-02-28 14:37:02 -05:00
Jason Wen 6ad5f69a0f correct bus 2023-02-28 14:37:01 -05:00
Jason Wen 2a1b825930 new panda safety 2023-02-23 22:15:10 -05:00
Jason Wen c1aad27ac6 Second attempt 2023-02-23 22:05:06 -05:00
Jason Wen de91bb5283 DISCOVERY: Set safety model at the end 2023-02-20 18:28:59 -05:00
Jason Wen 2609eb6988 DISCOVERY: Skip CAN checks for now 2023-02-19 21:57:27 -05:00
Jason Wen aeceac2b3d DISCOVERY: force panda safety 2023-02-19 21:08:04 -05:00
Jason Wen 5a5dc3f6c6 Take these out for now 2023-02-18 22:48:19 -05:00
Jason Wen 9513a5f511 different messages 2023-02-18 22:44:48 -05:00
Jason Wen ad281b0ba8 bump opendbc 2023-02-18 22:27:58 -05:00
Jason Wen d97c8de5a0 check at the top first 2023-02-18 22:09:51 -05:00
Jason Wen 5cf9bab8b5 fw fingerprint not working, force recognize for now 2023-02-18 21:59:32 -05:00
Jason Wen 1861e2ce2b Add to release files 2023-02-18 21:32:37 -05:00
Jason Wen 4d03ee3089 Missed this oops 2023-02-18 21:17:13 -05:00
Jason Wen baa2724316 Use IntFlag to detect platform 2023-02-18 21:11:36 -05:00
Jason Wen 1aaf6e9193 Update docs 2023-02-18 20:37:43 -05:00
Jason Wen b7da74a1c3 Merge remote-tracking branch 'upstream/master' into palisade-2023-port-1
# Conflicts:
#	opendbc
#	panda
#	selfdrive/car/hyundai/carcontroller.py
#	selfdrive/car/hyundai/carstate.py
2023-02-18 20:27:28 -05:00
Jason Wen 0f4a3f5395 bump panda 2023-02-11 00:47:29 -05:00
Jason Wen d798f7afcb bump opendbc 2023-02-11 00:47:23 -05:00
Jason Wen 5c7696ea38 Merge remote-tracking branch 'upstream/master' into palisade-2023-port-new
# Conflicts:
#	opendbc
#	panda
#	selfdrive/car/hyundai/carcontroller.py
#	selfdrive/car/hyundai/carstate.py
#	selfdrive/car/hyundai/values.py
#	selfdrive/car/torque_data/override.yaml
2023-02-11 00:37:24 -05:00
Jason Wen 2d88defe63 bump panda 2023-02-11 00:34:10 -05:00
Jason Wen 96d94b6c30 bump opendbc 2023-02-11 00:34:04 -05:00
Jason Wen 7c973a42d1 HKG: Car Port for 2023 Hyundai Palisade & Kia Telluride 2023-02-11 00:31:35 -05:00
12 changed files with 332 additions and 98 deletions
+2
View File
@@ -1,6 +1,8 @@
Version 0.9.8 (2024-XX-XX)
========================
* Added toggle to enable driver monitoring even when openpilot is not engaged
* Hyundai Palisade (with HDA II) 2023-24 support thanks to sunnyhaibin!
* Kia Telluride (with HDA II) 2023-24 support thanks to sunnyhaibin!
Version 0.9.7 (2024-06-13)
========================
+1 -1
Submodule opendbc updated: 776bca184b...5956b7b24a
+1 -1
Submodule panda updated: faa1802669...b347854479
+24 -10
View File
@@ -103,13 +103,18 @@ class CarController(CarControllerBase):
if self.CP.flags & HyundaiFlags.ENABLE_BLINKERS:
can_sends.append([0x7b1, 0, b"\x02\x3E\x80\x00\x00\x00\x00\x00", self.CAN.ECAN])
hda2 = self.CP.flags & HyundaiFlags.CANFD_HDA2
can_canfd_hybrid = self.CP.flags & HyundaiFlags.CAN_CANFD_HYBRID
# CAN-FD platforms
if self.CP.carFingerprint in CANFD_CAR:
hda2 = self.CP.flags & HyundaiFlags.CANFD_HDA2
if self.CP.carFingerprint in CANFD_CAR or (hda2 and can_canfd_hybrid):
hda2_long = hda2 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_steer))
can_sends.extend(hyundaicanfd.create_steering_messages(self.packer, self.CP, self.CAN, CC.enabled, apply_steer_req, apply_steer,
self.frame, torque_fault,
hud_control.leftLaneVisible, hud_control.rightLaneVisible,
left_lane_warning, right_lane_warning))
# prevent LFA from activating on HDA2 by sending "no lane lines detected" to ADAS ECU
if self.frame % 5 == 0 and hda2:
@@ -118,7 +123,7 @@ class CarController(CarControllerBase):
# LFA and HDA icons
if self.frame % 5 == 0 and (not hda2 or hda2_long):
can_sends.append(hyundaicanfd.create_lfahda_cluster(self.packer, self.CAN, CC.enabled))
can_sends.append(hyundaicanfd.create_lfahda_cluster(self.packer, self.CAN, CC.enabled, can_canfd_hybrid))
# blinkers
if hda2 and self.CP.flags & HyundaiFlags.ENABLE_BLINKERS:
@@ -126,14 +131,23 @@ class CarController(CarControllerBase):
if self.CP.openpilotLongitudinalControl:
if hda2:
can_sends.extend(hyundaicanfd.create_adrv_messages(self.packer, self.CAN, self.frame))
can_sends.extend(hyundaicanfd.create_adrv_messages(self.packer, self.CAN, self.frame, can_canfd_hybrid))
if can_canfd_hybrid:
can_sends.extend(hyundaicanfd.create_radar_aux_messages(self.packer, self.CAN, self.frame))
if self.frame % 2 == 0:
can_sends.append(hyundaicanfd.create_acc_control(self.packer, self.CAN, CC.enabled, self.accel_last, accel, stopping, CC.cruiseControl.override,
set_speed_in_units, hud_control))
if can_canfd_hybrid:
stopping = stopping and CS.out.vEgoRaw < 0.1
upper_jerk = 3.0 if actuators.longControlState == LongCtrlState.pid else 1.0
can_sends.extend(hyundaicanfd.create_acc_commands_can_canfd_hybrid(self.packer, self.CAN, CC.enabled, accel, self.accel_last, upper_jerk,
int(self.frame / 2), hud_control.leadVisible,
set_speed_in_units, stopping, CC.cruiseControl.override, hud_control))
else:
can_sends.append(hyundaicanfd.create_acc_control(self.packer, self.CAN, CC.enabled, self.accel_last, accel, stopping, CC.cruiseControl.override,
set_speed_in_units, hud_control))
self.accel_last = accel
else:
# button presses
can_sends.extend(self.create_button_messages(CC, CS, use_clu11=False))
can_sends.extend(self.create_button_messages(CC, CS, use_clu11=(hda2 and can_canfd_hybrid)))
else:
can_sends.append(hyundaican.create_lkas11(self.packer, self.frame, self.CP, apply_steer, apply_steer_req,
torque_fault, CS.lkas11, sys_warning, sys_state, CC.enabled,
@@ -175,12 +189,12 @@ class CarController(CarControllerBase):
can_sends = []
if use_clu11:
if CC.cruiseControl.cancel:
can_sends.append(hyundaican.create_clu11(self.packer, self.frame, CS.clu11, Buttons.CANCEL, self.CP))
can_sends.append(hyundaican.create_clu11(self.packer, self.frame, CS.clu11, Buttons.CANCEL, self.CP, self.CAN))
elif CC.cruiseControl.resume:
# send resume at a max freq of 10Hz
if (self.frame - self.last_button_frame) * DT_CTRL > 0.1:
# send 25 messages at a time to increases the likelihood of resume being accepted
can_sends.extend([hyundaican.create_clu11(self.packer, self.frame, CS.clu11, Buttons.RES_ACCEL, self.CP)] * 25)
can_sends.extend([hyundaican.create_clu11(self.packer, self.frame, CS.clu11, Buttons.RES_ACCEL, self.CP, self.CAN)] * 25)
if (self.frame - self.last_button_frame) * DT_CTRL >= 0.15:
self.last_button_frame = self.frame
else:
+37 -25
View File
@@ -8,7 +8,7 @@ from opendbc.can.parser import CANParser
from opendbc.can.can_define import CANDefine
from openpilot.selfdrive.car.hyundai.hyundaicanfd import CanBus
from openpilot.selfdrive.car.hyundai.values import HyundaiFlags, CAR, DBC, CAN_GEARS, CAMERA_SCC_CAR, \
CANFD_CAR, Buttons, CarControllerParams
CANFD_CAR, Buttons, CarControllerParams, CAN_CANFD_HYBRID_CAR
from openpilot.selfdrive.car.interfaces import CarStateBase
PREV_BUTTON_SAMPLES = 8
@@ -27,7 +27,7 @@ class CarState(CarStateBase):
self.gear_msg_canfd = "GEAR_ALT" if CP.flags & HyundaiFlags.CANFD_ALT_GEARS else \
"GEAR_ALT_2" if CP.flags & HyundaiFlags.CANFD_ALT_GEARS_2 else \
"GEAR_SHIFTER"
if CP.carFingerprint in CANFD_CAR:
if CP.carFingerprint in (CANFD_CAR - CAN_CANFD_HYBRID_CAR):
self.shifter_values = can_define.dv[self.gear_msg_canfd]["GEAR"]
elif self.CP.carFingerprint in CAN_GEARS["use_cluster_gears"]:
self.shifter_values = can_define.dv["CLU15"]["CF_Clu_Gear"]
@@ -53,7 +53,7 @@ class CarState(CarStateBase):
self.params = CarControllerParams(CP)
def update(self, cp, cp_cam):
if self.CP.carFingerprint in CANFD_CAR:
if self.CP.carFingerprint in (CANFD_CAR - CAN_CANFD_HYBRID_CAR):
return self.update_canfd(cp, cp_cam)
ret = car.CarState.new_message()
@@ -107,11 +107,12 @@ class CarState(CarStateBase):
ret.cruiseState.standstill = False
ret.cruiseState.nonAdaptive = False
else:
ret.cruiseState.available = cp_cruise.vl["SCC11"]["MainMode_ACC"] == 1
scc_bus = "SCC12" if self.CP.flags & HyundaiFlags.CAN_CANFD_HYBRID else "SCC11"
ret.cruiseState.available = cp_cruise.vl[scc_bus]["MainMode_ACC"] == 1
ret.cruiseState.enabled = cp_cruise.vl["SCC12"]["ACCMode"] != 0
ret.cruiseState.standstill = cp_cruise.vl["SCC11"]["SCCInfoDisplay"] == 4.
ret.cruiseState.nonAdaptive = cp_cruise.vl["SCC11"]["SCCInfoDisplay"] == 2. # Shows 'Cruise Control' on dash
ret.cruiseState.speed = cp_cruise.vl["SCC11"]["VSetDis"] * speed_conv
ret.cruiseState.standstill = cp_cruise.vl[scc_bus]["SCCInfoDisplay"] == 4.
ret.cruiseState.nonAdaptive = cp_cruise.vl[scc_bus]["SCCInfoDisplay"] == 2. # Shows 'Cruise Control' on dash
ret.cruiseState.speed = cp_cruise.vl[scc_bus]["VSetDis"] * speed_conv
# TODO: Find brake pressure
ret.brake = 0
@@ -144,7 +145,7 @@ class CarState(CarStateBase):
ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(gear))
if not self.CP.openpilotLongitudinalControl:
if not self.CP.openpilotLongitudinalControl and not (self.CP.flags & HyundaiFlags.CAN_CANFD_HYBRID):
aeb_src = "FCA11" if self.CP.flags & HyundaiFlags.USE_FCA.value else "SCC12"
aeb_sig = "FCA_CmdAct" if self.CP.flags & HyundaiFlags.USE_FCA.value else "AEB_CmdAct"
aeb_warning = cp_cruise.vl[aeb_src]["CF_VSM_Warn"] != 0
@@ -158,8 +159,11 @@ class CarState(CarStateBase):
ret.rightBlindspot = cp.vl["LCA11"]["CF_Lca_IndRight"] != 0
# save the entire LKAS11 and CLU11
self.lkas11 = copy.copy(cp_cam.vl["LKAS11"])
if not self.CP.flags & HyundaiFlags.CAN_CANFD_HYBRID:
self.lkas11 = copy.copy(cp_cam.vl["LKAS11"])
self.clu11 = copy.copy(cp.vl["CLU11"])
if self.CP.flags & HyundaiFlags.CAN_CANFD_HYBRID and self.CP.flags & HyundaiFlags.CANFD_HDA2:
self.hda2_lfa_block_msg = copy.copy(cp_cam.vl["CAM_0x2a4"])
self.steer_state = cp.vl["MDPS12"]["CF_Mdps_ToiActive"] # 0 NOT ACTIVE, 1 ACTIVE
self.prev_cruise_buttons = self.cruise_buttons[-1]
self.cruise_buttons.extend(cp.vl_all["CLU11"]["CF_Clu_CruiseSwState"])
@@ -250,12 +254,12 @@ class CarState(CarStateBase):
return ret
def get_can_parser(self, CP):
if CP.carFingerprint in CANFD_CAR:
if CP.carFingerprint in (CANFD_CAR - CAN_CANFD_HYBRID_CAR):
return self.get_can_parser_canfd(CP)
messages = [
# address, frequency
("MDPS12", 50),
("MDPS12", 100 if CP.flags & HyundaiFlags.CAN_CANFD_HYBRID else 50),
("TCS11", 100),
("TCS13", 50),
("TCS15", 10),
@@ -269,16 +273,19 @@ class CarState(CarStateBase):
("SAS11", 100),
]
if not CP.openpilotLongitudinalControl and CP.carFingerprint not in CAMERA_SCC_CAR:
messages += [
("SCC11", 50),
("SCC12", 50),
]
if CP.flags & HyundaiFlags.USE_FCA.value:
messages.append(("FCA11", 50))
if not CP.openpilotLongitudinalControl:
if CP.flags & HyundaiFlags.CAN_CANFD_HYBRID:
messages.append(("SCC12", 50))
elif CP.carFingerprint not in CAMERA_SCC_CAR:
messages += [
("SCC11", 50),
("SCC12", 50),
]
if CP.flags & HyundaiFlags.USE_FCA.value:
messages.append(("FCA11", 50))
if CP.enableBsm:
messages.append(("LCA11", 50))
messages.append(("LCA11", 20 if CP.flags & HyundaiFlags.CAN_CANFD_HYBRID else 50))
if CP.flags & (HyundaiFlags.HYBRID | HyundaiFlags.EV):
messages.append(("E_EMS11", 50))
@@ -297,16 +304,20 @@ class CarState(CarStateBase):
else:
messages.append(("LVR12", 100))
return CANParser(DBC[CP.carFingerprint]["pt"], messages, 0)
bus = CanBus(CP).ECAN if CP.flags & HyundaiFlags.CAN_CANFD_HYBRID else 0
return CANParser(DBC[CP.carFingerprint]["pt"], messages, bus)
@staticmethod
def get_cam_can_parser(CP):
if CP.carFingerprint in CANFD_CAR:
if CP.carFingerprint in (CANFD_CAR - CAN_CANFD_HYBRID_CAR):
return CarState.get_cam_can_parser_canfd(CP)
messages = [
("LKAS11", 100)
]
messages = []
if CP.flags & HyundaiFlags.CAN_CANFD_HYBRID:
messages.append(("CAM_0x2a4", 20))
else:
messages.append(("LKAS11", 100))
if not CP.openpilotLongitudinalControl and CP.carFingerprint in CAMERA_SCC_CAR:
messages += [
@@ -317,7 +328,8 @@ class CarState(CarStateBase):
if CP.flags & HyundaiFlags.USE_FCA.value:
messages.append(("FCA11", 50))
return CANParser(DBC[CP.carFingerprint]["pt"], messages, 2)
bus = CanBus(CP).CAM if CP.flags & HyundaiFlags.CAN_CANFD_HYBRID else 2
return CANParser(DBC[CP.carFingerprint]["pt"], messages, bus)
def get_can_parser_canfd(self, CP):
messages = [
+17
View File
@@ -1162,4 +1162,21 @@ FW_VERSIONS = {
b'\xf1\x00US4_ RDR ----- 1.00 1.00 99110-CG000 ',
],
},
CAR.HYUNDAI_PALISADE_2023: {
(Ecu.fwdCamera, 0x7c4, None): [
b'\xf1\x00LX2 MFC AT USA LHD 1.00 1.04 99211-S8150 220622',
b'\xf1\x00ON MFC AT USA LHD 1.00 1.01 99211-S9150 220708',
b'\xf1\x00LX2 MFC AT USA LHD 1.00 1.03 99211-S8150 220527',
b'\xf1\x00ON MFC AT USA LHD 1.00 1.00 99211-S9160 230303',
b'\xf1\x00LX2 MFC AT USA LHD 1.00 1.00 99211-S8600 230317',
b'\xf1\x00LX2 MFC AT USA LHD 1.00 1.01 99211-S8600 230817',
],
(Ecu.fwdRadar, 0x7d0, None): [
b'\xf1\x00LX2_ SCC ----- 1.00 1.01 99110-S8150 ',
b'\xf1\x00ON__ SCC ----- 1.00 1.01 99110-S9150 ',
b'\xf1\x00LX2_ SCC ----- 1.00 1.00 99110-S8150 ',
b'\xf1\x00ON__ SCC ----- 1.00 1.00 99110-S9160 ',
b'\xf1\x00LX2_ SCC ----- 1.00 1.00 99110-S8600 ',
],
},
}
+2 -2
View File
@@ -95,7 +95,7 @@ def create_lkas11(packer, frame, CP, apply_steer, steer_req,
return packer.make_can_msg("LKAS11", 0, values)
def create_clu11(packer, frame, clu11, button, CP):
def create_clu11(packer, frame, clu11, button, CP, CAN):
values = {s: clu11[s] for s in [
"CF_Clu_CruiseSwState",
"CF_Clu_CruiseSwMain",
@@ -113,7 +113,7 @@ def create_clu11(packer, frame, clu11, button, CP):
values["CF_Clu_CruiseSwState"] = button
values["CF_Clu_AliveCnt1"] = frame % 0x10
# send buttons to camera on camera-scc based cars
bus = 2 if CP.flags & HyundaiFlags.CAMERA_SCC else 0
bus = 2 if CP.flags & HyundaiFlags.CAMERA_SCC else CAN.ECAN if CP.flags & HyundaiFlags.CAN_CANFD_HYBRID else 0
return packer.make_can_msg("CLU11", bus, values)
+179 -40
View File
@@ -1,5 +1,6 @@
from openpilot.common.numpy_fast import clip
from openpilot.selfdrive.car import CanBusBase
from openpilot.selfdrive.car.hyundai.hyundaican import hyundai_checksum
from openpilot.selfdrive.car.hyundai.values import HyundaiFlags
@@ -35,7 +36,10 @@ class CanBus(CanBusBase):
return self._cam
def create_steering_messages(packer, CP, CAN, enabled, lat_active, apply_steer):
def create_steering_messages(packer, CP, CAN, enabled, lat_active, apply_steer,
frame, torque_fault,
left_lane, right_lane,
left_lane_depart, right_lane_depart):
ret = []
@@ -54,7 +58,13 @@ def create_steering_messages(packer, CP, CAN, enabled, lat_active, apply_steer):
if CP.flags & HyundaiFlags.CANFD_HDA2:
hda2_lkas_msg = "LKAS_ALT" if CP.flags & HyundaiFlags.CANFD_HDA2_ALT_STEERING else "LKAS"
if CP.openpilotLongitudinalControl:
ret.append(packer.make_can_msg("LFA", CAN.ECAN, values))
if CP.flags & HyundaiFlags.CAN_CANFD_HYBRID:
ret.append(create_lkas11_can_canfd_hybrid(packer, CAN, frame, apply_steer, lat_active,
torque_fault, enabled,
left_lane, right_lane,
left_lane_depart, right_lane_depart))
else:
ret.append(packer.make_can_msg("LFA", CAN.ECAN, values))
ret.append(packer.make_can_msg(hda2_lkas_msg, CAN.ACAN, values))
else:
ret.append(packer.make_can_msg("LFA", CAN.ECAN, values))
@@ -73,6 +83,29 @@ def create_suppress_lfa(packer, CAN, hda2_lfa_block_msg, hda2_alt_steering):
values["RIGHT_LANE_LINE"] = 0
return packer.make_can_msg(suppress_msg, CAN.ACAN, values)
def create_lkas11_can_canfd_hybrid(packer, CAN, frame, apply_steer, steer_req,
torque_fault, enabled,
left_lane, right_lane,
left_lane_depart, right_lane_depart):
values = {
"CF_Lkas_LdwsLHWarning": left_lane_depart,
"CF_Lkas_LdwsRHWarning": right_lane_depart,
"CR_Lkas_StrToqReq": apply_steer,
"CF_Lkas_ActToi": steer_req,
"CF_Lkas_ToiFlt": torque_fault, # seems to allow actuation on CR_Lkas_StrToqReq
"CF_Lkas_MsgCount": frame % 0xF,
"CF_Lkas_FcwOpt_USM": 2 if enabled else 1,
"CF_Lkas_LdwsActivemode": int(left_lane) + (int(right_lane) << 1),
"NEW_SIGNAL_1": 0,
"NEW_SIGNAL_5": 100,
}
checksum = create_checksum_can_canfd_hybrid(packer, CAN, "LKAS11", values)
values["CF_Lkas_Chksum"] = checksum
return packer.make_can_msg("LKAS11", CAN.ECAN, values)
def create_buttons(packer, CP, CAN, cnt, btn):
values = {
"COUNTER": cnt,
@@ -113,12 +146,21 @@ def create_acc_cancel(packer, CP, CAN, cruise_info_copy):
})
return packer.make_can_msg("SCC_CONTROL", CAN.ECAN, values)
def create_lfahda_cluster(packer, CAN, enabled):
def create_lfahda_cluster(packer, CAN, enabled, can_canfd_hybrid):
hda_icon = "HDA_Icon_State" if can_canfd_hybrid else "HDA_ICON"
lfa_icon = "LFA_Icon_State" if can_canfd_hybrid else "LFA_ICON"
values = {
"HDA_ICON": 1 if enabled else 0,
"LFA_ICON": 2 if enabled else 0,
hda_icon: 1 if enabled and not can_canfd_hybrid else 0,
lfa_icon: 2 if enabled else 0,
}
return packer.make_can_msg("LFAHDA_CLUSTER", CAN.ECAN, values)
msg = "LFAHDA_MFC" if can_canfd_hybrid else "LFAHDA_CLUSTER"
if can_canfd_hybrid:
checksum = create_checksum_can_canfd_hybrid(packer, CAN, msg, values)
values["CHECKSUM"] = checksum
return packer.make_can_msg(msg, CAN.ECAN, values)
def create_acc_control(packer, CAN, enabled, accel_last, accel, stopping, gas_override, set_speed, hud_control):
@@ -152,6 +194,56 @@ def create_acc_control(packer, CAN, enabled, accel_last, accel, stopping, gas_ov
return packer.make_can_msg("SCC_CONTROL", CAN.ECAN, values)
def create_acc_commands_can_canfd_hybrid(packer, CAN, enabled, accel, accel_last, upper_jerk, idx, lead_visible, set_speed, stopping, long_override, hud_control):
jerk = 5
jn = jerk / 50
if not enabled or long_override:
a_val, a_raw = 0, 0
else:
a_raw = accel
a_val = clip(accel, accel_last - jn, accel_last + jn)
ret = []
msg_values = [
("SCC11", {
"aReqRaw": a_raw,
"aReqValue": a_val,
"JerkUpperLimit": upper_jerk,
"JerkLowerLimit": jerk if enabled else 1,
}),
("SCC12", {
"MainMode_ACC": 1,
"ACCMode_Inactive": 0 if enabled else 1,
"TauGapSet": hud_control.leadDistanceBars,
"VSetDis": set_speed,
"ACC_ObjDist": 1,
"ACCMode": 2 if enabled and long_override else 1 if enabled else 0,
"StopReq": 1 if stopping else 0,
}),
("SCC14", {
"ACC_ObjLatPos": 0,
"ObjValid": 0,
"ObjStatus": 0 if not lead_visible else 2 if lead_visible and enabled else 1,
}),
("FCA11", {
"BYTE4": 0xC0,
"BYTE5": 0x3F,
"BYTE6": 0x7F,
}),
]
for addr, values in msg_values:
values["COUNTER"] = idx % 0xF
checksum = create_checksum_can_canfd_hybrid(packer, CAN, addr, values)
values["CHECKSUM"] = checksum
ret.append(packer.make_can_msg(addr, CAN.ECAN, values))
return ret
def create_spas_messages(packer, CAN, frame, left_blink, right_blink):
ret = []
@@ -172,7 +264,7 @@ def create_spas_messages(packer, CAN, frame, left_blink, right_blink):
return ret
def create_adrv_messages(packer, CAN, frame):
def create_adrv_messages(packer, CAN, frame, can_canfd_hybrid):
# messages needed to car happy after disabling
# the ADAS Driving ECU to do longitudinal control
@@ -182,42 +274,89 @@ def create_adrv_messages(packer, CAN, frame):
}
ret.append(packer.make_can_msg("ADRV_0x51", CAN.ACAN, values))
if frame % 2 == 0:
values = {
'AEB_SETTING': 0x1, # show AEB disabled icon
'SET_ME_2': 0x2,
'SET_ME_FF': 0xff,
'SET_ME_FC': 0xfc,
'SET_ME_9': 0x9,
}
ret.append(packer.make_can_msg("ADRV_0x160", CAN.ECAN, values))
if not can_canfd_hybrid:
if frame % 2 == 0:
values = {
'AEB_SETTING': 0x1, # show AEB disabled icon
'SET_ME_2': 0x2,
'SET_ME_FF': 0xff,
'SET_ME_FC': 0xfc,
'SET_ME_9': 0x9,
}
ret.append(packer.make_can_msg("ADRV_0x160", CAN.ECAN, values))
if frame % 5 == 0:
values = {
'SET_ME_1C': 0x1c,
'SET_ME_FF': 0xff,
'SET_ME_TMP_F': 0xf,
'SET_ME_TMP_F_2': 0xf,
}
ret.append(packer.make_can_msg("ADRV_0x1ea", CAN.ECAN, values))
if frame % 5 == 0:
values = {
'SET_ME_1C': 0x1c,
'SET_ME_FF': 0xff,
'SET_ME_TMP_F': 0xf,
'SET_ME_TMP_F_2': 0xf,
}
ret.append(packer.make_can_msg("ADRV_0x1ea", CAN.ECAN, values))
values = {
'SET_ME_E1': 0xe1,
'SET_ME_3A': 0x3a,
}
ret.append(packer.make_can_msg("ADRV_0x200", CAN.ECAN, values))
values = {
'SET_ME_E1': 0xe1,
'SET_ME_3A': 0x3a,
}
ret.append(packer.make_can_msg("ADRV_0x200", CAN.ECAN, values))
if frame % 20 == 0:
values = {
'SET_ME_15': 0x15,
}
ret.append(packer.make_can_msg("ADRV_0x345", CAN.ECAN, values))
if frame % 20 == 0:
values = {
'SET_ME_15': 0x15,
}
ret.append(packer.make_can_msg("ADRV_0x345", CAN.ECAN, values))
if frame % 100 == 0:
values = {
'SET_ME_22': 0x22,
'SET_ME_41': 0x41,
}
ret.append(packer.make_can_msg("ADRV_0x1da", CAN.ECAN, values))
if frame % 100 == 0:
values = {
'SET_ME_22': 0x22,
'SET_ME_41': 0x41,
}
ret.append(packer.make_can_msg("ADRV_0x1da", CAN.ECAN, values))
return ret
def create_radar_aux_messages(packer, CAN, frame):
ret = []
msg_values = [
("RADAR_0x363", 2, {
"FCA_ESA": 1,
}),
("RADAR_0x398", 5, {
"BYTE4": 0x80,
"BYTE5": 0x5D,
}),
("RADAR_0x399", 5, {
"BYTE2": 0x02,
}),
("RADAR_0x39a", 5, {
"BYTE7": 0xFF,
}),
("RADAR_0x39b", 5, {
}),
("RADAR_0x39c", 5, {
"BYTE5": 0xE0,
"BYTE6": 0x79,
}),
("RADAR_0x43a", 20, {
"BYTE2": 0x07,
}),
]
for addr, freq, values in msg_values:
if frame % freq == 0:
values["COUNTER"] = frame % 0xF
checksum = create_checksum_can_canfd_hybrid(packer, CAN, addr, values)
values["CHECKSUM"] = checksum
ret.append(packer.make_can_msg(addr, CAN.ECAN, values))
return ret
def create_checksum_can_canfd_hybrid(packer, CAN, addr, values):
dat = packer.make_can_msg(addr, CAN.ECAN, values)[2]
dat = dat[1:8]
checksum = hyundai_checksum(dat)
return checksum
+43 -14
View File
@@ -3,7 +3,7 @@ from panda import Panda
from openpilot.selfdrive.car.hyundai.hyundaicanfd import CanBus
from openpilot.selfdrive.car.hyundai.values import HyundaiFlags, CAR, DBC, CANFD_CAR, CAMERA_SCC_CAR, CANFD_RADAR_SCC_CAR, \
CANFD_UNSUPPORTED_LONGITUDINAL_CAR, EV_CAR, HYBRID_CAR, LEGACY_SAFETY_MODE_CAR, \
UNSUPPORTED_LONGITUDINAL_CAR, Buttons
UNSUPPORTED_LONGITUDINAL_CAR, Buttons, CAN_CANFD_HYBRID_CAR
from openpilot.selfdrive.car.hyundai.radar_interface import RADAR_START_ADDR
from openpilot.selfdrive.car import create_button_events, get_safety_config
from openpilot.selfdrive.car.interfaces import CarInterfaceBase
@@ -32,16 +32,18 @@ class CarInterface(CarInterfaceBase):
hda2 = Ecu.adas in [fw.ecu for fw in car_fw]
CAN = CanBus(None, hda2, fingerprint)
if candidate in CANFD_CAR:
# detect HDA2 with ADAS Driving ECU
if hda2:
ret.flags |= HyundaiFlags.CANFD_HDA2.value
if candidate in (CANFD_CAR - CAN_CANFD_HYBRID_CAR):
# detect if car is hybrid
if 0x105 in fingerprint[CAN.ECAN]:
ret.flags |= HyundaiFlags.HYBRID.value
elif candidate in EV_CAR:
ret.flags |= HyundaiFlags.EV.value
# detect HDA2 with ADAS Driving ECU
if hda2:
ret.flags |= HyundaiFlags.CANFD_HDA2.value
if 0x110 in fingerprint[CAN.CAM]:
ret.flags |= HyundaiFlags.CANFD_HDA2_ALT_STEERING.value
else:
@@ -78,8 +80,21 @@ class CarInterface(CarInterfaceBase):
if candidate == CAR.KIA_OPTIMA_G4_FL:
ret.steerActuatorDelay = 0.2
if candidate == CAR.HYUNDAI_PALISADE_2023:
for fw in car_fw:
if fw.ecu == "eps":
platform_str = "HYUNDAI_PALISADE_2023_EPS_4LXPC100" if fw.fwVersion.endswith(b'4LXPC100') else \
"HYUNDAI_PALISADE_2023_EPS_2427" if fw.fwVersion.endswith(b'2427') else \
candidate
CarInterfaceBase.configure_torque_tune(platform_str, ret.lateralTuning)
if platform_str == "HYUNDAI_PALISADE_2023_EPS_2427":
# We only limit in the controller, panda safety limits apply for both Palisade HDA2 and Telluride HDA2
ret.flags |= HyundaiFlags.ALT_LIMITS.value
# *** longitudinal control ***
if candidate in CANFD_CAR:
if candidate in (CANFD_CAR - CAN_CANFD_HYBRID_CAR):
ret.experimentalLongitudinalAvailable = candidate not in (CANFD_UNSUPPORTED_LONGITUDINAL_CAR | CANFD_RADAR_SCC_CAR)
else:
ret.experimentalLongitudinalAvailable = candidate not in (UNSUPPORTED_LONGITUDINAL_CAR | CAMERA_SCC_CAR)
@@ -92,23 +107,22 @@ class CarInterface(CarInterfaceBase):
ret.startAccel = 1.0
ret.longitudinalActuatorDelay = 0.5
if ret.flags & HyundaiFlags.CAN_CANFD_HYBRID:
ret.stoppingDecelRate = 0.4
# *** feature detection ***
if candidate in CANFD_CAR:
if candidate in (CANFD_CAR - CAN_CANFD_HYBRID_CAR):
ret.enableBsm = 0x1e5 in fingerprint[CAN.ECAN]
else:
ret.enableBsm = 0x58b in fingerprint[0]
bus = CAN.ECAN if ret.flags & HyundaiFlags.CAN_CANFD_HYBRID else 0
ret.enableBsm = 0x58b in fingerprint[bus]
# *** panda safety config ***
if candidate in CANFD_CAR:
if candidate in (CANFD_CAR - CAN_CANFD_HYBRID_CAR):
cfgs = [get_safety_config(car.CarParams.SafetyModel.hyundaiCanfd), ]
if CAN.ECAN >= 4:
cfgs.insert(0, get_safety_config(car.CarParams.SafetyModel.noOutput))
ret.safetyConfigs = cfgs
if ret.flags & HyundaiFlags.CANFD_HDA2:
ret.safetyConfigs[-1].safetyParam |= Panda.FLAG_HYUNDAI_CANFD_HDA2
if ret.flags & HyundaiFlags.CANFD_HDA2_ALT_STEERING:
ret.safetyConfigs[-1].safetyParam |= Panda.FLAG_HYUNDAI_CANFD_HDA2_ALT_STEERING
if ret.flags & HyundaiFlags.CANFD_ALT_BUTTONS:
ret.safetyConfigs[-1].safetyParam |= Panda.FLAG_HYUNDAI_CANFD_ALT_BUTTONS
if ret.flags & HyundaiFlags.CANFD_CAMERA_SCC:
@@ -118,11 +132,22 @@ class CarInterface(CarInterfaceBase):
# these cars require a special panda safety mode due to missing counters and checksums in the messages
ret.safetyConfigs = [get_safety_config(car.CarParams.SafetyModel.hyundaiLegacy)]
else:
ret.safetyConfigs = [get_safety_config(car.CarParams.SafetyModel.hyundai, 0)]
cfgs = [get_safety_config(car.CarParams.SafetyModel.hyundai), ]
if CAN.ECAN >= 4:
cfgs.insert(0, get_safety_config(car.CarParams.SafetyModel.noOutput))
ret.safetyConfigs = cfgs
if ret.flags & HyundaiFlags.CAN_CANFD_HYBRID:
ret.safetyConfigs[-1].safetyParam |= Panda.FLAG_HYUNDAI_CAN_CANFD_HYBRID
if candidate in CAMERA_SCC_CAR:
ret.safetyConfigs[0].safetyParam |= Panda.FLAG_HYUNDAI_CAMERA_SCC
# these flags apply to both CANFD_CAR and CAN_CANFD_HYBRID_CAR platforms
if ret.flags & HyundaiFlags.CANFD_HDA2:
ret.safetyConfigs[-1].safetyParam |= Panda.FLAG_HYUNDAI_CANFD_HDA2
if ret.flags & HyundaiFlags.CANFD_HDA2_ALT_STEERING:
ret.safetyConfigs[-1].safetyParam |= Panda.FLAG_HYUNDAI_CANFD_HDA2_ALT_STEERING
if ret.openpilotLongitudinalControl:
ret.safetyConfigs[-1].safetyParam |= Panda.FLAG_HYUNDAI_LONG
if ret.flags & HyundaiFlags.HYBRID:
@@ -136,6 +161,10 @@ class CarInterface(CarInterfaceBase):
ret.centerToFront = ret.wheelbase * 0.4
# FIXME: Non-HDA2 2023-24 Hyundai Palisade / Kia Telluride is disabled in this branch;
# The non-HDA2 variant is supported in another PR: https://github.com/commaai/openpilot/pull/27478
ret.dashcamOnly |= candidate in (CAR.HYUNDAI_PALISADE_2023, ) and not hda2
return ret
@staticmethod
+22 -5
View File
@@ -25,7 +25,7 @@ class CarControllerParams:
self.STEER_THRESHOLD = 150
self.STEER_STEP = 1 # 100 Hz
if CP.carFingerprint in CANFD_CAR:
if CP.carFingerprint in (CANFD_CAR - CAN_CANFD_HYBRID_CAR):
self.STEER_MAX = 270
self.STEER_DRIVER_ALLOWANCE = 250
self.STEER_DRIVER_MULTIPLIER = 2
@@ -41,14 +41,16 @@ class CarControllerParams:
self.STEER_MAX = 255
# these cars have significantly more torque than most HKG; limit to 70% of max
elif CP.flags & HyundaiFlags.ALT_LIMITS:
elif CP.flags & HyundaiFlags.ALT_LIMITS and CP.carFingerprint not in CAN_CANFD_HYBRID_CAR:
self.STEER_MAX = 270
self.STEER_DELTA_UP = 2
self.STEER_DELTA_DOWN = 3
# Default for most HKG
else:
self.STEER_MAX = 384
self.STEER_MAX = 330 if CP.flags & HyundaiFlags.ALT_LIMITS else 384
self.STEER_DELTA_UP = 2 if CP.flags & HyundaiFlags.ALT_LIMITS else 3
self.STEER_DELTA_DOWN = 3 if CP.flags & HyundaiFlags.ALT_LIMITS else 7
class HyundaiFlags(IntFlag):
@@ -95,6 +97,9 @@ class HyundaiFlags(IntFlag):
MIN_STEER_32_MPH = 2 ** 23
# CAN CAN-FD hybrid architecture
CAN_CANFD_HYBRID = 2 ** 24
class Footnote(Enum):
CANFD = CarFootnote(
@@ -126,11 +131,14 @@ class HyundaiPlatformConfig(PlatformConfig):
@dataclass
class HyundaiCanFDPlatformConfig(PlatformConfig):
dbc_dict: DbcDict = field(default_factory=lambda: dbc_dict("hyundai_canfd", None))
dbc_dict: DbcDict = field(default_factory=lambda: dbc_dict("hyundai_canfd_generated", None))
def init(self):
self.flags |= HyundaiFlags.CANFD
if self.flags & HyundaiFlags.CAN_CANFD_HYBRID:
self.dbc_dict = dbc_dict('hyundai_palisade_2023_generated', None)
class CAR(Platforms):
# Hyundai
@@ -294,6 +302,14 @@ class CAR(Platforms):
CarSpecs(mass=1999, wheelbase=2.9, steerRatio=15.6 * 1.15, tireStiffnessFactor=0.63),
flags=HyundaiFlags.MANDO_RADAR | HyundaiFlags.CHECKSUM_CRC8,
)
HYUNDAI_PALISADE_2023 = HyundaiCanFDPlatformConfig(
[
HyundaiCarDocs("Hyundai Palisade (with HDA II) 2023-24", "All", car_parts=CarParts.common([CarHarness.hyundai_r])),
HyundaiCarDocs("Kia Telluride (with HDA II) 2023-24", "All", car_parts=CarParts.common([CarHarness.hyundai_p])),
],
HYUNDAI_PALISADE.specs,
flags=HyundaiFlags.CHECKSUM_CRC8 | HyundaiFlags.CAN_CANFD_HYBRID | HyundaiFlags.RADAR_SCC,
)
HYUNDAI_VELOSTER = HyundaiPlatformConfig(
[HyundaiCarDocs("Hyundai Veloster 2019-20", min_enable_speed=5. * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_e]))],
CarSpecs(mass=2917 * CV.LB_TO_KG, wheelbase=2.8, steerRatio=13.75 * 1.15, tireStiffnessFactor=0.5),
@@ -573,7 +589,7 @@ def match_fw_to_car_fuzzy(live_fw_versions, vin, offline_fw_versions) -> set[str
# Non-electric CAN FD platforms often do not have platform code specifiers needed
# to distinguish between hybrid and ICE. All EVs so far are either exclusively
# electric or specify electric in the platform code.
fuzzy_platform_blacklist = {str(c) for c in (CANFD_CAR - EV_CAR - CANFD_FUZZY_WHITELIST)}
fuzzy_platform_blacklist = {str(c) for c in (CANFD_CAR - CAN_CANFD_HYBRID_CAR - EV_CAR - CANFD_FUZZY_WHITELIST)}
candidates: set[str] = set()
for candidate, fws in offline_fw_versions.items():
@@ -732,6 +748,7 @@ CAN_GEARS = {
CANFD_CAR = CAR.with_flags(HyundaiFlags.CANFD)
CANFD_RADAR_SCC_CAR = CAR.with_flags(HyundaiFlags.RADAR_SCC)
CAN_CANFD_HYBRID_CAR = CAR.with_flags(HyundaiFlags.CAN_CANFD_HYBRID)
# These CAN FD cars do not accept communication control to disable the ADAS ECU,
# responds with 0x7F2822 - 'conditions not correct'
+1
View File
@@ -131,6 +131,7 @@ routes = [
CarTestRoute("fc19648042eb6896|2023-08-16--11-43-27", HYUNDAI.KIA_SORENTO_HEV_4TH_GEN, segment=14),
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("696748e0ac8082fb|2023-08-31--14-25-28", HYUNDAI.HYUNDAI_PALISADE_2023), # HDA2
CarTestRoute("05a8f0197fdac372|2022-10-19--14-14-09", HYUNDAI.HYUNDAI_IONIQ_5), # HDA2
CarTestRoute("eb4eae1476647463|2023-08-26--18-07-04", HYUNDAI.HYUNDAI_IONIQ_6, segment=6), # HDA2
CarTestRoute("3f29334d6134fcd4|2022-03-30--22-00-50", HYUNDAI.HYUNDAI_IONIQ_PHEV_2019),
+3
View File
@@ -68,6 +68,9 @@ legend = ["LAT_ACCEL_FACTOR", "MAX_LAT_ACCEL_MEASURED", "FRICTION"]
"HYUNDAI_CUSTIN_1ST_GEN" = [2.5, 2.5, 0.1]
"LEXUS_GS_F" = [2.5, 2.5, 0.08]
"HYUNDAI_STARIA_4TH_GEN" = [1.8, 2.0, 0.15]
"HYUNDAI_PALISADE_2023" = [2.32, 2.32, 0.05]
"HYUNDAI_PALISADE_2023_EPS_4LXPC100" = [2.32, 2.32, 0.1]
"HYUNDAI_PALISADE_2023_EPS_2427" = [2.5, 2.32, 0.1]
# Dashcam or fallback configured as ideal car
"MOCK" = [10.0, 10, 0.0]