* 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
* just Enhanced Lat Accel only
* no submodule for this
* Enhanced Lateral Acceleration: fix bugs, restore NNLC, add UI/schema
Fix 4 bugs in latcontrol_torque_lat_accel.py: missing CI param, wrong
method name (torque_from_lateral_accel → torque_from_lateral_accel_in_torque_space),
self.enabled collision with NNLC, missing output torque recomputation.
Restore NNLC + ExtOverride inheritance chain with Enhanced slotted between
ExtBase and NNLC. Add mutual exclusion constraints, Python UI toggle,
sunnylink schema entries, and controller init/update tests.
* fix lint: remove unused default params list, add ty ignore, fix test fixture
* use the og name
* rename
* need gates
* TODOs
* wrong
* gate them all on init
---------
Co-authored-by: DevTekVE <devtekve@gmail.com>
* [mici] ui: fix swipe-down in sunnylink and models panels
* update mici replay test
* [mici] ui: push model sub-views as separate widgets for correct back navigation
* modeld_v2: safe model validation
* fix string
* numpy
* dumb
* god use full attribute names please
* modeld_v2: refactor compile_modeld
* redundant
* CREAM AND SUGAR
* gpu stuffs
* Update fetcher.py
* Update compile_modeld.py
* Update compile_modeld.py
* Update compile_modeld.py
* Update compile_modeld.py
* summary
* Update compile_modeld.py
* Update compile_modeld.py
* Update compile_modeld.py
* i could lie say
* needed
* i could
* Update compile_modeld.py
* done done done
* bye metadata
* simplify
* deeeeep
* oopsie
* i don't know what i'm doing
* it's a supercombo
* wtf. ghostwriter
* i might be blind
* fuck. i AM blind. or dumb. or both.
* hmmmm
* read/open - what's the difference
* realize. that i don't know shit
* whatever
* fix paths
* fuckit. dynamic everything.
* simplify everything.
* fix macos cabana
* np.random.seed is deprecated, use Generator or default rng instead @nayan
* this is annoying me
* too much fluff
* no
* lint be crazy now, man i've been away a while
* back
* fix pkl loader test
* that comment was wrong, its still per model, just compiled at with the input/output shapes
* fix chunking
* dump and assign to cpu
* prev_feat in cpu to prevent corruption
* add todo-sp
* desire me?
* allow legacy
* lint
* shapey
* bye
---------
Co-authored-by: discountchubbs <alexgrant990@gmail.com>
Co-authored-by: James Vecellio-Grant <159560811+Discountchubbs@users.noreply.github.com>
Co-authored-by: Jason Wen <haibin.wen3@gmail.com>
* Tesla: MADS Screen Button Settings
Adds a Tesla vehicle setting (vehicle bus required) to control how many
fingers activate the MADS screen button, or disable it entirely.
Rebased onto current master:
- Migrated the setting metadata from the deprecated params_metadata.json
(removed in #1862) to the yaml SDUI system: added TeslaMadsScreenButton
to settings_ui_src/pages/vehicle.yaml and recompiled settings_ui.json.
Vehicle-bus gating uses the tesla_has_vehicle_bus capability visibility.
- Bumped opendbc_repo to the latest head of sunnypilot/opendbc#459.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JiSH2KAAueUmDe29xvpuAd
* bump
* Tesla: address MADS Screen Activation review feedback
Default TeslaMadsScreenButton to Off for fresh installs and add a param
migration that seeds existing Tesla installs with 3-Finger, preserving the
previous always-on behaviour. Brand resolves from CarPlatformBundle, falling
back to CarParamsPersistent so auto-fingerprinted Teslas are covered too.
Rename the setting to "MADS Screen Activation", hyphenate the finger-count
labels, and reword the description to use <br> (descriptions render as HTML)
with a note that a higher finger count may reduce accidental activations.
Applied both on-device and in sunnylink.
Also fix test_tesla_with_vehicle_bus_uses_param, which broke once
get_mads_limited_brands started reading TeslaMadsScreenButton from the same
blanket params mock, and add coverage for the screen-button-Off path.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01X5icDp7zZ49gpyC2mpCfF1
* bump opendbc
---------
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Co-authored-by: Jason Wen <haibin.wen3@gmail.com>