aboutsummaryrefslogtreecommitdiffstats
path: root/src/systemtask
diff options
context:
space:
mode:
authorpanky-codes <pankaj.sarathy1992@gmail.com>2021-03-20 22:45:29 +0100
committerpanky-codes <pankaj.sarathy1992@gmail.com>2021-03-20 22:45:29 +0100
commit534565088033221d29e968acf7267145ff10203b (patch)
treec93ae7c7aa7995204f56b979ff6524feba83763d /src/systemtask
parent754ac233040af805ffa2e15b24539d5d02a876e5 (diff)
parenta3ff2e46ca9e663af864a2bd04b9afa3efbddfb8 (diff)
Merged upstream
Diffstat (limited to 'src/systemtask')
-rw-r--r--src/systemtask/SystemTask.cpp28
-rw-r--r--src/systemtask/SystemTask.h14
2 files changed, 29 insertions, 13 deletions
diff --git a/src/systemtask/SystemTask.cpp b/src/systemtask/SystemTask.cpp
index 6e6360a4..19a416ba 100644
--- a/src/systemtask/SystemTask.cpp
+++ b/src/systemtask/SystemTask.cpp
@@ -14,7 +14,6 @@
#include "BootloaderVersion.h"
#include "components/ble/BleController.h"
-#include "displayapp/LittleVgl.h"
#include "drivers/Cst816s.h"
#include "drivers/St7789.h"
#include "drivers/InternalFlash.h"
@@ -41,13 +40,15 @@ SystemTask::SystemTask(Drivers::SpiMaster &spi, Drivers::St7789 &lcd,
Controllers::Battery &batteryController, Controllers::Ble &bleController,
Controllers::DateTime &dateTimeController,
Pinetime::Controllers::MotorController& motorController,
- Pinetime::Drivers::Hrs3300& heartRateSensor) :
+ Pinetime::Drivers::Hrs3300& heartRateSensor,
+ Controllers::Settings &settingsController) :
spi{spi}, lcd{lcd}, spiNorFlash{spiNorFlash},
twiMaster{twiMaster}, touchPanel{touchPanel}, lvgl{lvgl}, batteryController{batteryController},
heartRateController{*this},
bleController{bleController}, dateTimeController{dateTimeController},
watchdog{}, watchdogView{watchdog},
motorController{motorController}, heartRateSensor{heartRateSensor},
+ settingsController{settingsController},
nimbleController(*this, bleController,dateTimeController, notificationManager, batteryController, spiNorFlash, heartRateController) {
systemTasksMsgQueue = xQueueCreate(10, 1);
}
@@ -74,6 +75,7 @@ void SystemTask::Work() {
spiNorFlash.Wakeup();
nimbleController.Init();
nimbleController.StartAdvertising();
+ brightnessController.Init();
lcd.Init();
twiMaster.Init();
@@ -81,14 +83,16 @@ void SystemTask::Work() {
batteryController.Init();
motorController.Init();
+ settingsController.Init();
+
displayApp.reset(new Pinetime::Applications::DisplayApp(lcd, lvgl, touchPanel, batteryController, bleController,
dateTimeController, watchdogView, *this, notificationManager,
- heartRateController));
+ heartRateController, settingsController));
displayApp->Start();
batteryController.Update();
- displayApp->PushMessage(Pinetime::Applications::DisplayApp::Messages::UpdateBatteryLevel);
+ displayApp->PushMessage(Pinetime::Applications::Display::Messages::UpdateBatteryLevel);
heartRateSensor.Init();
heartRateSensor.Disable();
@@ -141,8 +145,8 @@ void SystemTask::Work() {
touchPanel.Wakeup();
lcd.Wakeup();
- displayApp->PushMessage(Applications::DisplayApp::Messages::GoToRunning);
- displayApp->PushMessage(Applications::DisplayApp::Messages::UpdateBatteryLevel);
+ displayApp->PushMessage(Pinetime::Applications::Display::Messages::GoToRunning);
+ displayApp->PushMessage(Pinetime::Applications::Display::Messages::UpdateBatteryLevel);
heartRateApp->PushMessage(Pinetime::Applications::HeartRateTask::Messages::WakeUp);
isSleeping = false;
@@ -152,17 +156,17 @@ void SystemTask::Work() {
isGoingToSleep = true;
NRF_LOG_INFO("[systemtask] Going to sleep");
xTimerStop(idleTimer, 0);
- displayApp->PushMessage(Pinetime::Applications::DisplayApp::Messages::GoToSleep);
+ displayApp->PushMessage(Pinetime::Applications::Display::Messages::GoToSleep);
heartRateApp->PushMessage(Pinetime::Applications::HeartRateTask::Messages::GoToSleep);
break;
case Messages::OnNewTime:
ReloadIdleTimer();
- displayApp->PushMessage(Pinetime::Applications::DisplayApp::Messages::UpdateDateTime);
+ displayApp->PushMessage(Pinetime::Applications::Display::Messages::UpdateDateTime);
break;
case Messages::OnNewNotification:
if(isSleeping && !isWakingUp) GoToRunning();
if(notificationManager.IsVibrationEnabled()) motorController.SetDuration(35);
- displayApp->PushMessage(Pinetime::Applications::DisplayApp::Messages::NewNotification);
+ displayApp->PushMessage(Pinetime::Applications::Display::Messages::NewNotification);
break;
case Messages::BleConnected:
ReloadIdleTimer();
@@ -172,7 +176,7 @@ void SystemTask::Work() {
case Messages::BleFirmwareUpdateStarted:
doNotGoToSleep = true;
if(isSleeping && !isWakingUp) GoToRunning();
- displayApp->PushMessage(Pinetime::Applications::DisplayApp::Messages::BleFirmwareUpdateStarted);
+ displayApp->PushMessage(Pinetime::Applications::Display::Messages::BleFirmwareUpdateStarted);
break;
case Messages::BleFirmwareUpdateFinished:
doNotGoToSleep = false;
@@ -230,7 +234,7 @@ void SystemTask::OnButtonPushed() {
if(!isSleeping) {
NRF_LOG_INFO("[systemtask] Button pushed");
PushMessage(Messages::OnButtonEvent);
- displayApp->PushMessage(Pinetime::Applications::DisplayApp::Messages::ButtonPushed);
+ displayApp->PushMessage(Pinetime::Applications::Display::Messages::ButtonPushed);
}
else {
if(!isWakingUp) {
@@ -250,7 +254,7 @@ void SystemTask::OnTouchEvent() {
NRF_LOG_INFO("[systemtask] Touch event");
if(!isSleeping) {
PushMessage(Messages::OnTouchEvent);
- displayApp->PushMessage(Pinetime::Applications::DisplayApp::Messages::TouchEvent);
+ displayApp->PushMessage(Pinetime::Applications::Display::Messages::TouchEvent);
}
}
diff --git a/src/systemtask/SystemTask.h b/src/systemtask/SystemTask.h
index c650d085..cc693735 100644
--- a/src/systemtask/SystemTask.h
+++ b/src/systemtask/SystemTask.h
@@ -7,13 +7,22 @@
#include <timers.h>
#include <heartratetask/HeartRateTask.h>
#include <components/heartrate/HeartRateController.h>
+#include <components/settings/Settings.h>
#include "SystemMonitor.h"
#include "components/battery/BatteryController.h"
#include "components/ble/NimbleController.h"
#include "components/ble/NotificationManager.h"
#include "components/motor/MotorController.h"
+#ifdef PINETIME_IS_RECOVERY
+#include "displayapp/DisplayAppRecovery.h"
+#include "displayapp/DummyLittleVgl.h"
+#else
+#include "components/settings/Settings.h"
#include "displayapp/DisplayApp.h"
+#include "displayapp/LittleVgl.h"
+#endif
+
#include "drivers/Watchdog.h"
namespace Pinetime {
@@ -39,7 +48,8 @@ namespace Pinetime {
Controllers::Battery &batteryController, Controllers::Ble &bleController,
Controllers::DateTime &dateTimeController,
Pinetime::Controllers::MotorController& motorController,
- Pinetime::Drivers::Hrs3300& heartRateSensor);
+ Pinetime::Drivers::Hrs3300& heartRateSensor,
+ Controllers::Settings &settingsController);
void Start();
@@ -77,7 +87,9 @@ namespace Pinetime {
Pinetime::Controllers::NotificationManager notificationManager;
Pinetime::Controllers::MotorController& motorController;
Pinetime::Drivers::Hrs3300& heartRateSensor;
+ Pinetime::Controllers::Settings& settingsController;
Pinetime::Controllers::NimbleController nimbleController;
+ Controllers::BrightnessController brightnessController;
static constexpr uint8_t pinSpiSck = 2;
static constexpr uint8_t pinSpiMosi = 3;