Commit Graph

26 Commits

Author SHA1 Message Date
firestar5683 a8e10e4e52 Restore compatible model runtime 2026-10-23 20:48:09 -05:00
firestar5683 26bc78b69d Compile native Chestnut models 2026-10-23 16:17:25 -05:00
firestar5683 58cf992fe4 Preserve StarPilot Model Runtime Compatibility 2026-10-20 03:55:47 +00:00
firestar5683 a82935f326 User interfaces and Android Auto
Integrate onroad views, configurable widgets, local settings, steering-profile contracts, Bluetooth and Android Auto with their device and runtime services.

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
Co-authored-by: Daniel Koepping <elkoled@gmail.com>
Co-authored-by: Danny <dannyirwin31@yahoo.com>
Co-authored-by: DimitriChrysafis <Dimitri.chrysafis@gmail.com>
Co-authored-by: Dom <168790843+firestar5683@users.noreply.github.com>
Co-authored-by: Harald Schäfer <harald.the.engineer@gmail.com>
Co-authored-by: Prabhaav Pillai <prabhaav@msu.edu>
Co-authored-by: Shane Smiskol <shane@smiskol.com>
Co-authored-by: dirwin31 <83434411+dirwin31@users.noreply.github.com>
Co-authored-by: firestarsdog <229254897+firestarsdog@users.noreply.github.com>
Co-authored-by: stef <19478336+stefpi@users.noreply.github.com>
Co-authored-by: whoisdomi <dcantu83@gmail.com>

Co-authored-by: Intelli <contact@intelli.software>
Co-authored-by: pharmacomaniac <blittle65@gmail.com>

