* Refactor and extend ModelRenderer for custom Sunnypilot logic
Refactored `ModelRenderer` to `ModelRendererSP` with enhanced features such as lane line updates, path drawing, and lead management for Sunnypilot. Introduced new methods for model updates, lead drawing, and improved path rendering with experimental mode support. Ensured compatibility by integrating with Sunnypilot-specific HUD and camera components.
* Update selfdrive/ui/sunnypilot/qt/onroad/model.cc
* Refactor `ModelRenderer` for modularity
Moved constants and `get_path_length_idx` function to the header file for reuse and clarity. Updated `drawPath` and related methods to better handle surface dimensions, improving rendering flexibility. Made key functions virtual to allow further customization in derived classes.
* Cleaning logic on ModelRenderSP
Given that we've refactored slightly the original ModelRender, we no longer need to duplicate the logic on our own implementation
---------
Co-authored-by: DevTekVE <devtekve@gmail.com>
Co-authored-by: Jason Wen <haibin.wen3@gmail.com>
* Create sync-dev.yml
* Update selfdrive_tests.yaml
* Update sync-dev.yml
* Update sync-dev.yml
* Update sync-dev.yml
* add search capability in branch selector
* maybe i should remove test code
* include
* reduce needed includes
* add newline for eof
* no changes needed in upstream file
* not sure why this was here
* try to resolve merge conflicts for dev squash
* try to resolve merge conflict
* No need for this for the time being
---------
Co-authored-by: Discountchubbs <159560811+Discountchubbs@users.noreply.github.com>
Co-authored-by: Jason Wen <haibin.wen3@gmail.com>
Co-authored-by: DevTekVE <devtekve@gmail.com>
* bad
* Revert "bad"
This reverts commit 6b5475dd90c3a29c00d946c94d726563cbec6179.
* notify param
* doesn't need to live in low level paramcontrol, rename param
* should work
* fix
* disable while engaged
* note
* fix
* just in case
* param is cleared by manager -- this was all to ensure manager got our `started` transition
* clean up
* and that
* rm
* negative better than generic thing
* timer is needed as it's not clean to fix case where you toggle while no ignition -- you can't go onroad + this allows some nice tolerance time for user to switch 2 toggles
* these aren't required or useful
* add to description
* no longer unlive
* allow reset button too
* another pr -- Revert "allow reset button too"
This reverts commit 5d03edddc80d8625ceba5d5178b2781e9d10d9c9.
* rm space from i18n string
* car is powered on
* Hyundai CAN: re-enable auto-enable radar tracks
* check if radar tracks config bit is already enabled
* only show success message if already enabled
* test if it would actually skip
* 5 bytes only
* tested skipping, revert
* lint
* move to opendbc right after fping
* more
* lint
* bump
* draft
* here too
* fixes
* fix
* ugh more fix, wifiManager is craze
* more
* be optimistic and let refresh happen naturally, the immediate refresh causes some paths/active connect to temporarily be unavailable
selfdrive/ui/qt/network/wifi_manager.cc: DBus call error: "Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the re
ply timeout expired, or the network connection was broken."
selfdrive/ui/qt/network/wifi_manager.cc: DBus call error: "Object path cannot be empty"
* nm is slow -- it takes 2s to commit to disk, and dbus errors are raised if you try again while previous is running (this is an ubuntu 24.04 bug)
* nice experience
* rm
* minor
* clean up
* self-explanatory
* rename
* rm this too
* revert
* draft
* Revert "draft"
This reverts commit 15283d977880fc60b8f9732772256e8337d6ac8e.
* Reapply "draft"
This reverts commit 8629921b0086ca71b88746d77ec7b8d3af3cd289.
* rm colors
* trinary, bit more code
* choose default when disabled
* only if enabling, wait for disable as normal
* remove original binary toggle
* clean up
* collapse
* clean up wifimanager
* update comment
* lite is a word
* expandable_row widget
* make MinMaxValue protected to allow inheritence
* add function to set width
* no more layout warnings
* format
---------
Co-authored-by: Jason Wen <haibin.wen3@gmail.com>
* update SConscript
Co-authored-by: Dean Lee <deanlee3@gmail.com>
* can't build on mac
* raylib installer
Co-authored-by: Dean Lee <deanlee3@gmail.com>
* rm
* debug pls
* cleanup
* quotes
* libs?
* bump
* hmm
* progress bar color
* more
* not rounded
* hardcode a font path..?
* embed (a subset of) inter into the installer
* different in CI
* closer font sizes
* closer
* add that back
* unnecessary
* closer to previous impl
* prefix is at start of string, substr between prefix and %
* Revert "prefix is at start of string, substr between prefix and %"
This reverts commit bc53fe8e356ca642680e90682285bd5e8d98ecb5.
* bigger on device?
* rm
---------
Co-authored-by: Cameron Clough <cameronjclough@gmail.com>
* MADS: Tesla and Rivian support
* request lateral if acc is engaged
* try this out
* fix
* make sure we keep the toggle off for tesla
* namedtuple
* disallow steering past 90 degrees for rivian
* whoops
* Revert "Revert "MADS: Steering Mode on Brake Pedal Press (#687)" (#789)"
This reverts commit 8dec4ea5
* both rivian and tesla
* enforce disengage on brake steering mode for Rivian and Tesla
* wrong one
* MADS: Steering Mode on Brake Pedal Press
* bump
* bump
* descriptions
* bump
* bump
* no tesla or rivian yet
* codecov v5
* Revert "codecov v5"
This reverts commit a347e3fb27c0fbf2510b69fe8148b254fa93b8de.
* cleanup
* refactor description
* sync name
* fix
* make sure we don't allow if brake was already being pressed
* no longer needed
* proper ui!
* allow LKAS tx at all times with MADS
* extra
* this ain't right
* try this
* test only
* bring them back
* some dynamic checks
* dynamic description for mads toggle
* one place for limited platforms
* update tests
* angle when long, lkas when mads
* bump
* MADS: prerequisite for partial platform support
* ui: support specific button enabled selections for `ButtonParamControlSP`
Replaced setDisabledSelectedButton with setEnableSelectedButtons for improved flexibility. The new implementation allows enabling multiple buttons based on a given list and maintains clarity in handling button states. This enhances functionality and aligns with better code practices.
* don't think we need to
* update
* ui: Add utility function to check if a brand is in a list
Introduces `isBrandInList` to simplify checking if a given brand exists within a list of strings. This improves code clarity and avoids repetitive implementations for the same logic.
* Revert "ui: Add utility function to check if a brand is in a list"
This reverts commit 26cde3a73e59cda678c9e017536702de45c8d151.
* ui: Add utility function to check if a brand is in a list
ui: support specific button enabled selections for `ButtonParamControlSP`
Replaced setDisabledSelectedButton with setEnableSelectedButtons for improved flexibility. The new implementation allows enabling multiple buttons based on a given list and maintains clarity in handling button states. This enhances functionality and aligns with better code practices.
* remove unused assets
* these are icons
* these are images
* fix
* fix
* Revert "remove unused assets"
This reverts commit 95d1a800de7e830df15d88e8e329aeadd4548b2f.
* move these too
* Reapply "Hyundai: custom longitudinal tuning" (#892)
This reverts commit 68c593db5f.
* fix panel behavior
* dynamic description
* try to merge and use the same scrollview
* fix for all to update
* dynamic update and fix description
* minimize changes for all brands
* init
* minimize changes for all brands
* more
* even less diff
* more
* even less diff
* more less
* wow srsly
* more less
* wow srsly