diff --git a/openpilot/cereal/custom.capnp b/openpilot/cereal/custom.capnp index 086b10c01c..cfbbbe472a 100644 --- a/openpilot/cereal/custom.capnp +++ b/openpilot/cereal/custom.capnp @@ -353,6 +353,7 @@ struct OnroadEventSP @0xda96579883444c35 { speedLimitPending @22; e2eChime @23; laneChangeRoadEdge @24; + bigModelReady @25; } } diff --git a/openpilot/selfdrive/selfdrived/selfdrived.py b/openpilot/selfdrive/selfdrived/selfdrived.py index 180b58c916..dfaa94e013 100755 --- a/openpilot/selfdrive/selfdrived/selfdrived.py +++ b/openpilot/selfdrive/selfdrived/selfdrived.py @@ -198,6 +198,7 @@ class SelfdriveD(CruiseHelper): loading = self.params.get_bool("ChestnutLoading") if self.big_model_loading and not loading: self.big_model_ready_t = time.monotonic() + self.events_sp.add(custom.OnroadEventSP.EventName.bigModelReady) self.big_model_loading = loading if self.big_model_loading: self.events.add(EventName.bigModelLoading) diff --git a/openpilot/sunnypilot/selfdrive/selfdrived/events.py b/openpilot/sunnypilot/selfdrive/selfdrived/events.py index 3c010cc776..b50873dea4 100644 --- a/openpilot/sunnypilot/selfdrive/selfdrived/events.py +++ b/openpilot/sunnypilot/selfdrive/selfdrived/events.py @@ -252,4 +252,12 @@ EVENTS_SP: dict[int, dict[str, Alert | AlertCallbackType]] = { AlertStatus.userPrompt, AlertSize.small, Priority.LOW, VisualAlert.none, AudibleAlert.prompt, 0.1), }, + + EventNameSP.bigModelReady: { + ET.PERMANENT: Alert( + "Big Model Ready", + "", + AlertStatus.normal, AlertSize.small, + Priority.LOW, VisualAlert.none, AudibleAlert.prompt, 2.), + }, }