summaryrefslogtreecommitdiff
path: root/src/systemtask/SystemTask.cpp
diff options
context:
space:
mode:
authorMichele Bini <michele.bini@gmail.com>2022-03-30 20:50:42 (GMT)
committerMichele Bini <michele.bini@gmail.com>2022-03-31 00:12:29 (GMT)
commit12e938959eb1e2146fdec3fee7b9a304aa6889d2 (patch)
treef57f54615ad00327e8dc33c958ec67773c49f655 /src/systemtask/SystemTask.cpp
parentff68f91be9cce2fb27d3b3aea9ab26fa224ea0eb (diff)
with heart
Diffstat (limited to 'src/systemtask/SystemTask.cpp')
-rw-r--r--src/systemtask/SystemTask.cpp15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/systemtask/SystemTask.cpp b/src/systemtask/SystemTask.cpp
index 7a0d151..4e7f3c0 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();