diff --git a/openpilot/cereal/log.capnp b/openpilot/cereal/log.capnp index 342e4a03d4..c7a08ee105 100644 --- a/openpilot/cereal/log.capnp +++ b/openpilot/cereal/log.capnp @@ -130,6 +130,7 @@ struct OnroadEvent @0xc4fa6047f024e718 { excessiveActuation @96; bigModelLoading @100; bigModelReady @101; + bigModelFailed @102; lowBatteryDEPRECATED @40; soundsUnavailableDEPRECATED @47; diff --git a/openpilot/selfdrive/selfdrived/events.py b/openpilot/selfdrive/selfdrived/events.py index c5b2a87089..47babec414 100755 --- a/openpilot/selfdrive/selfdrived/events.py +++ b/openpilot/selfdrive/selfdrived/events.py @@ -418,6 +418,10 @@ EVENTS: dict[int, dict[str, Alert | AlertCallbackType]] = { ET.PERMANENT: EngagementAlert(AudibleAlert.complete), }, + EventName.bigModelFailed: { + ET.PERMANENT: NormalPermanentAlert("Big Model Failed ", "Restart the car to retry,\nnow driving on small model", duration=30.), + }, + EventName.lateralManeuver: { ET.WARNING: longitudinal_maneuver_alert, ET.PERMANENT: NormalPermanentAlert("Lateral Maneuver Mode"), diff --git a/openpilot/selfdrive/selfdrived/selfdrived.py b/openpilot/selfdrive/selfdrived/selfdrived.py index 3f84708eeb..9507fcfbd1 100755 --- a/openpilot/selfdrive/selfdrived/selfdrived.py +++ b/openpilot/selfdrive/selfdrived/selfdrived.py @@ -162,6 +162,8 @@ class SelfdriveD: self.big_model_ready_t = time.monotonic() if self.params.get_bool("UsbGpuActive"): self.events.add(EventName.bigModelReady) + else: + self.events.add(EventName.bigModelFailed) self.big_model_loading = loading if self.big_model_loading: self.events.add(EventName.bigModelLoading)