mirror of
https://github.com/infiniteCable2/openpilot.git
synced 2026-08-05 00:05:57 +08:00
72f09ec9f5
* 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 b790387c9080b3a553694fbae850e9aa8bb6e125. * 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>
175 lines
7.8 KiB
C++
175 lines
7.8 KiB
C++
#pragma once
|
|
|
|
#include <string>
|
|
#include <unordered_map>
|
|
|
|
inline static std::unordered_map<std::string, uint32_t> keys = {
|
|
{"AccessToken", CLEAR_ON_MANAGER_START | DONT_LOG},
|
|
{"AdbEnabled", PERSISTENT},
|
|
{"AlwaysOnDM", PERSISTENT},
|
|
{"ApiCache_Device", PERSISTENT},
|
|
{"ApiCache_FirehoseStats", PERSISTENT},
|
|
{"AssistNowToken", PERSISTENT},
|
|
{"AthenadPid", PERSISTENT},
|
|
{"AthenadUploadQueue", PERSISTENT},
|
|
{"AthenadRecentlyViewedRoutes", PERSISTENT},
|
|
{"BootCount", PERSISTENT},
|
|
{"CalibrationParams", PERSISTENT},
|
|
{"CameraDebugExpGain", CLEAR_ON_MANAGER_START},
|
|
{"CameraDebugExpTime", CLEAR_ON_MANAGER_START},
|
|
{"CarBatteryCapacity", PERSISTENT},
|
|
{"CarParams", CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION},
|
|
{"CarParamsCache", CLEAR_ON_MANAGER_START},
|
|
{"CarParamsPersistent", PERSISTENT},
|
|
{"CarParamsPrevRoute", PERSISTENT},
|
|
{"CompletedTrainingVersion", PERSISTENT},
|
|
{"ControlsReady", CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION},
|
|
{"CurrentBootlog", PERSISTENT},
|
|
{"CurrentRoute", CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION},
|
|
{"DisableLogging", CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION},
|
|
{"DisablePowerDown", PERSISTENT | BACKUP},
|
|
{"DisableUpdates", PERSISTENT | BACKUP},
|
|
{"DisengageOnAccelerator", PERSISTENT | BACKUP},
|
|
{"DongleId", PERSISTENT},
|
|
{"DoReboot", CLEAR_ON_MANAGER_START},
|
|
{"DoShutdown", CLEAR_ON_MANAGER_START},
|
|
{"DoUninstall", CLEAR_ON_MANAGER_START},
|
|
{"AlphaLongitudinalEnabled", PERSISTENT | DEVELOPMENT_ONLY | BACKUP},
|
|
{"ExperimentalMode", PERSISTENT | BACKUP},
|
|
{"ExperimentalModeConfirmed", PERSISTENT | BACKUP},
|
|
{"FirmwareQueryDone", CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION},
|
|
{"ForcePowerDown", PERSISTENT},
|
|
{"GitBranch", PERSISTENT},
|
|
{"GitCommit", PERSISTENT},
|
|
{"GitCommitDate", PERSISTENT},
|
|
{"GitDiff", PERSISTENT},
|
|
{"GithubSshKeys", PERSISTENT | BACKUP},
|
|
{"GithubUsername", PERSISTENT | BACKUP},
|
|
{"GitRemote", PERSISTENT},
|
|
{"GsmApn", PERSISTENT | BACKUP},
|
|
{"GsmMetered", PERSISTENT | BACKUP},
|
|
{"GsmRoaming", PERSISTENT | BACKUP},
|
|
{"HardwareSerial", PERSISTENT},
|
|
{"HasAcceptedTerms", PERSISTENT},
|
|
{"InstallDate", PERSISTENT},
|
|
{"IsDriverViewEnabled", CLEAR_ON_MANAGER_START},
|
|
{"IsEngaged", PERSISTENT},
|
|
{"IsLdwEnabled", PERSISTENT | BACKUP},
|
|
{"IsMetric", PERSISTENT | BACKUP},
|
|
{"IsOffroad", CLEAR_ON_MANAGER_START},
|
|
{"IsOnroad", PERSISTENT},
|
|
{"IsRhdDetected", PERSISTENT},
|
|
{"IsReleaseBranch", CLEAR_ON_MANAGER_START},
|
|
{"IsTakingSnapshot", CLEAR_ON_MANAGER_START},
|
|
{"IsTestedBranch", CLEAR_ON_MANAGER_START},
|
|
{"JoystickDebugMode", CLEAR_ON_MANAGER_START | CLEAR_ON_OFFROAD_TRANSITION},
|
|
{"LanguageSetting", PERSISTENT | BACKUP},
|
|
{"LastAthenaPingTime", CLEAR_ON_MANAGER_START},
|
|
{"LastGPSPosition", PERSISTENT},
|
|
{"LastManagerExitReason", CLEAR_ON_MANAGER_START},
|
|
{"LastOffroadStatusPacket", CLEAR_ON_MANAGER_START | CLEAR_ON_OFFROAD_TRANSITION},
|
|
{"LastPowerDropDetected", CLEAR_ON_MANAGER_START},
|
|
{"LastUpdateException", CLEAR_ON_MANAGER_START},
|
|
{"LastUpdateTime", PERSISTENT},
|
|
{"LiveDelay", PERSISTENT},
|
|
{"LiveParameters", PERSISTENT},
|
|
{"LiveParametersV2", PERSISTENT},
|
|
{"LiveTorqueParameters", PERSISTENT | DONT_LOG},
|
|
{"LocationFilterInitialState", PERSISTENT},
|
|
{"LongitudinalManeuverMode", CLEAR_ON_MANAGER_START | CLEAR_ON_OFFROAD_TRANSITION},
|
|
{"LongitudinalPersonality", PERSISTENT | BACKUP},
|
|
{"NetworkMetered", PERSISTENT},
|
|
{"ObdMultiplexingChanged", CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION},
|
|
{"ObdMultiplexingEnabled", CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION},
|
|
{"Offroad_BadNvme", CLEAR_ON_MANAGER_START},
|
|
{"Offroad_CarUnrecognized", CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION},
|
|
{"Offroad_ConnectivityNeeded", CLEAR_ON_MANAGER_START},
|
|
{"Offroad_ConnectivityNeededPrompt", CLEAR_ON_MANAGER_START},
|
|
{"Offroad_IsTakingSnapshot", CLEAR_ON_MANAGER_START},
|
|
{"Offroad_NeosUpdate", CLEAR_ON_MANAGER_START},
|
|
{"Offroad_NoFirmware", CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION},
|
|
{"Offroad_Recalibration", CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION},
|
|
{"Offroad_StorageMissing", CLEAR_ON_MANAGER_START},
|
|
{"Offroad_TemperatureTooHigh", CLEAR_ON_MANAGER_START},
|
|
{"Offroad_UnofficialHardware", CLEAR_ON_MANAGER_START},
|
|
{"Offroad_UpdateFailed", CLEAR_ON_MANAGER_START},
|
|
{"OpenpilotEnabledToggle", PERSISTENT | BACKUP},
|
|
{"PandaHeartbeatLost", CLEAR_ON_MANAGER_START | CLEAR_ON_OFFROAD_TRANSITION},
|
|
{"PandaSomResetTriggered", CLEAR_ON_MANAGER_START | CLEAR_ON_OFFROAD_TRANSITION},
|
|
{"PandaSignatures", CLEAR_ON_MANAGER_START},
|
|
{"PrimeType", PERSISTENT},
|
|
{"RecordFront", PERSISTENT | BACKUP},
|
|
{"RecordFrontLock", PERSISTENT}, // for the internal fleet
|
|
{"SecOCKey", PERSISTENT | DONT_LOG}, // Candidate for | BACKUP
|
|
{"RouteCount", PERSISTENT},
|
|
{"SnoozeUpdate", CLEAR_ON_MANAGER_START | CLEAR_ON_OFFROAD_TRANSITION},
|
|
{"SshEnabled", PERSISTENT | BACKUP},
|
|
{"TermsVersion", PERSISTENT},
|
|
{"TrainingVersion", PERSISTENT},
|
|
{"UbloxAvailable", PERSISTENT},
|
|
{"UpdateAvailable", CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION},
|
|
{"UpdateFailedCount", CLEAR_ON_MANAGER_START},
|
|
{"UpdaterAvailableBranches", PERSISTENT},
|
|
{"UpdaterCurrentDescription", CLEAR_ON_MANAGER_START},
|
|
{"UpdaterCurrentReleaseNotes", CLEAR_ON_MANAGER_START},
|
|
{"UpdaterFetchAvailable", CLEAR_ON_MANAGER_START},
|
|
{"UpdaterNewDescription", CLEAR_ON_MANAGER_START},
|
|
{"UpdaterNewReleaseNotes", CLEAR_ON_MANAGER_START},
|
|
{"UpdaterState", CLEAR_ON_MANAGER_START},
|
|
{"UpdaterTargetBranch", CLEAR_ON_MANAGER_START},
|
|
{"UpdaterLastFetchTime", PERSISTENT},
|
|
{"Version", PERSISTENT},
|
|
|
|
// --- sunnypilot params --- //
|
|
{"ApiCache_DriveStats", PERSISTENT},
|
|
{"AutoLaneChangeBsmDelay", PERSISTENT},
|
|
{"AutoLaneChangeTimer", PERSISTENT},
|
|
{"CarParamsSP", CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION},
|
|
{"CarParamsSPCache", CLEAR_ON_MANAGER_START},
|
|
{"CarParamsSPPersistent", PERSISTENT},
|
|
{"CarPlatformBundle", PERSISTENT},
|
|
{"EnableGithubRunner", PERSISTENT | BACKUP},
|
|
{"MaxTimeOffroad", PERSISTENT | BACKUP},
|
|
{"ModelRunnerTypeCache", CLEAR_ON_ONROAD_TRANSITION},
|
|
{"OffroadMode", CLEAR_ON_MANAGER_START},
|
|
{"OffroadMode_Status", CLEAR_ON_MANAGER_START},
|
|
{"QuietMode", PERSISTENT | BACKUP},
|
|
|
|
// MADS params
|
|
{"Mads", PERSISTENT | BACKUP},
|
|
{"MadsMainCruiseAllowed", PERSISTENT | BACKUP},
|
|
{"MadsPauseLateralOnBrake", PERSISTENT | BACKUP},
|
|
{"MadsUnifiedEngagementMode", PERSISTENT | BACKUP},
|
|
|
|
// Model Manager params
|
|
{"ModelManager_ActiveBundle", PERSISTENT},
|
|
{"ModelManager_DownloadIndex", CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION},
|
|
{"ModelManager_LastSyncTime", CLEAR_ON_MANAGER_START | CLEAR_ON_OFFROAD_TRANSITION},
|
|
{"ModelManager_ModelsCache", PERSISTENT | BACKUP},
|
|
|
|
// Neural Network Lateral Control
|
|
{"NeuralNetworkLateralControl", PERSISTENT | BACKUP},
|
|
|
|
// sunnylink params
|
|
{"EnableSunnylinkUploader", PERSISTENT | BACKUP},
|
|
{"LastSunnylinkPingTime", CLEAR_ON_MANAGER_START},
|
|
{"SunnylinkCache_Roles", PERSISTENT},
|
|
{"SunnylinkCache_Users", PERSISTENT},
|
|
{"SunnylinkDongleId", PERSISTENT},
|
|
{"SunnylinkdPid", PERSISTENT},
|
|
{"SunnylinkEnabled", PERSISTENT},
|
|
|
|
// Backup Manager params
|
|
{"BackupManager_CreateBackup", PERSISTENT},
|
|
{"BackupManager_RestoreVersion", PERSISTENT},
|
|
|
|
// sunnypilot car specific params
|
|
{"HyundaiLongitudinalTuning", PERSISTENT},
|
|
{"HyundaiRadarTracks", PERSISTENT},
|
|
{"HyundaiRadarTracksConfirmed", PERSISTENT},
|
|
{"HyundaiRadarTracksPersistent", PERSISTENT},
|
|
{"HyundaiRadarTracksToggle", PERSISTENT},
|
|
|
|
{"DynamicExperimentalControl", PERSISTENT},
|
|
};
|