* 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
* Maybe I was asleep but somehow it worked.
* Maybe I was asleep but somehow it worked.
* 70/30 split
* 60/35 split
* 67:33 split
* use Sqrt for tiny values to increase factor. Oh, also add a test file.
* use Sqrt for tiny values to increase factor. Oh, also add a test file.
* use Sqrt for tiny values to increase factor. Oh, also add a test file.
* Raise these to restart tests
* Raise these to restart tests
* Update jerk calculation mimicking j_ego math.
* README.md
* Update timestep
* Fix test
* Readability
* Lower time
* Add higher limits for CANFD
* Send these as a floating object. update comments to add TODO msg.
* Conditional flags
* yes its a little weird but heres why:
` "aReqValue": long_state.accel_value if enabled else a_val`
its only to not have merge conflicts with syncs from this file, because if not enabled a_val is already at 0 anyways.
* Make it easier to read
* Chronological order
* Trigger rebuild
* This is an internal test on my end. Disregard, for now
* fw version for my car...
* remove fw version as that was a test
* bump submodules
* refactor that while passing internal tests
* bump safety mutation test
* all should match 50 Hz
* bump safety mutation test
* match stock behavior for accel
* do our own clipping
* apply upper/lower dynamically
* bump test
* bump test
* Higher lower limit
* move desired accel force zero in tuning controller
* bump
* bump
* abs it here
* fix logic
* make sure it resets to 0, enforced in safety
* Test a few things
* Higher jerk for VOACC
* Elantra specific
* raise `off` to stock
* bump opendbc test
* allow jerk calculations at all times
* bump
* bump
* match aReqVale
* we dont need such high accel jerk when above 20m/s. This is cruise control, not a racecar.
* 0.45 default long actuator delay
* align type hint
* add lower jerk multiplier for HYUNDAI_IONIQ
* Change min jerk
* should be float
* Change min jerk
* Change min jerk upper
* Change max jerk upper
* Change max jerk upper
* Change max jerk upper
* step + threshold + first order filter to smooth
* constants
* nah
* multiplier to 1.5
* step updates for parabolic accel/braking
* step updates for parabolic accel/braking
* even less
* test multiplier
* Merge remote-tracking branch 'sunnypilot/opendbc/master-new' into HKG-long-tune
* back to default delay for now
* update test
* update config
* update test
* update config.py
* update test
* Remove stoppingDecelRate **No need for this anymore**
* multiplier to 1.0
* Variable lower dependency
* Variable lower dependency
* Variable lower jerk minimum
* Variable lower jerk minimum
planned_accel -> desired_acel
* Revert some scaling
* .01 here
* .01 here
* try even smoother stopping
* missed a `tuning` here that instead calls itself to inf.
* what is math
* Red Diff
* Red Diff
* bring some back
* bring some back
* stronger when needed
* something simple
* simplify more
* simplify more
* dont use future
* whoops
* why
* reset
* Refactor longitudinal controller for better jerk handling
Revised `calculate_a_value` and jerk processing logic to improve acceleration and jerk handling, particularly under dynamic conditions. Adjusted test cases to cover the new logic.
* Refactor longitudinal controller for better jerk handling
Revised `calculate_a_value` and jerk processing logic to improve acceleration and jerk handling, particularly under dynamic conditions. Adjusted test cases to cover the new logic.
* Refactor longitudinal controller for better jerk handling
Revised `calculate_a_value` and jerk processing logic to improve acceleration and jerk handling, particularly under dynamic conditions. Adjusted test cases to cover the new logic.
* Adjust lower_jerk interpolation for improved accuracy
* Lowered the acceleration error threshold from -0.01 to -0.001
* Adjust jerk interpolation thresholds for Hyundai tuning.
Updated the interpolation range for smaller acceleration errors.
* Move it up
* -.03 not -.05
* radarUnavailable = higher limit patch
* Commit the real change
* Updated the interpolation values and logic for lower_jerk to refine acceleration behavior.
* Updated the interpolation values and logic for lower_jerk to refine acceleration behavior.
* Updated the interpolation values and logic for lower_jerk to refine acceleration behavior.
* Updated the interpolation values and logic for lower_jerk to refine acceleration behavior.
* THIS. THIS WILL STOP FOR LEADS
* Higher for VOACC
* Higher for VOACC
* Rename `make_jerk` to `calculate_jerk` in test cases.
* Adjust jerk tuning for Hyundai longitudinal control
Updated the interpolation table for lower jerk values to improve deceleration handling. This adjustment refines control behavior during higher deceleration requests.
* Updated the interpolation breakpoint from -0.03 to -0.025
* Adjust longitudinal control jerk tuning for smoother response
Updated interpolation values in the jerk tuning logic to improve acceleration smoothing in Hyundai longitudinal control. These changes aim to provide a more consistent and predictable driving experience, particularly during deceleration scenarios.
* Handle radar unavailability in longitudinal tuning check
* Introduce `toggleDisableMsg` to streamline determining toggle states and descriptions.
* `sunnypilot`
* `Refactor longitudinal control acceleration and jerk handling`
Removed unused `FirstOrderFilter` and simplified acceleration and jerk calculations for improved clarity and maintainability. Adjusted logic to replace redundant return statements, streamline jerk computation, and reduce unnecessary dependencies.
* `Refactor longitudinal control acceleration and jerk handling`
Removed unused `FirstOrderFilter` and simplified acceleration and jerk calculations for improved clarity and maintainability. Adjusted logic to replace redundant return statements, streamline jerk computation, and reduce unnecessary dependencies.
* Simplify test to be straight to the point.
* Adjust upper_speed_factor and integrate ramp_update logic
* Adjust upper_speed_factor and integrate ramp_update logic
* Adjust upper_speed_factor and integrate ramp_update logic
* Refine acceleration and jerk tuning logic.
* greater than 0
* bump
* bring back ramp update for jerk upper
* Update opendbc_repo
* Revert "Update opendbc_repo"
This reverts commit b790387c90.
* bump
* bump
* bump
* using count seems to work better
* Refine jerk tuning logic and expand test coverage
* bump vals
* fix logic
* Adjust jerk tuning parameters for Hyundai longitudinal control
* retry lfs check
* bump submodule
* Fix acceleration blending and enhance test coverage
* Update lower_jerk breakpoints
* bump
* Adjust lower jerk parameters and include accel_cmd condition
* Adjust vars
* "Adjust Hyundai longitudinal jerk limits and tuning logic"
* Adjust jerk limits and tuning logic for better control
* Update Hyundai longitudinal tuning and add dynamic jerk logic
Refactored longitudinal configuration to include "lookahead" parameters and revised "jerk_limits" for improved tuning flexibility. Implemented dynamic jerk adaptation logic (Gen1) for smoother braking and acceleration transitions.
* Adjust Hyundai longitudinal control parameters for tuning
* bump to original branch
* QSize Policy to stretch toggle to screen size
* bump
* completely blocked xD
* Sunnypilot -> openpilot
* Whitespace
* Clean up toggle name
* Still allow ramp while in standstill for EV
* Adjust Kia Niro EV tuning parameters for smoother control
* self.cp.flags
* bump submodule
* bump
* Remove ramp for lower desired jerk
* update README.md
* update README.md
* Adjust lookahead_jerk_lower_v values in Hyundai longitudinal config.
* update tuning
* Update tune one last time to vals from device which are much smoother.
* Accel error
* bump
* fix
* rename flag and slight cleanup
* start ui stuff
* long_state -> tuning
* Prep for clean up
* small changes
* less in main
* no longer
* format
* bump
* init panel
* expose signal for other panels to interact with
* split into its own
* unused
* move around
* actually modify CP_SP
* fix offroad transition
* rename
* back
* don't update unless we're looking at it
* move around
* use min length
* do this
* whoops
* move
* bump
* bump
* this is fine
* bump
---------
Co-authored-by: Jason Wen <haibin.wen3@gmail.com>
Co-authored-by: DevTekVE <devtekve@gmail.com>
Co-authored-by: royjr <royjr96@gmail.com>
* Adding capabilities to route localProxy via sunnylink
* Undo
* Thx lint
* get api token
* cert is not valid when it's an IP. Still use cert, but don't validate
Adjust the spinner vertical position when displaying text or a progress bar
- When displaying the progress bar, center the comma logo and spinner in the middle of the screen
- When displaying text, center the entire content vertically
Also updated `wrap_text` to not include an empty line in the array if it's the first line, so that `wrap_text("")` always returns `[]`
- Wrap text onto separate lines
- Increase font size to be closer to Qt
- Remove extra letter spacing - 0.0 should use font default spacing, and this is used in `wrap_text`
Will fix vertical alignment separately, as both the text and progress bar layouts need to be considered
* ui(raylib): reduce spinner rotation artifact
A visual artifact (white pixels) appeared on the edge of the
rotating spinner track texture, likely due to RGB color bleed during
bilinear filtering in Raylib.
Pre-multiplying the alpha channel of the spinner track image using
`rl.image_alpha_premultiply` significantly reduces the visibility of the
artifact.
* lint