18164 Commits

Author SHA1 Message Date
Jason Wen
46b9253729 ci: exclude ONNX models from publish output (#1853) staging/2026.002.000/2026.06.05-4525 2026-06-04 22:10:20 -04:00
Jason Wen
40875ef72f Sync: commaai/openpilot:mastersunnypilot/sunnypilot:master (#1843) 2026-06-04 07:21:10 -04:00
Jason Wen
36a9c02b8f sync: post-merge fixes for tinygrad bump 2026-06-03 14:56:32 -04:00
Jason Wen
3137a32db4 Merge branch 'upstream/master' into sync-20260517-new-new 2026-06-03 01:45:40 -04:00
Harald Schäfer
69e2c321e4 Frame drop: only allow 1percent (#38127) 2026-06-01 22:11:02 -07:00
Adeeb Shihadeh
c87f613659 agnos 18.4: pin pycapnp to 2.1.0 (#38126)
* Revert "modeld: fix capnp memory leak (#38117)"

This reverts commit 0f17a98793.

* Revert "fix memory leak from pycapnp 2.2+ (#38001)"

This reverts commit 294cb687f6.

* downgrade

* agnos 18.4
2026-06-01 20:43:32 -07:00
Harald Schäfer
249cafe897 Prereqs deep models (#38125)
* deep pre-req

* modeld changes

* fix parsing

* comment

* fix reporter
2026-06-01 18:43:47 -07:00
Shane Smiskol
0f17a98793 modeld: fix capnp memory leak (#38117)
* modeld leak

* rm
2026-06-01 18:35:44 -07:00
stef
04e2351246 webrtc: livestream bitrate controller (#38120)
* bitrate controller

* ability to set the quality so a certain level, make message handler a switch case

* distinct bitrate levels and exponential backoff of raising bitrate

* add med level threshold

* fix

* fix

* simplify

* clean
2026-06-01 10:33:29 -07:00
commaci-public
bd148abbc4 [bot] Update Python packages (#38122)
Update Python packages

Co-authored-by: Vehicle Researcher <user@comma.ai>
2026-06-01 09:23:37 -07:00
Shane Smiskol
c76f481ddc mici ui: recover from updater failed (#37427)
fix
2026-06-01 00:11:40 -07:00
Shane Smiskol
ce08f5290b modeld formatting 2026-05-31 03:14:57 -07:00
Shane Smiskol
bc2b0d8272 Nissan: fix steering wheel offset in some cases (#38116)
bump
2026-05-31 02:12:36 -07:00
Shane Smiskol
965f47efe3 test models: check angle matches safety (#38110)
* check angle matches safety

* add to fuzzy

* explicit

* fix tesla

* just real data for now, fix toyota

* clean up
2026-05-31 01:21:35 -07:00
Shane Smiskol
5bbcc32b5d bump opendbc (#38115)
* bump

* fix
2026-05-31 01:19:06 -07:00
Adeeb Shihadeh
517b9a2d5f bump opendbc (#38113) 2026-05-30 14:55:18 -07:00
John Belmonte
5063c2055f deprecate carState.brake (#37857)
* remove CarState.brake refs

Intending to deprecate this field since it's set incorrectly by
most car implementations, and (essentially) unused in openpilot.
Everything should be using CarState.brakePressed.
See https://github.com/commaai/opendbc/pull/3338.

* fix test_models.py
2026-05-30 14:51:59 -07:00
Adeeb Shihadeh
9f3448f662 fix up comment 2026-05-30 13:38:17 -07:00
Adeeb Shihadeh
609a5c3cfa tools/setup: skip native package managers if we can (#38112)
* tools/setup: skip native package managers if we can

* revert that
2026-05-30 13:06:45 -07:00
Andi Radulescu
d937401511 hardware.py: remove NM dbus (#38005)
* hardware: read network info without NetworkManager DBus

* hardware: simplify wpa_cli SSID escape decoding

* hardware: restore cellular block in get_network_type to match master

* hardware: factor wpa_cli helper for key=value parsing

* hardware: comment SSID byte conversion for keyfile match

* hardware: comment NM metered enum values

* hardware: use check_output for ip route and wpa_cli helpers

* hardware: read default route iface from /proc/net/route

* hardware: simplify default route iface parsing

* hardware: only check for metered == 1

* hardware: also look for *.nmconnection in /data/etc/NetworkManager/system-connections

* hardware: use nmcli for runtime metered guess on wifi

* socket

* cleanup

* poor

* lil more

* mv that

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2026-05-30 11:09:17 -07:00
Adeeb Shihadeh
8499de6afe tici: remove weston fallback (#38111) 2026-05-30 10:50:17 -07:00
Shane Smiskol
3452e878a7 parameterized_class: fix class name (#38109)
* fix class name

* comment
2026-05-29 20:51:04 -07:00
Armand du Parc Locmaria
804d9016ae modeld/SConscript: tg_devices depends on tg_backend only (#38108) 2026-05-29 19:55:06 -07:00
stef
ad522f8444 hw encoder: set_bitrate and apply_bitrate based on Param (#38095)
* initial codex

* remove ISP delay from encode ms

* try something simpler

* not allowing increase bug

* decrease bitrate increase rate

* upsample only on consecutive good checks

* rearrange

* clean

* Revert frame timing processing time change

* clean

* remove bitrate option and just do it on --stream

* make set_bitrate a lot more simple

* clean default impl

* further cleaning

* struct for bitrate to pass ci

* refactor a bit

* add comment

* small clean

* add init()

* increase bitrate

* update ffmpeg message

* remove unnecessary include

* modify set_bitrate

* change to Param

* remove getInt helper; add back in diff pr

* reword unclear error message

* move webrtcd change to new branch
2026-05-29 18:00:47 -07:00
Armand du Parc Locmaria
9f59a4a5ca manager: remove obsolete tinygrad MainProcess workaround (#38104)
tinygrad doesn't need to run in 'MainProcess'?
2026-05-29 16:35:08 -07:00
ZwX1616
417efb3c05 migration: fix missing and wrong fields in driverMonitoringStateDEPRECATED (#38105) 2026-05-29 14:59:52 -07:00
Adeeb Shihadeh
4df40d2c19 needs to be a real release branch name for the tests 2026-05-29 11:48:09 -07:00
Adeeb Shihadeh
069b912056 jenkins: fix mici release branch pushing 2026-05-29 10:48:34 -07:00
Daniel Koepping
a8772eb0af add retries to process-replay ref push (#38101)
* add one retry to push replay refs

* more retries
2026-05-28 12:49:56 -07:00
Daniel Koepping
a81617d8ee adjust fan setpoint (#38100)
* adjust fan setpoint

* comment
2026-05-28 12:14:35 -07:00
Gabe Lynch
5408c86b7b Cabana: Fixed internal typos and method casing (#38099) 2026-05-28 11:05:23 -07:00
stef
4cd93f3eee webrtcd: turn CerealProxyRunner into more general AsyncTaskRunner (#38093)
* make cereal proxy runner more general

* missing init()
2026-05-27 13:49:46 -07:00
Jason Wen
dfc3c98b22 Revert "DM: Lancia Delta HF Integrale model" (#1849)
Revert "DM: Lancia Delta HF Integrale model (#37696)"

This reverts commit d8569b07eb.
staging/2026.002.000/2026.05.27-4513
2026-05-26 23:31:54 -04:00
ZwX1616
4585e93066 dmonitoringmodeld: fix YUV padding (#38091) 2026-05-26 18:00:10 -07:00
stef
5af72796f2 fix frame timing feature in webrtcd (#38090)
fix misreference to video_tracks in webrtcd
2026-05-26 10:32:02 -07:00
Adeeb Shihadeh
ccac1e28de jp: DM debug layout 2026-05-25 18:01:46 -07:00
Adeeb Shihadeh
bdca897248 docs: update DM description (#38089) 2026-05-25 16:56:57 -07:00
commaci-public
b93d166ff8 [bot] Update Python packages (#38003)
* Update Python packages

* unused

* ty happy

---------

Co-authored-by: Vehicle Researcher <user@comma.ai>
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
2026-05-25 16:49:41 -07:00
Armand du Parc Locmaria
d9553eeec7 Reapply "modeld: split warp" (#38085) (#38086)
* Reapply "modeld: split warp" (#38085)

This reverts commit d489dd8909.

* don't time make_random_inputs

* depend on chunk targets

* also depend on compile_modeld's dependencies
2026-05-23 15:55:40 -07:00
Shane Smiskol
9d74412fec no warning on macos zsh 2026-05-23 02:02:16 -07:00
Shane Smiskol
95f562c298 op: autocomplete (#38081)
* op autocomplete

* rm

* indent

* Revert "indent"

This reverts commit 6dd513f3229741864563f81ab8547c24c3557dda.

* clean er
2026-05-23 01:56:15 -07:00
Armand du Parc Locmaria
d489dd8909 Revert "modeld: split warp" (#38085)
Revert "modeld: split warp (#38079)"

This reverts commit a3cc9c7ac3.
2026-05-23 00:53:12 -07:00
stef
1f227bbe20 remote teleop frame timing support (#38014)
* athenad and webrtcd updates

* remove feature stream services from webrtcd split

* stream encoder thread

* reduce diff

* wire webrtc to livestream camera encoder

* request livestream camera switch service

* add frame timing headers

* rfctr

* diff

* clean

* remove camera list in favour of init camera field

* remove cors

* clean

* remove unused

* remove extra try except

* remove video_tracks unused

* add back exception trace

* add stream road camera info to stream cameras

* fix

* add back assert

* clean diff

* clean diff

* add testJoystick only on body

* fix camera list

* remove reference to future service

* video_tracks list add back

* encode all cameras and swap in video track in webrtc

* clean

* explicitly gate bridge send

* clean leftover

* rearrange video.py

* fix lint
2026-05-22 19:30:48 -07:00
stef
9844075bb2 remote teleop multi-stream on 1 video track (#38013)
* athenad and webrtcd updates

* remove feature stream services from webrtcd split

* stream encoder thread

* reduce diff

* wire webrtc to livestream camera encoder

* request livestream camera switch service

* remove camera list in favour of init camera field

* remove cors

* clean

* remove unused

* remove extra try except

* add back exception trace

* add stream road camera info to stream cameras

* fix

* clean diff

* clean diff

* add testJoystick only on body

* fix camera list

* remove reference to future service

* encode all cameras and swap in video track in webrtc

* clean

* explicitly gate bridge send

* clean leftover

* make local bodyteleop work still
2026-05-22 19:20:22 -07:00
Armand du Parc Locmaria
a3cc9c7ac3 modeld: split warp (#38079)
* compiles

* runs

* dedupe compiling model

* always build for both res

* fix does not bind loop variable

* rm size multiplier
2026-05-22 17:50:26 -07:00
stef
aff9f9ffae remote body teleop from connect support (#38011)
* athenad and webrtcd updates

* remove feature stream services from webrtcd split

* remove cors

* clean

* remove unused

* remove extra try except

* add back exception trace

* clean diff

* clean diff

* add testJoystick only on body

* fix camera list

* remove reference to future service
2026-05-21 17:42:19 -07:00
Adeeb Shihadeh
38faa7c2cb bump msgq (#38057)
* bump msgq

* bump msgq

* fix ui
2026-05-21 16:29:27 -07:00
Armand du Parc Locmaria
52e182611d initial usbgpu support (#37906)
* zero ll patched big model

* probe in a subprocess so usbgpu lock gets released

* compiles

* runs

* num_jobs gets overwritten, use side effect

* poll tg devices

* make sure build crashes on missing gpu

* fine not to rely on Device.default

* seperate tg env for each model runner

* comment

* Revert "seperate tg env for each model runner"

This reverts commit f6470cc4258eaeb3e8e37907ef370871c9af5aa4.

* env is shared, gate on flag

* no fallback warp dev must be set

* build for current device only, unless pc/release

* comment

* list

* listen for plug in

* add icon to status bar, read params on every frame (?)

* log available devices

* try copy out when loading?

* Revert "log available devices"

This reverts commit e8c52a5d59456d4820ecb13b99a6c46ea1386a20.

* Revert "try copy out when loading?"

This reverts commit 518f403aa03faeda1950fe3dbce0d9e4c1584455.

* don't trigger device probe/caching on modeld prepare

* re-export with ll and road edges

* dont cache devices in manager process

* get USBGPU from params

* no usbgpu env

* missed one

* sconscript don't poll

* unconditional env

* always explicitely set devices on input tensors

* set DEV so amd uses right compiler and iface??

* fix flag

* bump tg

* rm xdg_cache_home

* tg don't bump all the way

* missing gmmu=0 at compile time

* dm set dev

* tg backend

* update gitignore

* missing import

* unused imports

* rely on Device.DEFAULT at compile time (already the case bc onnxrunner)

* comments

* dm warp needs DEV set too

* build both smol and big

* misc typos

* set dev at compile time

* don't need

* DEV=CPU when getting metadata, ensure we don't grab gpu lock

* this would also grab lock

* put bool

* warp compile always prepare only

* missed one

* poll ui

* missing here

* don't force usbgpu at build time

* tmp patch fetch_fw

* catch all, follow hardwared patterns

* simpler

* compile make input queues

* revert this

* group this more readable

* rm empty line

* make dummy frame using numpy

* revert compile make input queues

* no compiler at runtime

* cleanup

* fine to rebuild all on change to device node for now

* fix usbgpu_present

* fix sconscript

* no size in header stream decompress

* DEBUG=2

* minimal viable feedback

* egpu gray

* oops

* gotta do this actually

* modeld build only depends on modeld devices

* don't ship onnx to release? or chunk

* don't need

* can only set compiler on dev=

* none device works, will use default

* make linter happy

* chunk agnostic onnx input to compile_modeld

* chunk big onnx

* +x chunker

* fix #!

* and don't ship chunked onnx to release

* firmware now in correct location

* better err on missing onnx/chunk

* SConscript also need to accept chunked onnx

* metadata also need to load maybe chunked

* dedupe cmd

* this needs to be on cpu

* devices are set in the tgflags, we already depend on them

* rebuilding on changed order is fine

* read file chunked can already load either chunked or not

* chunk all big onnx

* less confusing

* unused import

* python device to load onnx bytes

* default device for runners, python for metadata

* why not

* chunked to shm
2026-05-19 22:41:57 -07:00
Adeeb Shihadeh
82338fd8c5 bump to 0.11.2 2026-05-19 19:40:48 -07:00
Adeeb Shihadeh
12aaacdffc loggerd: fix flaky test case (#38068) 2026-05-19 11:22:13 -07:00