summaryrefslogtreecommitdiff
path: root/src/displayapp/DisplayApp.cpp
diff options
context:
space:
mode:
authorJean-François Milants <jf@codingfield.com>2021-03-31 19:47:27 +0200
committerJean-François Milants <jf@codingfield.com>2021-04-04 15:56:04 +0200
commit68bdaee1cc301a2aca1849f38d2596debe7d67d1 (patch)
tree00f3bd9a1554c286aa2d5bd3a86bcfcdf7ba7171 /src/displayapp/DisplayApp.cpp
parent04fc33e2d479161ec261f932b908dffbd73e227f (diff)
First integration of the motion sensor (bma 421) : step counting + wake on wrist rotation + app to see the value of the 3 axis in "real time".
Diffstat (limited to 'src/displayapp/DisplayApp.cpp')
-rw-r--r--src/displayapp/DisplayApp.cpp15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/displayapp/DisplayApp.cpp b/src/displayapp/DisplayApp.cpp
index 3de26991..da398dcf 100644
--- a/src/displayapp/DisplayApp.cpp
+++ b/src/displayapp/DisplayApp.cpp
@@ -1,10 +1,12 @@
#include "DisplayApp.h"
#include <libraries/log/nrf_log.h>
#include <displayapp/screens/HeartRate.h>
+#include <displayapp/screens/Motion.h>
#include "components/battery/BatteryController.h"
#include "components/ble/BleController.h"
#include "components/datetime/DateTimeController.h"
#include "components/ble/NotificationManager.h"
+#include "components/motion/MotionController.h"
#include "displayapp/screens/ApplicationList.h"
#include "displayapp/screens/Brightness.h"
#include "displayapp/screens/Clock.h"
@@ -34,7 +36,8 @@ DisplayApp::DisplayApp(Drivers::St7789 &lcd, Components::LittleVgl &lvgl, Driver
System::SystemTask &systemTask,
Pinetime::Controllers::NotificationManager& notificationManager,
Pinetime::Controllers::HeartRateController& heartRateController,
- Controllers::Settings &settingsController) :
+ Controllers::Settings &settingsController,
+ Pinetime::Controllers::MotionController& motionController) :
lcd{lcd},
lvgl{lvgl},
batteryController{batteryController},
@@ -42,11 +45,12 @@ DisplayApp::DisplayApp(Drivers::St7789 &lcd, Components::LittleVgl &lvgl, Driver
dateTimeController{dateTimeController},
watchdog{watchdog},
touchPanel{touchPanel},
- currentScreen{new Screens::Clock(this, dateTimeController, batteryController, bleController, notificationManager, settingsController, heartRateController) },
+ currentScreen{new Screens::Clock(this, dateTimeController, batteryController, bleController, notificationManager, settingsController, heartRateController, motionController) },
systemTask{systemTask},
notificationManager{notificationManager},
heartRateController{heartRateController},
- settingsController{settingsController} {
+ settingsController{settingsController},
+ motionController{motionController} {
msgQueue = xQueueCreate(queueSize, itemSize);
onClockApp = true;
}
@@ -178,7 +182,7 @@ void DisplayApp::Refresh() {
break;
case Messages::UpdateDateTime:
// Added to remove warning
- // What should happen here?
+ // What should happen here?
break;
}
}
@@ -204,7 +208,7 @@ void DisplayApp::RunningState() {
case Apps::None:
case Apps::Launcher: currentScreen = std::make_unique<Screens::ApplicationList>(this, settingsController); break;
case Apps::Clock:
- currentScreen = std::make_unique<Screens::Clock>(this, dateTimeController, batteryController, bleController, notificationManager, settingsController, heartRateController);
+ currentScreen = std::make_unique<Screens::Clock>(this, dateTimeController, batteryController, bleController, notificationManager, settingsController, heartRateController, motionController);
onClockApp = true;
break;
case Apps::SysInfo: currentScreen = std::make_unique<Screens::SystemInfo>(this, dateTimeController, batteryController, brightnessController, bleController, watchdog); break;
@@ -219,6 +223,7 @@ void DisplayApp::RunningState() {
case Apps::FirmwareValidation: currentScreen = std::make_unique<Screens::FirmwareValidation>(this, validator); break;
case Apps::Notifications: currentScreen = std::make_unique<Screens::Notifications>(this, notificationManager, systemTask.nimble().alertService(), Screens::Notifications::Modes::Normal); break;
case Apps::HeartRate: currentScreen = std::make_unique<Screens::HeartRate>(this, heartRateController); break;
+ case Apps::Motion: currentScreen = std::make_unique<Screens::Motion>(this, motionController); break;
}
nextApp = Apps::None;
}