Commit Graph

1163 Commits

Author SHA1 Message Date
infiniteCable2 eaa985f49e Merge branch 'master-new' of https://github.com/sunnypilot/sunnypilot into master-new 2025-04-13 20:51:07 +02:00
Jason Wen 43eefed514 Hyundai longitudinal: Parse lead info for camera-based SCC platforms (#809)
* Hyundai longitudinal: Parse lead info for camera-based SCC platforms

* fix

* update

* bump

* update tests

* lol why is this here

* bump

---------

Co-authored-by: DevTekVE <devtekve@gmail.com>
Co-authored-by: Discountchubbs <159560811+Discountchubbs@users.noreply.github.com>
2025-04-12 12:22:42 -04:00
infiniteCable a6e236a3f9 Update disturbance_controller.py 2025-04-12 09:04:26 +02:00
infiniteCable 0f9270547c Update controlsd.py 2025-04-11 23:33:23 +02:00
Jason Wen 6a00ac9cd0 Radard: vision-based yRel for Hyundai single-lead systems (#805)
Introduced processing for custom yRel values using HyundaiFlagsSP when the enhanced SCC flag is enabled. Updated `radard` to handle `CarParamsSP` and make necessary adjustments for Hyundai vehicles with specific SCC configurations.
2025-04-11 14:28:59 -04:00
infiniteCable 0d51d6c475 Update controlsd.py 2025-04-11 19:36:22 +02:00
infiniteCable c4a23447da Update disturbance_controller.py 2025-04-10 23:00:58 +02:00
infiniteCable2 1152450921 Update controlsd.py 2025-04-10 19:59:54 +02:00
infiniteCable2 b97d8645fe Revert "Delete selfdrive/controls/lib/disturbance_controller.py"
This reverts commit ae3eb9e286.
2025-04-10 19:59:06 +02:00
infiniteCable2 a4f07b065f Revert "Update controlsd.py"
This reverts commit a756987ca1.
2025-04-10 19:58:57 +02:00
infiniteCable a756987ca1 Update controlsd.py 2025-04-08 21:00:55 +02:00
infiniteCable ae3eb9e286 Delete selfdrive/controls/lib/disturbance_controller.py 2025-04-08 20:57:50 +02:00
infiniteCable 9805282780 Update controlsd.py 2025-04-08 20:16:23 +02:00
infiniteCable 2287d96630 Update disturbance_controller.py 2025-04-08 20:15:43 +02:00
infiniteCable 53a917f897 Update disturbance_controller.py 2025-04-07 21:22:57 +02:00
infiniteCable e6baa56786 Update controlsd.py 2025-04-07 21:22:28 +02:00
infiniteCable f16af32459 Update controlsd.py 2025-04-07 21:21:36 +02:00
infiniteCable 7f16a23c3e Update disturbance_controller.py 2025-04-07 21:20:46 +02:00
infiniteCable 2c1b29b63a Update controlsd.py 2025-04-07 19:50:47 +02:00
infiniteCable 6150cac462 Update disturbance_controller.py use import 2025-04-07 19:27:15 +02:00
infiniteCable 03c5f895a0 Update controlsd.py disturbance correction without passing through/affecting whole desired curvature 2025-04-07 18:51:14 +02:00
infiniteCable 5bf4451692 Update disturbance_controller.py 2025-04-07 18:49:24 +02:00
infiniteCable2 602f7286ca Update controlsd.py 2025-04-07 17:05:21 +02:00
infiniteCable 1c23787d6e Update disturbance_controller.py 2025-04-06 19:12:46 +02:00
infiniteCable2 d50ac6dafb Update disturbance_controller.py 2025-04-06 19:05:09 +02:00
infiniteCable2 5f2eef4a6a Update controlsd.py 2025-04-06 19:02:27 +02:00
infiniteCable 49ca3a2224 Update disturbance_controller.py 2025-04-06 18:44:29 +02:00
infiniteCable2 d8928db914 Update disturbance_controller.py 2025-04-06 18:35:13 +02:00
infiniteCable2 bf61b257d2 Update disturbance_controller.py 2025-04-06 18:33:37 +02:00
infiniteCable2 298b2f677c Update controlsd.py 2025-04-06 18:11:50 +02:00
infiniteCable2 e6f6857a98 Update disturbance_controller.py 2025-04-06 18:11:10 +02:00
infiniteCable2 27ba51decf Update disturbance_controller.py 2025-04-06 18:08:53 +02:00
infiniteCable2 45f74f695a Update controlsd.py 2025-04-06 18:03:30 +02:00
infiniteCable2 26ee33bffd Update disturbance_controller.py 2025-04-06 18:02:43 +02:00
infiniteCable2 52030b5f76 Update controlsd.py 2025-04-06 17:57:45 +02:00
infiniteCable2 0e0321ae2f Update disturbance_controller.py 2025-04-06 17:55:54 +02:00
infiniteCable2 8c77ceb2b8 Update controlsd.py 2025-04-06 17:14:58 +02:00
infiniteCable2 d926dbd88d Update controlsd.py 2025-04-06 16:59:17 +02:00
infiniteCable2 fcb392a22c Update controlsd.py 2025-04-06 16:51:10 +02:00
infiniteCable2 8789ddb995 Update controlsd.py 2025-04-06 16:39:15 +02:00
infiniteCable2 f96483e11c Create disturbance_controller.py 2025-04-06 16:29:52 +02:00
infiniteCable 5d56f45e81 Update longitudinal_planner.py 2025-04-06 14:50:05 +02:00
infiniteCable 9a0b4fd155 Update controlsd.py 2025-04-06 14:48:29 +02:00
Jason Wen 9dba62e686 Merge branch 'upstream/openpilot/master' into sync-20250403
# Conflicts:
#	.github/workflows/auto_pr_review.yaml
#	.github/workflows/selfdrive_tests.yaml
#	.github/workflows/ui_preview.yaml
#	msgq_repo
#	opendbc_repo
#	panda
#	selfdrive/controls/controlsd.py
2025-04-03 21:53:04 -04:00
Discountchubbs 63ba5e864f car: abstract sunnypilot interfaces (#721)
* Method abstracting radar tracks in interfaces.py This makes the code more maintainable for future implementations to this file

* Method abstracting radar tracks in interfaces.py This makes the code more maintainable for future implementations to this file

* Add type annotation to params in initialize_car_interface_sp

* rename

* just internal

---------

Co-authored-by: DevTekVE <devtekve@gmail.com>
Co-authored-by: Jason Wen <haibin.wen3@gmail.com>
2025-03-30 02:45:15 +00:00
Shane Smiskol a2859090d8 controls: reset desired curvature while disabled (#34943)
* reset curvature while disabled

* comment

* duplicate line

* fix possible iso violation because it was unlimited while disengaged

* rename so you can't accidentally use

* update refs
2025-03-26 22:41:26 -07:00
Adeeb Shihadeh ea4554526e Keep steering active at standstill (#34918)
* Keep steering active at standstill

* bump opendbc

* bump opendbc

* update refs
2025-03-25 14:00:24 -07:00
Kumar 34bbdf4d7f Controls: Automatic lane change (#653)
* init alc controller

* only for sunny

* rebase fix

* ui

* add ui preview

* Update common/params_keys.h

Co-authored-by: Jason Wen <haibin.wen3@gmail.com>

* Update selfdrive/ui/sunnypilot/SConscript

Co-authored-by: Jason Wen <haibin.wen3@gmail.com>

* Update selfdrive/ui/sunnypilot/qt/offroad/settings/lateral/lane_change_settings.h

Co-authored-by: Jason Wen <haibin.wen3@gmail.com>

* Update selfdrive/ui/sunnypilot/qt/offroad/settings/lateral/lane_change_settings.cc

Co-authored-by: Jason Wen <haibin.wen3@gmail.com>

* review sugg

* code review

* renaming

* move around

* style

* fix types and params exceptions handling

* take out magic numbers

* more

* rename

* shorter

* make sure reset happens at the end of every DH loop

* split into multiple updates

* just 3 seconds

* use default states

* oops

* more readable

* oops

* some space and lines

* run in DH loop directly

* adjust ui preview

* nudgeless should process immediately

* check option instead

* more explicit

* even more explicit

* tests

* brake pedal release should not allow auto lane change (caught by test)

* unnecessary

* no continuous auto lane change

* Revert "unnecessary"

This reverts commit 93d135b54a812e94d23951ca8ea52ff944cfd29a.

* more tests

* less

* less less

* update again

* more cleanup

* better

* AutoLaneChangeState -> AutoLaneChangeMode

* update

* lint

* unused

* test all states

* license

---------

Co-authored-by: Jason Wen <haibin.wen3@gmail.com>
2025-03-24 22:26:48 -04:00
Jason Wen 309304a352 Controls: Neural Network Lateral Control (NNLC) for Torque Lateral Accel Control (#695)
* init

* more init

* keep it alive

* fixes

* more fixes

* more fix

* new submodule for nn data

* bump submodule

* update path to submodule

* spacing???

* update submodule path

* update submodule path

* bump

* dump

* bump

* introduce params

* Add Neural Network Lateral Control toggle to developer panel

This introduces a new toggle for enabling Neural Network Lateral Control (NNLC), providing detailed descriptions of its functionality and compatibility. It includes UI integration, car compatibility checks, and feedback links for unsupported vehicles.

* decouple even more

* static

* codespell

* remove debug

* in structs

* fix import

* convert to capnp

* fixes

* debug

* only initialize if NNLC is enabled or allow to enable

* oops

* fix initialization

* only allow engage if nnlc is off

* fix toggle param

* fix tests

* lint

* fix more test

* capnp test

* try this out

* validate if it's not None

* make it 33 to match

* align

* share the same friction input calculation

* return stock values if not enabled

* unused

* split base and child

* space

* rename

* NeuralNetworkFeedForwardModel

* less

* just use file name

* try this

* more explicit

* rename

* move it

* child class for additional controllers

* rename

* time to split out custom lateral acceleration

* move around

* space

* fix

* TODO-SP

* TODO-SP

* update regardless, it's an extension now

* update name and expose toggle

* ui: sunnypilot Panel -> Steering Panel

* Update selfdrive/ui/sunnypilot/qt/offroad/settings/lateral_panel.h

* merge

* move to steering panel

* no need for this

* live params in a thread

* no live for now

* new structs

* more ui

* more flexible

* more ui

* no longer needed

* another ui

* cereal changes

* bump opendbc

* simplify checks

* all in one place

* split Enhanced Lat Accel

* handle unrecognized platform

* test for fingerprinting

* fix fingerprint

* NNLC: Mock data for unrecognized cars

* fix fingerprints

* test to verify model loading

* bump neural_network_data

* use pytest

* use different one for now

* fix ui preview alignments

* typing

* more type

* show a platform

* show match

* init params for tests

* ok ruff

* make sure to loop through tests

* ok again ruff

* ok we need this lol

---------

Co-authored-by: DevTekVE <devtekve@gmail.com>
2025-03-22 09:40:29 -04:00
Jason Wen d21e351003 Controls: Lateral Accel Torque Control Extension (#690)
* init

* more init

* keep it alive

* fixes

* more fixes

* more fix

* new submodule for nn data

* bump submodule

* update path to submodule

* spacing???

* update submodule path

* update submodule path

* bump

* dump

* bump

* introduce params

* Add Neural Network Lateral Control toggle to developer panel

This introduces a new toggle for enabling Neural Network Lateral Control (NNLC), providing detailed descriptions of its functionality and compatibility. It includes UI integration, car compatibility checks, and feedback links for unsupported vehicles.

* decouple even more

* static

* codespell

* remove debug

* in structs

* fix import

* convert to capnp

* fixes

* debug

* only initialize if NNLC is enabled or allow to enable

* oops

* fix initialization

* only allow engage if nnlc is off

* fix toggle param

* fix tests

* lint

* fix more test

* capnp test

* try this out

* validate if it's not None

* make it 33 to match

* align

* share the same friction input calculation

* return stock values if not enabled

* unused

* split base and child

* space

* rename

* NeuralNetworkFeedForwardModel

* less

* just use file name

* try this

* more explicit

* rename

* move it

* child class for additional controllers

* rename

* time to split out custom lateral acceleration

* move around

* space

* fix

* TODO-SP

* TODO-SP

* split nnlc and custom lat accel

* more

* not yet

* comment

* fix

---------

Co-authored-by: DevTekVE <devtekve@gmail.com>
2025-03-20 16:01:08 -04:00