Commit Graph

115 Commits

Author SHA1 Message Date
comma 170253de81 port USB black panda (DOS/F4) support: pandad USB comms, python lib, F4 firmware 2026-08-28 09:02:11 +08:00
Comma Device 5e0748d5f7 ui: add zh-CHS translations for model selector (#1953)
Adds Chinese translations for the new dual-slot model menu strings:
Small Model / Big Model / Model Status, download/verify status labels,
and the big-model failover notes.
2026-08-27 21:33:09 +08:00
Nayan d9ddf6e3a2 models: Model Selector upgrades (#1953)
* uh, i did not commit anything all this time

* slideee to the left, cha cha

* lint lint

* ui: unify model source predicate and per-source bundle lookup in model_info

* [TIZI/TICI] ui: disable the other-model row onroad like the active row

* [TIZI/TICI] ui: drop docstring that restates the function name

* [TIZI/TICI] ui: keep Favorites as the first model folder in the picker

* ui: record why model names read the params slots and not modelManagerSP

* ui: show the default model's name on the picker Default entries

* models: bind a download to its ref so cancel and reselect work everywhere

* models: resume partial chunked downloads and verify silently

* models: publish a verifying status so cached checks read as verification, not a stuck download

* [TIZI/TICI] ui: move download status onto each model's own row

* [TIZI/TICI] ui: show the row status description while it has text

* [TIZI/TICI] ui: restore the Model Status bar row

* models: a cancel interrupts verification immediately and keeps on-disk chunks

* models: a selection made mid-download queues instead of cancelling the transfer

* [TIZI/TICI] ui: Model Status shows both slots idle and the queued pick while busy

* [TIZI/TICI] ui: label the Model Status slots small and big and scroll long names

* models: start a queued download in the same tick and label empty slots (Default)

* ui: scroll Model Status names at the corrected speed

* [TIZI/TICI] ui: Model Status shows the big model failing over to small

* [TIZI/TICI] ui: stable model rows and a runner-matched failover note on Model Status

* [TIZI/TICI] ui: model rows show full names and the failover note reopens with the page

* ui: name the actually driving model runner-matched and bring mici to state parity

* fix ugly

---------

Co-authored-by: Jason Wen <haibin.wen3@gmail.com>
Co-authored-by: James Vecellio-Grant <159560811+Discountchubbs@users.noreply.github.com>
2026-08-27 16:29:13 +08:00
Comma Device ae73b54d96 Rebuild libparams_c.so for #1966 dual-slot model params
#1966 changes ModelManager params: drops DownloadIndex and the PrevBundle
keys, adds DownloadRef and ActiveBundleUSBGPU, and switches ActiveJson to
JSON type. Rebuild the params C library so the new keys work on-device
without a rebuild.
2026-08-26 17:24:46 +08:00
Nayan e158ef7e22 models: dual-slot backend (qcom/usbgpu) with ref-based downloads (#1966)
* 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>
2026-08-26 17:23:34 +08:00
Jason Wen 74f9dd400a ui: use full big model failure detection for sidebar and home eGPU icons (#1969) 2026-08-26 11:39:17 +08:00
Jason Wen 9d85823109 [TIZI/TICI] sidebar: show eGPU icon when chestnut is present (#1968)
* [tizi/tici] sidebar: show eGPU icon when chestnut is present

* matchy match

* fix
2026-08-26 11:39:13 +08:00
Jason Wen b9c0c73070 ui: fix scrolling label speed at non-60fps refresh rates (#1967)
* ui: fix scrolling label speed at non-60fps refresh rates

* send it

* nope

* more
2026-08-26 11:39:10 +08:00
Comma Device 4ceb7628b6 volkswagen: tune Avoid EPS Lockout for sharp 90+ degree turns
Extend the low-speed torque scaling from 4 m/s to 8 m/s and add steering
angle-based scaling (further reduction above 50 deg wheel angle) so the EPS
does not reject HCA on sharp 90+ degree turns taken at speed. Lower the
standstill torque floor from 80% to 60% and use a stronger torque dither
(3 units vs 1) when the toggle is on, to reset the EPS stuck-torque
protection timer.
2026-08-25 20:45:06 +08:00
Comma Device f07b8db86a Rebuild libparams_c.so for new ModelManager params (#1960)
Cherry-picked #1960 adds ModelManager_PrevBundle and
ModelManager_PrevBundle_USBGPU to params_keys.h, so rebuild the params C
library so the new keys are usable on-device without a rebuild.
2026-08-25 16:57:11 +08:00
Jason Wen 1f62c6c367 models: persist model selection per catalog across chestnut state changes (#1960) 2026-08-25 16:56:01 +08:00
Jason Wen 4d78e22c1d models: fix current model not updating on chestnut status (#1959)
* models: preserve user model selection across reboots and power cycles

* no

* again

* idk

* over
2026-08-25 16:56:01 +08:00
Jason Wen f7d8e09a63 ui/models: handle missing files during cache size calculation (#1958) 2026-08-25 16:56:01 +08:00
Comma Device aa1716d404 volkswagen: add Avoid EPS Lockout toggle (port from dragonpilot)
Adds a VW-brand toggle that scales steering torque down at low speeds
(vEgo 0.4 -> 80%, 3.5 -> 95%, >=4.0 -> 100% of STEER_MAX) to avoid EPS
lockout. Ported from dragonpilot (dp_vag_avoid_eps_lockout) following the
sunnypilot brand-params pattern: VagAvoidEPSLockout param -> VolkswagenFlagsSP
-> VW carcontroller. Default off; requires an onroad cycle to take effect.
2026-08-25 12:06:59 +08:00
Comma Device b061d88cfa panda: add GM ignition-over-CAN detection on bus 2 (SystemPowerMode 0x1F1)
FrogPilot handles the GM SystemPowerMode message on both bus 0 and bus 2
(SDGM cars send it on bus 2). C3XL-dev only checked bus 0, so GM cars with
0x1F1 on bus 2 never set ignition_can and the device would not auto power-on.
Mirror FrogPilot: check 0x1F1 on bus 2 as well, keep other exceptions bus-0 only.
2026-08-25 11:41:31 +08:00
Comma Device 22191a156d ui: four-state eGPU icon for non-default big models (PR-1945) 2026-08-24 18:49:18 +08:00
Comma Device c78a1a3748 models: use less strict chestnut detection state (#1948) 2026-08-24 18:48:51 +08:00
Comma Device b1a25ba41d modeld_v2: spatial features — apply latest upstream simplification (remove reshape conditional) 2026-08-24 09:12:31 +08:00
Comma Device d0bdbd0792 models: show big model list when Chestnut present (#1943) 2026-08-24 09:11:30 +08:00
Comma Device b8cd2a6808 modeld_v2: spatial features (PR-1934) latest; model list to v21/v22 2026-08-24 08:43:50 +08:00
Comma Device a69b5cc4f0 models: fix sunnylink default model display and false big model re-downloading (#1941) 2026-08-24 08:42:51 +08:00
Comma Device 90a4446f7c ui: remove calibration reset dialog on model change (#1942) 2026-08-24 08:42:44 +08:00
Comma Device 35a5d6ac60 ci: fix flaky LLK test (#1940) 2026-08-24 08:42:37 +08:00
Comma Device 6a20e9537c ui: fix path width during gas and steering override (#1938) 2026-08-24 08:42:20 +08:00
Comma Device 138a3a5304 alerts: add branch metadata to chestnut offroad warning (#1936) 2026-08-24 08:42:13 +08:00
Comma Device 0179e2cf64 Fix button label widths (#38680) 2026-08-24 08:41:57 +08:00
Comma Device 879dfacca0 params: remove livestream param on ignition (#38679) 2026-08-24 08:41:42 +08:00
Comma Device 83d141196c webrtcd: more descriptive errors (#38677) 2026-08-24 08:40:39 +08:00
Comma Device b4e7dcd2f5 webrtcd/athenad: we do not have to fail on no car params (#38678) 2026-08-24 08:40:32 +08:00
Comma Device 497e2efeae webrtc: fix message handler race (#38675) 2026-08-24 08:40:25 +08:00
Comma Device d184f6a43d webrtcd: cloud logging (#38674) 2026-08-24 08:40:18 +08:00
Comma Device 74b3d0bed9 Re-open agnos updater UI if crash (#38672) 2026-08-24 08:40:11 +08:00
Comma Device 4055d0bff8 modeld_v2: spatial features (PR-1934) updated 2026-08-22 17:17:07 +08:00
Comma Device 9e9a1b2669 modeld_v2: spatial features (PR-1934) 2026-08-22 10:32:03 +08:00
Comma Device 6f31c98db7 ui: dynamic path width and color based on lateral state (#1926) 2026-08-22 10:31:57 +08:00
Comma Device ed48bd034c ui: show default big model name when eGPU present/active (#1930) 2026-08-22 10:31:50 +08:00
Comma Device 83570898ee ci: deprecate GitHub runners (#1933) 2026-08-21 13:52:44 +08:00
Comma Device 2d19aecb85 sunnylink: add model resolver (#1931) 2026-08-21 13:52:34 +08:00
Comma Device c0c99af4b4 models: add big model to default model resolution (#1929) 2026-08-21 13:52:27 +08:00
Comma Device f9d30e38b3 models fetcher: bump big model to v21 2026-08-21 09:37:57 +08:00
Comma Device 3840aee29b ci: Dedicated Model Runner (#1922) — compile_modeld.py + tests; CI files kept deleted 2026-08-21 09:37:33 +08:00
Comma Device 712105ee2f Update Python packages (#1925) — uv.lock only; opendbc_repo submodule bump skipped (vendored) 2026-08-21 09:37:10 +08:00
Comma Device 8582238ac3 livedelay: fix inverted get_lat_delay branches (#1906) 2026-08-20 15:11:53 +08:00
Comma Device 1ec7c65758 longitudinal_planner: use output_a_target in update_targets (align with upstream #38653 rework) 2026-08-20 14:40:12 +08:00
Comma Device 9e87d8134b models: use original sunnypilot model list URL (v20) instead of mr-one.cn 2026-08-20 14:37:10 +08:00
Comma Device ce10cde571 clean up big model detection w/ helpers (#38671) 2026-08-19 18:19:59 +08:00
Comma Device bfe36daddb webrtcd: bind to localhost (#38664) 2026-08-19 18:19:53 +08:00
Comma Device d384d0757e pin SCons to 4.10.1 (#38669) 2026-08-19 18:19:48 +08:00
Comma Device 11f108282c revert: chestnut: don't compile if big model is LFS pointer (#38670) (undoes e09980f2c1) 2026-08-19 18:19:43 +08:00
Comma Device ccad773370 ui: rework model download status into single row + fix missing status (#1920)
Applied upstream 20ba774eaa. Kept our customizations: live-translation
lambdas, hidden lane-turn/lagd/camera-offset toggles, internalName display.
2026-08-19 18:18:45 +08:00