version: sunnypilot v0.10.1 (staging-tici) date: 2025-10-13T01:35:37 master commit: 737a6c4236e843034680c951005b38d15815363f
227 lines
12 KiB
C++
227 lines
12 KiB
C++
#pragma once
|
|
|
|
#include <string>
|
|
#include <unordered_map>
|
|
|
|
#include "cereal/gen/cpp/log.capnp.h"
|
|
|
|
inline static std::unordered_map<std::string, ParamKeyAttributes> keys = {
|
|
{"AccessToken", {CLEAR_ON_MANAGER_START | DONT_LOG, STRING}},
|
|
{"AdbEnabled", {PERSISTENT | BACKUP, BOOL}},
|
|
{"AlwaysOnDM", {PERSISTENT | BACKUP, BOOL}},
|
|
{"ApiCache_Device", {PERSISTENT, STRING}},
|
|
{"ApiCache_FirehoseStats", {PERSISTENT, JSON}},
|
|
{"AssistNowToken", {PERSISTENT, STRING}},
|
|
{"AthenadPid", {PERSISTENT, INT}},
|
|
{"AthenadUploadQueue", {PERSISTENT, JSON}},
|
|
{"AthenadRecentlyViewedRoutes", {PERSISTENT, STRING}},
|
|
{"BootCount", {PERSISTENT, INT}},
|
|
{"CalibrationParams", {PERSISTENT, BYTES}},
|
|
{"CameraDebugExpGain", {CLEAR_ON_MANAGER_START, STRING}},
|
|
{"CameraDebugExpTime", {CLEAR_ON_MANAGER_START, STRING}},
|
|
{"CarBatteryCapacity", {PERSISTENT, INT}},
|
|
{"CarParams", {CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION, BYTES}},
|
|
{"CarParamsCache", {CLEAR_ON_MANAGER_START, BYTES}},
|
|
{"CarParamsPersistent", {PERSISTENT, BYTES}},
|
|
{"CarParamsPrevRoute", {PERSISTENT, BYTES}},
|
|
{"CompletedTrainingVersion", {PERSISTENT, STRING, "0"}},
|
|
{"ControlsReady", {CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION, BOOL}},
|
|
{"CurrentBootlog", {PERSISTENT, STRING}},
|
|
{"CurrentRoute", {CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION, STRING}},
|
|
{"DisableLogging", {CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION, BOOL}},
|
|
{"DisablePowerDown", {PERSISTENT | BACKUP, BOOL}},
|
|
{"DisableUpdates", {PERSISTENT | BACKUP, BOOL, "0"}},
|
|
{"DisengageOnAccelerator", {PERSISTENT | BACKUP, BOOL, "0"}},
|
|
{"DongleId", {PERSISTENT, STRING}},
|
|
{"DoReboot", {CLEAR_ON_MANAGER_START, BOOL}},
|
|
{"DoShutdown", {CLEAR_ON_MANAGER_START, BOOL}},
|
|
{"DoUninstall", {CLEAR_ON_MANAGER_START, BOOL}},
|
|
{"DriverTooDistracted", {CLEAR_ON_MANAGER_START | CLEAR_ON_IGNITION_ON, BOOL}},
|
|
{"AlphaLongitudinalEnabled", {PERSISTENT | DEVELOPMENT_ONLY | BACKUP, BOOL}},
|
|
{"ExperimentalMode", {PERSISTENT | BACKUP, BOOL}},
|
|
{"ExperimentalModeConfirmed", {PERSISTENT | BACKUP, BOOL}},
|
|
{"FirmwareQueryDone", {CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION, BOOL}},
|
|
{"ForcePowerDown", {PERSISTENT, BOOL}},
|
|
{"GitBranch", {PERSISTENT, STRING}},
|
|
{"GitCommit", {PERSISTENT, STRING}},
|
|
{"GitCommitDate", {PERSISTENT, STRING}},
|
|
{"GitDiff", {PERSISTENT, STRING}},
|
|
{"GithubSshKeys", {PERSISTENT | BACKUP, STRING}},
|
|
{"GithubUsername", {PERSISTENT | BACKUP, STRING}},
|
|
{"GitRemote", {PERSISTENT, STRING}},
|
|
{"GsmApn", {PERSISTENT | BACKUP, STRING}},
|
|
{"GsmMetered", {PERSISTENT | BACKUP, BOOL, "1"}},
|
|
{"GsmRoaming", {PERSISTENT | BACKUP, BOOL}},
|
|
{"HardwareSerial", {PERSISTENT, STRING}},
|
|
{"HasAcceptedTerms", {PERSISTENT, STRING, "0"}},
|
|
{"InstallDate", {PERSISTENT, TIME}},
|
|
{"IsDriverViewEnabled", {CLEAR_ON_MANAGER_START, BOOL}},
|
|
{"IsEngaged", {PERSISTENT, BOOL}},
|
|
{"IsLdwEnabled", {PERSISTENT | BACKUP, BOOL}},
|
|
{"IsMetric", {PERSISTENT | BACKUP, BOOL}},
|
|
{"IsOffroad", {CLEAR_ON_MANAGER_START, BOOL}},
|
|
{"IsOnroad", {PERSISTENT, BOOL}},
|
|
{"IsRhdDetected", {PERSISTENT, BOOL}},
|
|
{"IsReleaseBranch", {CLEAR_ON_MANAGER_START, BOOL}},
|
|
{"IsTakingSnapshot", {CLEAR_ON_MANAGER_START, BOOL}},
|
|
{"IsTestedBranch", {CLEAR_ON_MANAGER_START, BOOL}},
|
|
{"JoystickDebugMode", {CLEAR_ON_MANAGER_START | CLEAR_ON_OFFROAD_TRANSITION, BOOL}},
|
|
{"LanguageSetting", {PERSISTENT | BACKUP, STRING, "main_en"}},
|
|
{"LastAthenaPingTime", {CLEAR_ON_MANAGER_START, INT}},
|
|
{"LastGPSPosition", {PERSISTENT, STRING}},
|
|
{"LastManagerExitReason", {CLEAR_ON_MANAGER_START, STRING}},
|
|
{"LastOffroadStatusPacket", {CLEAR_ON_MANAGER_START | CLEAR_ON_OFFROAD_TRANSITION, JSON}},
|
|
{"LastPowerDropDetected", {CLEAR_ON_MANAGER_START, STRING}},
|
|
{"LastUpdateException", {CLEAR_ON_MANAGER_START, STRING}},
|
|
{"LastUpdateRouteCount", {PERSISTENT, INT, "0"}},
|
|
{"LastUpdateTime", {PERSISTENT, TIME}},
|
|
{"LastUpdateUptimeOnroad", {PERSISTENT, FLOAT, "0.0"}},
|
|
{"LiveDelay", {PERSISTENT | BACKUP, BYTES}},
|
|
{"LiveParameters", {PERSISTENT, JSON}},
|
|
{"LiveParametersV2", {PERSISTENT, BYTES}},
|
|
{"LiveTorqueParameters", {PERSISTENT | DONT_LOG, BYTES}},
|
|
{"LocationFilterInitialState", {PERSISTENT, BYTES}},
|
|
{"LongitudinalManeuverMode", {CLEAR_ON_MANAGER_START | CLEAR_ON_OFFROAD_TRANSITION, BOOL}},
|
|
{"LongitudinalPersonality", {PERSISTENT | BACKUP, INT, std::to_string(static_cast<int>(cereal::LongitudinalPersonality::STANDARD))}},
|
|
{"NetworkMetered", {PERSISTENT | BACKUP, BOOL}},
|
|
{"ObdMultiplexingChanged", {CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION, BOOL}},
|
|
{"ObdMultiplexingEnabled", {CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION, BOOL}},
|
|
{"Offroad_CarUnrecognized", {CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION, JSON}},
|
|
{"Offroad_ConnectivityNeeded", {CLEAR_ON_MANAGER_START, JSON}},
|
|
{"Offroad_ConnectivityNeededPrompt", {CLEAR_ON_MANAGER_START, JSON}},
|
|
{"Offroad_ExcessiveActuation", {PERSISTENT, JSON}},
|
|
{"Offroad_IsTakingSnapshot", {CLEAR_ON_MANAGER_START, JSON}},
|
|
{"Offroad_NeosUpdate", {CLEAR_ON_MANAGER_START, JSON}},
|
|
{"Offroad_NoFirmware", {CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION, JSON}},
|
|
{"Offroad_Recalibration", {CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION, JSON}},
|
|
{"Offroad_StorageMissing", {CLEAR_ON_MANAGER_START, JSON}},
|
|
{"Offroad_TemperatureTooHigh", {CLEAR_ON_MANAGER_START, JSON}},
|
|
{"Offroad_UnregisteredHardware", {CLEAR_ON_MANAGER_START, JSON}},
|
|
{"Offroad_UpdateFailed", {CLEAR_ON_MANAGER_START, JSON}},
|
|
{"OnroadCycleRequested", {CLEAR_ON_MANAGER_START, BOOL}},
|
|
{"OpenpilotEnabledToggle", {PERSISTENT | BACKUP, BOOL, "1"}},
|
|
{"PandaHeartbeatLost", {CLEAR_ON_MANAGER_START | CLEAR_ON_OFFROAD_TRANSITION, BOOL}},
|
|
{"PandaSomResetTriggered", {CLEAR_ON_MANAGER_START | CLEAR_ON_OFFROAD_TRANSITION, BOOL}},
|
|
{"PandaSignatures", {CLEAR_ON_MANAGER_START, BYTES}},
|
|
{"PrimeType", {PERSISTENT, INT}},
|
|
{"RecordAudio", {PERSISTENT | BACKUP, BOOL}},
|
|
{"RecordAudioFeedback", {PERSISTENT | BACKUP, BOOL, "0"}},
|
|
{"RecordFront", {PERSISTENT | BACKUP, BOOL}},
|
|
{"RecordFrontLock", {PERSISTENT, BOOL}}, // for the internal fleet
|
|
{"SecOCKey", {PERSISTENT | DONT_LOG | BACKUP, STRING}},
|
|
{"RouteCount", {PERSISTENT, INT, "0"}},
|
|
{"SnoozeUpdate", {CLEAR_ON_MANAGER_START | CLEAR_ON_OFFROAD_TRANSITION, BOOL}},
|
|
{"SshEnabled", {PERSISTENT | BACKUP, BOOL}},
|
|
{"TermsVersion", {PERSISTENT, STRING}},
|
|
{"TrainingVersion", {PERSISTENT, STRING}},
|
|
{"UbloxAvailable", {PERSISTENT, BOOL}},
|
|
{"UpdateAvailable", {CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION, BOOL}},
|
|
{"UpdateFailedCount", {CLEAR_ON_MANAGER_START, INT}},
|
|
{"UpdaterAvailableBranches", {PERSISTENT, STRING}},
|
|
{"UpdaterCurrentDescription", {CLEAR_ON_MANAGER_START, STRING}},
|
|
{"UpdaterCurrentReleaseNotes", {CLEAR_ON_MANAGER_START, BYTES}},
|
|
{"UpdaterFetchAvailable", {CLEAR_ON_MANAGER_START, BOOL}},
|
|
{"UpdaterNewDescription", {CLEAR_ON_MANAGER_START, STRING}},
|
|
{"UpdaterNewReleaseNotes", {CLEAR_ON_MANAGER_START, BYTES}},
|
|
{"UpdaterState", {CLEAR_ON_MANAGER_START, STRING}},
|
|
{"UpdaterTargetBranch", {CLEAR_ON_MANAGER_START, STRING}},
|
|
{"UpdaterLastFetchTime", {PERSISTENT, TIME}},
|
|
{"UptimeOffroad", {PERSISTENT, FLOAT, "0.0"}},
|
|
{"UptimeOnroad", {PERSISTENT, FLOAT, "0.0"}},
|
|
{"Version", {PERSISTENT, STRING}},
|
|
|
|
// --- sunnypilot params --- //
|
|
{"ApiCache_DriveStats", {PERSISTENT, JSON}},
|
|
{"AutoLaneChangeBsmDelay", {PERSISTENT | BACKUP, BOOL, "0"}},
|
|
{"AutoLaneChangeTimer", {PERSISTENT | BACKUP, INT, "0"}},
|
|
{"BlinkerMinLateralControlSpeed", {PERSISTENT | BACKUP, INT, "20"}}, // MPH or km/h
|
|
{"BlinkerPauseLateralControl", {PERSISTENT | BACKUP, INT, "0"}},
|
|
{"Brightness", {PERSISTENT | BACKUP, INT, "0"}},
|
|
{"CarParamsSP", {CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION, BYTES}},
|
|
{"CarParamsSPCache", {CLEAR_ON_MANAGER_START, BYTES}},
|
|
{"CarParamsSPPersistent", {PERSISTENT, BYTES}},
|
|
{"CarPlatformBundle", {PERSISTENT | BACKUP, JSON}},
|
|
{"ChevronInfo", {PERSISTENT | BACKUP, INT, "4"}},
|
|
{"CustomAccIncrementsEnabled", {PERSISTENT | BACKUP, BOOL, "0"}},
|
|
{"CustomAccLongPressIncrement", {PERSISTENT | BACKUP, INT, "5"}},
|
|
{"CustomAccShortPressIncrement", {PERSISTENT | BACKUP, INT, "1"}},
|
|
{"DeviceBootMode", {PERSISTENT | BACKUP, INT, "0"}},
|
|
{"DevUIInfo", {PERSISTENT | BACKUP, INT, "0"}},
|
|
{"EnableCopyparty", {PERSISTENT | BACKUP, BOOL}},
|
|
{"EnableGithubRunner", {PERSISTENT | BACKUP, BOOL}},
|
|
{"GithubRunnerSufficientVoltage", {CLEAR_ON_MANAGER_START , BOOL}},
|
|
{"InteractivityTimeout", {PERSISTENT | BACKUP, INT, "0"}},
|
|
{"IsDevelopmentBranch", {CLEAR_ON_MANAGER_START, BOOL}},
|
|
{"MaxTimeOffroad", {PERSISTENT | BACKUP, INT, "1800"}},
|
|
{"ModelRunnerTypeCache", {CLEAR_ON_ONROAD_TRANSITION, INT}},
|
|
{"OffroadMode", {CLEAR_ON_MANAGER_START, BOOL}},
|
|
{"Offroad_TiciSupport", {CLEAR_ON_MANAGER_START, JSON}},
|
|
{"QuickBootToggle", {PERSISTENT | BACKUP, BOOL, "0"}},
|
|
{"QuietMode", {PERSISTENT | BACKUP, BOOL, "0"}},
|
|
{"RainbowMode", {PERSISTENT | BACKUP, BOOL, "0"}},
|
|
{"ShowAdvancedControls", {PERSISTENT | BACKUP, BOOL, "0"}},
|
|
|
|
// MADS params
|
|
{"Mads", {PERSISTENT | BACKUP, BOOL, "1"}},
|
|
{"MadsMainCruiseAllowed", {PERSISTENT | BACKUP, BOOL, "1"}},
|
|
{"MadsSteeringMode", {PERSISTENT | BACKUP, INT, "0"}},
|
|
{"MadsUnifiedEngagementMode", {PERSISTENT | BACKUP, BOOL, "1"}},
|
|
|
|
// Model Manager params
|
|
{"ModelManager_ActiveBundle", {PERSISTENT, JSON}},
|
|
{"ModelManager_ClearCache", {CLEAR_ON_MANAGER_START, BOOL}},
|
|
{"ModelManager_DownloadIndex", {CLEAR_ON_MANAGER_START | CLEAR_ON_ONROAD_TRANSITION, INT, "0"}},
|
|
{"ModelManager_Favs", {PERSISTENT | BACKUP, STRING}},
|
|
{"ModelManager_LastSyncTime", {CLEAR_ON_MANAGER_START | CLEAR_ON_OFFROAD_TRANSITION, INT, "0"}},
|
|
{"ModelManager_ModelsCache", {PERSISTENT | BACKUP, JSON}},
|
|
|
|
// Neural Network Lateral Control
|
|
{"NeuralNetworkLateralControl", {PERSISTENT | BACKUP, BOOL, "0"}},
|
|
|
|
// sunnylink params
|
|
{"EnableSunnylinkUploader", {PERSISTENT | BACKUP, BOOL}},
|
|
{"LastSunnylinkPingTime", {CLEAR_ON_MANAGER_START, INT}},
|
|
{"SunnylinkCache_Roles", {PERSISTENT, STRING}},
|
|
{"SunnylinkCache_Users", {PERSISTENT, STRING}},
|
|
{"SunnylinkDongleId", {PERSISTENT, STRING}},
|
|
{"SunnylinkdPid", {PERSISTENT, INT}},
|
|
{"SunnylinkEnabled", {PERSISTENT, BOOL}},
|
|
|
|
// Backup Manager params
|
|
{"BackupManager_CreateBackup", {PERSISTENT, BOOL}},
|
|
{"BackupManager_RestoreVersion", {PERSISTENT, STRING}},
|
|
|
|
// sunnypilot car specific params
|
|
{"HyundaiLongitudinalTuning", {PERSISTENT | BACKUP, INT, "0"}},
|
|
|
|
{"DynamicExperimentalControl", {PERSISTENT | BACKUP, BOOL, "0"}},
|
|
{"BlindSpot", {PERSISTENT | BACKUP, BOOL, "0"}},
|
|
|
|
// sunnypilot model params
|
|
{"LagdToggle", {PERSISTENT | BACKUP, BOOL, "1"}},
|
|
{"LagdToggleDelay", {PERSISTENT | BACKUP, FLOAT, "0.2"}},
|
|
{"LagdValueCache", {PERSISTENT, FLOAT, "0.2"}},
|
|
{"LaneTurnDesire", {PERSISTENT | BACKUP, BOOL, "0"}},
|
|
{"LaneTurnValue", {PERSISTENT | BACKUP, FLOAT, "19.0"}},
|
|
|
|
// mapd
|
|
{"MapAdvisorySpeedLimit", {CLEAR_ON_ONROAD_TRANSITION, FLOAT}},
|
|
{"MapdVersion", {PERSISTENT, STRING}},
|
|
{"MapSpeedLimit", {CLEAR_ON_ONROAD_TRANSITION, FLOAT, "0.0"}},
|
|
{"NextMapSpeedLimit", {CLEAR_ON_ONROAD_TRANSITION, JSON}},
|
|
{"Offroad_OSMUpdateRequired", {CLEAR_ON_MANAGER_START, JSON}},
|
|
{"OsmDbUpdatesCheck", {CLEAR_ON_MANAGER_START, BOOL}}, // mapd database update happens with device ON, reset on boot
|
|
{"OSMDownloadBounds", {PERSISTENT, STRING}},
|
|
{"OsmDownloadedDate", {PERSISTENT, STRING, "0.0"}},
|
|
{"OSMDownloadLocations", {PERSISTENT, JSON}},
|
|
{"OSMDownloadProgress", {CLEAR_ON_MANAGER_START, JSON}},
|
|
{"OsmLocal", {PERSISTENT, BOOL}},
|
|
{"OsmLocationName", {PERSISTENT, STRING}},
|
|
{"OsmLocationTitle", {PERSISTENT, STRING}},
|
|
{"OsmLocationUrl", {PERSISTENT, STRING}},
|
|
{"OsmStateName", {PERSISTENT, STRING, "All"}},
|
|
{"OsmStateTitle", {PERSISTENT, STRING}},
|
|
{"OsmWayTest", {PERSISTENT, STRING}},
|
|
{"RoadName", {CLEAR_ON_ONROAD_TRANSITION, STRING}},
|
|
};
|