diff --git a/src/systemtask/SystemTask.cpp b/src/systemtask/SystemTask.cpp index 246e7cec..5a885f17 100644 --- a/src/systemtask/SystemTask.cpp +++ b/src/systemtask/SystemTask.cpp @@ -342,8 +342,12 @@ void SystemTask::Work() { if (settingsController.GetNotificationStatus() != Controllers::Settings::Notification::Sleep && settingsController.GetChimeOption() == Controllers::Settings::ChimesOption::Hours && alarmController.State() != AlarmController::AlarmState::Alerting) { + // if sleeping, we can't send a chime to displayApp yet (SPI flash switched off) + // request running first and repush the chime message if (state == SystemTaskState::Sleeping) { GoToRunning(); + PushMessage(msg); + } else { displayApp.PushMessage(Pinetime::Applications::Display::Messages::Chime); } } @@ -353,8 +357,12 @@ void SystemTask::Work() { if (settingsController.GetNotificationStatus() != Controllers::Settings::Notification::Sleep && settingsController.GetChimeOption() == Controllers::Settings::ChimesOption::HalfHours && alarmController.State() != AlarmController::AlarmState::Alerting) { + // if sleeping, we can't send a chime to displayApp yet (SPI flash switched off) + // request running first and repush the chime message if (state == SystemTaskState::Sleeping) { GoToRunning(); + PushMessage(msg); + } else { displayApp.PushMessage(Pinetime::Applications::Display::Messages::Chime); } }