diff options
Diffstat (limited to 'src/systemtask/SystemTask.cpp')
| -rw-r--r-- | src/systemtask/SystemTask.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/systemtask/SystemTask.cpp b/src/systemtask/SystemTask.cpp index c121808..8cd6f67 100644 --- a/src/systemtask/SystemTask.cpp +++ b/src/systemtask/SystemTask.cpp @@ -59,10 +59,13 @@ SystemTask::SystemTask(Drivers::SpiMaster& spi, Drivers::Watchdog& watchdog, Pinetime::Controllers::NotificationManager& notificationManager, Pinetime::Controllers::MotorController& motorController, + Pinetime::Drivers::Hrs3300& heartRateSensor, Pinetime::Controllers::MotionController& motionController, Pinetime::Drivers::Bma421& motionSensor, Controllers::Settings& settingsController, + Pinetime::Controllers::HeartRateController& heartRateController, Pinetime::Applications::DisplayApp& displayApp, + Pinetime::Applications::HeartRateTask& heartRateApp, Pinetime::Controllers::TouchHandler& touchHandler, Pinetime::Controllers::ButtonHandler& buttonHandler) : spi {spi}, @@ -77,10 +80,13 @@ SystemTask::SystemTask(Drivers::SpiMaster& spi, watchdog {watchdog}, notificationManager {notificationManager}, motorController {motorController}, + heartRateSensor {heartRateSensor}, motionSensor {motionSensor}, settingsController {settingsController}, + heartRateController {heartRateController}, motionController {motionController}, displayApp {displayApp}, + heartRateApp(heartRateApp), touchHandler {touchHandler}, buttonHandler {buttonHandler}, nimbleController(*this, @@ -88,7 +94,8 @@ SystemTask::SystemTask(Drivers::SpiMaster& spi, dateTimeController, notificationManager, batteryController, - spiNorFlash) { + spiNorFlash, + heartRateController) { } void SystemTask::Start() { @@ -145,6 +152,10 @@ void SystemTask::Work() { displayApp.Register(this); displayApp.Start(bootError); + heartRateSensor.Init(); + heartRateSensor.Disable(); + heartRateApp.Start(); + buttonHandler.Init(this); // Button @@ -227,6 +238,7 @@ void SystemTask::Work() { lcd.Wakeup(); displayApp.PushMessage(Pinetime::Applications::Display::Messages::GoToRunning); + heartRateApp.PushMessage(Pinetime::Applications::HeartRateTask::Messages::WakeUp); if (!bleController.IsConnected()) { nimbleController.RestartFastAdv(); @@ -257,6 +269,7 @@ void SystemTask::Work() { xTimerStop(idleTimer, 0); xTimerStop(dimTimer, 0); displayApp.PushMessage(Pinetime::Applications::Display::Messages::GoToSleep); + heartRateApp.PushMessage(Pinetime::Applications::HeartRateTask::Messages::GoToSleep); break; case Messages::OnNewTime: ReloadIdleTimer(); |
