Separate holding demand, bounded pose feedback, and nominal coefficient allocation. Add a default-off Sunnylink selector with startup diagnostics and preserve the existing controller when disabled.
Assisted-by: Codex
Road testing showed the endpoint-constrained C0/C1 pair opposed the requested rotation and delivered less than half the needed authority. Restore the prior same-direction fast-path encoder.
Assisted-by: Codex
* models: dual-slot backend (qcom/usbgpu) with ref-based downloads
* models: restore get_active_source and the usbgpu-to-qcom fallback
* models: fix per-slot validation and cap mismatched-source refetches
* ui/models: select models by ref and seed the usbgpu slot on migration
* models: drop defensive attribute guards on capnp bundles
* models: remove vestigial fetcher state and dead fallbacks
* models: resolve the active bundle from the active source slot only
* models: pass the usbgpu kwarg through the modeld test stubs
* models: resolve the displayed model from the active slot in ui_state
* models: correct the validation memo type hint
* models: drop docstrings that restate the function name
---------
Co-authored-by: Jason Wen <haibin.wen3@gmail.com>
* modeld_v2: Support eGpu
* bump tg
* egpu
* no pkls please
* god no onnx either
* fix test
* done in build model now
* lint
* rip
* egpu ready build all split
* manual seed , reuse memory buffers across runs
* dont download big when we dont have big lol
* whoops
* no i and x
* cd
* who put those there. ??
* reduce flakiness by using artifact-name from build-model to regex, speed up pub b y checking the name before trying to clone and publish again
* try hf as a trusted publisher :)
* mf its a dataaset. i knew that
* fucking validation wants raw to fetch and full to push. grr
* smh
* dude i am missing so much
* pkl name
* move build all to hf
* tests: migrate sunnypilot tests to unittest and remove pytest
* red diff mf
* im scared , this may be a bad idea lol
* fetch latest commit.
* transition to requests
* models: use requests instead of aiohttp
* tici
* fix
* gpu fixes from upstream
* lint
* bump
* needed to say
* old
* how??
* epgu flag reduce
* this made me cry
* support monolith still
* precache warp in legacy
* Move jsons to param for sunnylink
---------
Co-authored-by: Jason Wen <haibin.wen3@gmail.com>
* relc
* so picky
* clean up
* switch to distance based
* same calls
* all you brother i'm just here to red diff
---------
Co-authored-by: Jason Wen <haibin.wen3@gmail.com>
* 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>
* Process eSIM notifications after profile operations
* Clarify sleep purpose after operation in execute_and_process_notifications
Added comment to clarify the purpose of the sleep.
* chestnut: production flasher with ROM bootloader recovery
* hardwared: flash chestnut firmware offroad
* comments
* single FW version
* hardwared: fix chestnut flasher path
* chestnut: update firmware to 1d368808
* hardwared: log the flasher output
* comment
* hardwared: flash in a thread
* match panda flashing style
* fix
* chestnut: defer signals and harden the flasher
* chestnut: detect bootloader mode and retry
* comments
* chestnut: name the config dir for its content
* chestnut: name the ROM bootloader consistently
* chestnut: clearer name for the device lookup
* chestnut: spell out the low level names
* chestnut: claim the interface, not the device