mirror of
https://github.com/sunnypilot/sunnypilot.git
synced 2026-09-18 10:23:43 +08:00
Merge branch 'upstream/master' into sync-20260517-new-new
This commit is contained in:
@@ -24,20 +24,19 @@ HEADLESS = os.getenv("WINDOWED", "0") != "1"
|
||||
|
||||
def setup_state():
|
||||
params = Params()
|
||||
params.put("HasAcceptedTerms", terms_version)
|
||||
params.put("CompletedTrainingVersion", training_version)
|
||||
params.put("DongleId", "test123456789")
|
||||
params.put("HasAcceptedTerms", terms_version, block=True)
|
||||
params.put("CompletedTrainingVersion", training_version, block=True)
|
||||
params.put("DongleId", "test123456789", block=True)
|
||||
# Combined description for layouts that still use it (BIG home, settings/software)
|
||||
params.put("UpdaterCurrentDescription", "0.10.1 / test-branch / abc1234 / Nov 30")
|
||||
params.put("UpdaterCurrentReleaseNotes", parse_release_notes(BASEDIR))
|
||||
params.put("HasAcceptedTermsSP", terms_version_sp)
|
||||
params.put("CompletedSunnylinkConsentVersion", sunnylink_consent_version)
|
||||
|
||||
params.put("UpdaterCurrentDescription", "0.10.1 / test-branch / abc1234 / Nov 30", block=True)
|
||||
params.put("UpdaterCurrentReleaseNotes", parse_release_notes(BASEDIR), block=True)
|
||||
params.put("HasAcceptedTermsSP", terms_version_sp, block=True)
|
||||
params.put("CompletedSunnylinkConsentVersion", sunnylink_consent_version, block=True)
|
||||
# Params for mici home
|
||||
params.put("Version", "0.10.1")
|
||||
params.put("GitBranch", "test-branch")
|
||||
params.put("GitCommit", "abc12340ff9131237ba23a1d0fbd8edf9c80e87")
|
||||
params.put("GitCommitDate", "'1732924800 2024-11-30 00:00:00 +0000'")
|
||||
params.put("Version", "0.10.1", block=True)
|
||||
params.put("GitBranch", "test-branch", block=True)
|
||||
params.put("GitCommit", "abc12340ff9131237ba23a1d0fbd8edf9c80e87", block=True)
|
||||
params.put("GitCommitDate", "'1732924800 2024-11-30 00:00:00 +0000'", block=True)
|
||||
|
||||
# Patch Api.get_token to return a static token so the pairing QR code is deterministic across runs
|
||||
Api.get_token = lambda self, payload_extra=None, expiry_hours=0: "test_token"
|
||||
|
||||
@@ -126,12 +126,12 @@ def setup_offroad_alerts() -> None:
|
||||
|
||||
def setup_update_available(available: bool = True) -> None:
|
||||
params = Params()
|
||||
params.put_bool("UpdateAvailable", available)
|
||||
params.put("UpdaterAvailableBranches", ",".join(["test-branch", "test-branch-2", BRANCH_NAME]))
|
||||
params.put_bool("UpdateAvailable", available, block=True)
|
||||
params.put("UpdaterAvailableBranches", ",".join(["test-branch", "test-branch-2", BRANCH_NAME]), block=True)
|
||||
if available:
|
||||
params.put("UpdaterNewDescription", f"0.10.2 / {BRANCH_NAME} / 0a1b2c3 / Jan 01")
|
||||
params.put("UpdaterNewReleaseNotes", parse_release_notes(BASEDIR))
|
||||
params.put("UpdaterTargetBranch", BRANCH_NAME)
|
||||
params.put("UpdaterNewDescription", f"0.10.2 / {BRANCH_NAME} / 0a1b2c3 / Jan 01", block=True)
|
||||
params.put("UpdaterNewReleaseNotes", parse_release_notes(BASEDIR), block=True)
|
||||
params.put("UpdaterTargetBranch", BRANCH_NAME, block=True)
|
||||
else:
|
||||
params.remove("UpdaterNewDescription")
|
||||
params.remove("UpdaterNewReleaseNotes")
|
||||
@@ -144,22 +144,22 @@ def setup_calibration_params() -> None:
|
||||
calib = messaging.new_message('liveCalibration')
|
||||
calib.liveCalibration.calStatus = log.LiveCalibrationData.Status.calibrated
|
||||
calib.liveCalibration.rpyCalib = [0.0, math.radians(2.5), math.radians(-1.2)]
|
||||
params.put("CalibrationParams", calib.to_bytes())
|
||||
params.put("CalibrationParams", calib.to_bytes(), block=True)
|
||||
# live delay
|
||||
delay = messaging.new_message('liveDelay')
|
||||
delay.liveDelay.calPerc = 75
|
||||
params.put("LiveDelay", delay.to_bytes())
|
||||
params.put("LiveDelay", delay.to_bytes(), block=True)
|
||||
# live torque parameters
|
||||
torque = messaging.new_message('liveTorqueParameters')
|
||||
torque.liveTorqueParameters.useParams = True
|
||||
torque.liveTorqueParameters.calPerc = 60
|
||||
params.put("LiveTorqueParameters", torque.to_bytes())
|
||||
params.put("LiveTorqueParameters", torque.to_bytes(), block=True)
|
||||
|
||||
|
||||
def setup_developer_params() -> None:
|
||||
CP = car.CarParams()
|
||||
CP.alphaLongitudinalAvailable = True
|
||||
Params().put("CarParamsPersistent", CP.to_bytes())
|
||||
Params().put("CarParamsPersistent", CP.to_bytes(), block=True)
|
||||
|
||||
|
||||
# --- Send functions ---
|
||||
@@ -354,7 +354,10 @@ def build_mici_script(pm: PubMaster, main_layout, script: Script) -> None:
|
||||
def setup_offroad_alerts_and_refresh() -> None:
|
||||
"""Setup function to trigger offroad alerts and force a refresh on the alerts layout."""
|
||||
setup_offroad_alerts()
|
||||
main_layout._alerts_layout.refresh()
|
||||
params = Params()
|
||||
main_layout._alerts_layout._pending_params = ({"UpdaterNewDescription": params.get("UpdaterNewDescription")} |
|
||||
{alert_data.key: params.get(alert_data.key) for alert_data in main_layout._alerts_layout.sorted_alerts})
|
||||
main_layout._alerts_layout._refresh()
|
||||
|
||||
swipe_right(width, wait_after=WAIT_SHORT) # open alerts
|
||||
script.setup(setup_offroad_alerts_and_refresh) # show alerts
|
||||
|
||||
Reference in New Issue
Block a user