Co-authored-by: prabhaavp <prabhaav@msu.edu>
2026-10-14 20:02:39 -05:00
Daniel Koepping bbabd94c11 modeld: wait for chestnut to enumerate (#39011)
* modeld: wait for chestnut to enumerate

* trigger ci
2026-09-24 13:24:58 -07:00
Harald Schäfer df7e0e5e77 Use upstream tinygrad disk tensors for model loading (#38956) 2026-09-17 22:18:13 -07:00
Harald Schäfer 3cd1b6e483 Update tinygrad and use retargetable model artifacts (#38933)
* Update tinygrad to latest upstream with minimal openpilot patches

* Rebase tinygrad on latest upstream with one remaining patch

* Use retargetable model and warp artifacts

* Pack compiled model weights to reduce startup time

* Memory-map out-of-band model weights

* Use unmodified upstream tinygrad master

* Keep locally built model artifacts native
2026-09-17 20:43:51 -07:00
Harald Schäfer 1328ace068 Remove model chunking and use LFS for Chestnut releases (#38941)
* Remove model chunking and use LFS for Chestnut releases

* Check Git blob sizes once during release packaging

* Download the big model for Chestnut nightly builds

* Reuse published LFS models when pushing releases

* Preserve LFS configuration when copying Chestnut releases

* Detect release builds independently of LFS attributes
2026-09-17 16:34:52 -07:00
Harald Schäfer 6080cc6168 Use a precompiled eGPU driving model (#38930)
* Ship precompiled eGPU model and camera warps

Compile f78ed37d-afad-4dbc-8050-40ea885eedde/12864 through xx/ml_tools/openpilot_compile using the pinned tinygrad version.

* Precompile the existing master driving model

Use the unchanged master ONNX (SHA-256 6fee5937923c74848df4a63f6239eb6331c6274dd4bdb7a5d6ec0388a8b543d5) instead of updating the trained model.

* Compile camera warps on device

* Remove obsolete ONNX chunking and big model build check

* Chunk model artifacts only during release packaging

* Require model and camera warps for Chestnut readiness

* Recompile precompiled CPU helpers for the runtime host

* Ship the eGPU model with an ARM submission helper

* Exempt model pickles from the build product size limit
2026-09-16 08:13:45 -07:00
Harald Schäfer b751b04cda Use tinygrad ONNX and warp compilers for driving and DM (#38922)
* modeld: use tinygrad ONNX and warp compilers for driving and DM

* Bump tinygrad with current openpilot model compile tests

* modeld: prioritize tinygrad compiler imports in build environment

* Use compiler branch based on openpilot's pinned tinygrad

* modeld: invoke tinygrad compilers without firmware patch
2026-09-15 11:21:47 -07:00
Harald Schäfer fa9f56ed76 Compile warp and onnx separately (#38864)
* Extract shared model warp routines

* Move DM warp compilation into compile_warp

* Configure shared warp compilation through SCons flags

* Move the driving warp wrapper into compile_warp

* Build driving warps separately from the model

* Compile model inputs directly from ONNX

* modeld: simplify split input setup

* modeld: extract input packing setup

* modeld: simplify packed views and share firmware setup
2026-09-14 23:07:26 -07:00
Daniel Koepping f87e170bee reject incomplete model buffers (#38852) 2026-09-10 18:17:40 -07:00
YassineYousfi e3def37695 revert 38742 (#38760) 2026-09-03 09:45:51 -07:00
Daniel Koepping 06af2abe67 modeld: wait for stable chestnut (#38742)
modeld: wait for stable chestnut
2026-09-01 07:20:56 -07:00
Daniel Koepping 682b6a20df add chestnut offroad alerts (#38706)
* system: add chestnut offroad alerts

* system: refine chestnut offroad alerts

* system: refine chestnut power alerts

* system: confirm chestnut power recovery from PCIe

* system: detect missing chestnut power from INA voltage
2026-08-28 15:46:56 -07:00
Daniel Koepping 5cfdb2f4da rename usbgpu to chestnut (#38703)
chestnut: rename eGPU interfaces
2026-08-26 15:42:59 -07:00
Shane Smiskol 03711a13b0 Revert "chestnut: don't compile if big model is LFS pointer" (#38670)
Revert "chestnut: don't compile if big model is LFS pointer (#38655)"

This reverts commit b8e14d85fb.
2026-08-18 18:31:07 -07:00
Shane Smiskol b8e14d85fb chestnut: don't compile if big model is LFS pointer (#38655)
* use compiled helper for hardwared alert, source doesn't matter. scons skips compile if it's empty/lfs pointer

* log it

* rmnl

* compile failed

* out of scope

* rmnl
2026-08-17 21:47:14 -07:00
Daniel Koepping dd2214a78c chestnut updater (#38546)
* 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
2026-08-07 02:35:17 -07:00
YassineYousfi 04847f3805 chestnut: add new usb vid (#38517) 2026-08-03 12:46:46 -07:00
Daniel Koepping aac9d9ecf4 ui: show eGPU icon when enumerated (#38407)
* ui: react to egpu hotplug instead of waiting for modeld params

* use chestnutPresent
2026-07-22 10:25:58 -07:00
Armand du Parc Locmaria f1977eaa93 bump tg (#38398)
* bump tg

* slightly nicer
2026-07-21 16:08:19 -07:00
Armand du Parc Locmaria a2c554805b Reapply "usbgpu: never materialize model weights in RAM" (#38273)
* Reapply "usbgpu: never materialize model weights in RAM" (#38271)

This reverts commit 8196b743af.

* release oob buffers as we load them

* don't leak fds

* lint

* 10s faster loading time for big model
2026-07-01 01:22:48 -07:00
Armand du Parc Locmaria 8196b743af Revert "usbgpu: never materialize model weights in RAM" (#38271)
Revert "usbgpu: never materialize model weights in RAM (#38265)"

This reverts commit 724971afc3.
2026-06-30 13:13:23 -07:00
Armand du Parc Locmaria 724971afc3 usbgpu: never materialize model weights in RAM (#38265)
* bigger big

* don't load big model in ram

* patch tg to allow out of band buffers

* dump/load oob

* roundtrip pkl to disk

* streaming chunking

* to_disk

* fixup

* linter

* Revert "bigger big"

This reverts commit 7a8147dd7fab88db963d512ab4008de940714025.
2026-06-30 00:35:12 -07:00
Adeeb Shihadeh 5edc0bd89d mv root dirs into nested openpilot (#38219) 2026-06-21 18:49:46 -07:00