mirror of
https://github.com/infiniteCable2/openpilot.git
synced 2026-09-24 08:33:41 +08:00
a9d5c9e23a
* ui: add new timer options for OnOnroad Brightness Delay * migrate * in future pr * Revert "in future pr" This reverts commit ca9940f809d8ce8541e4a044c9cc367c7af1346c. * consolidate * update * gate * fix
48 lines
2.2 KiB
Python
48 lines
2.2 KiB
Python
"""
|
|
Copyright (c) 2021-, Haibin Wen, sunnypilot, and a number of other contributors.
|
|
|
|
This file is part of sunnypilot and is licensed under the MIT License.
|
|
See the LICENSE.md file in the root directory for more details.
|
|
"""
|
|
from openpilot.common.swaglog import cloudlog
|
|
|
|
ONROAD_BRIGHTNESS_MIGRATION_VERSION: str = "1.0"
|
|
ONROAD_BRIGHTNESS_TIMER_MIGRATION_VERSION: str = "1.0"
|
|
|
|
# index → seconds mapping for OnroadScreenOffTimer (SSoT)
|
|
ONROAD_BRIGHTNESS_TIMER_VALUES = {0: 3, 1: 5, 2: 7, 3: 10, 4: 15, 5: 30, **{i: (i - 5) * 60 for i in range(6, 16)}}
|
|
VALID_TIMER_VALUES = set(ONROAD_BRIGHTNESS_TIMER_VALUES.values())
|
|
|
|
|
|
def run_migration(_params):
|
|
# migrate OnroadScreenOffBrightness
|
|
if _params.get("OnroadScreenOffBrightnessMigrated") != ONROAD_BRIGHTNESS_MIGRATION_VERSION:
|
|
try:
|
|
val = _params.get("OnroadScreenOffBrightness", return_default=True)
|
|
if val >= 2: # old: 5%, new: Screen Off
|
|
new_val = val + 1
|
|
_params.put("OnroadScreenOffBrightness", new_val)
|
|
log_str = f"Successfully migrated OnroadScreenOffBrightness from {val} to {new_val}."
|
|
else:
|
|
log_str = "Migration not required for OnroadScreenOffBrightness."
|
|
|
|
_params.put("OnroadScreenOffBrightnessMigrated", ONROAD_BRIGHTNESS_MIGRATION_VERSION)
|
|
cloudlog.info(log_str + f" Setting OnroadScreenOffBrightnessMigrated to {ONROAD_BRIGHTNESS_MIGRATION_VERSION}")
|
|
except Exception as e:
|
|
cloudlog.exception(f"Error migrating OnroadScreenOffBrightness: {e}")
|
|
|
|
# migrate OnroadScreenOffTimer
|
|
if _params.get("OnroadScreenOffTimerMigrated") != ONROAD_BRIGHTNESS_TIMER_MIGRATION_VERSION:
|
|
try:
|
|
val = _params.get("OnroadScreenOffTimer", return_default=True)
|
|
if val not in VALID_TIMER_VALUES:
|
|
_params.put("OnroadScreenOffTimer", 15)
|
|
log_str = f"Successfully migrated OnroadScreenOffTimer from {val} to 15 (default)."
|
|
else:
|
|
log_str = "Migration not required for OnroadScreenOffTimer."
|
|
|
|
_params.put("OnroadScreenOffTimerMigrated", ONROAD_BRIGHTNESS_TIMER_MIGRATION_VERSION)
|
|
cloudlog.info(log_str + f" Setting OnroadScreenOffTimerMigrated to {ONROAD_BRIGHTNESS_TIMER_MIGRATION_VERSION}")
|
|
except Exception as e:
|
|
cloudlog.exception(f"Error migrating OnroadScreenOffTimer: {e}")
|