diff options
author | Jean-François Milants <jf@codingfield.com> | 2021-04-09 21:16:21 +0200 |
---|---|---|
committer | Jean-François Milants <jf@codingfield.com> | 2021-04-09 21:16:21 +0200 |
commit | 15b3b8e282dd5b2132b0095716cd9d88740d4579 (patch) | |
tree | c26870103f8baaa933399cfb86cca25aa7e60d8b /src/components/motor | |
parent | 9ac4be8b759bb2cedeb999ce5e87d983261beded (diff) | |
parent | 57b4c3f0edc6acfa31bd2160abdcd6091920ba63 (diff) |
Merge branch 'develop' into motion-sensor
# Conflicts:
# src/CMakeLists.txt
# src/displayapp/Apps.h
# src/displayapp/DisplayApp.cpp
# src/displayapp/DisplayApp.h
# src/displayapp/lv_pinetime_theme.c
# src/displayapp/screens/ApplicationList.cpp
# src/drivers/TwiMaster.cpp
# src/systemtask/SystemTask.h
Diffstat (limited to 'src/components/motor')
-rw-r--r-- | src/components/motor/MotorController.cpp | 7 | ||||
-rw-r--r-- | src/components/motor/MotorController.h | 3 |
2 files changed, 9 insertions, 1 deletions
diff --git a/src/components/motor/MotorController.cpp b/src/components/motor/MotorController.cpp index 7f53fbf7..345234b3 100644 --- a/src/components/motor/MotorController.cpp +++ b/src/components/motor/MotorController.cpp @@ -7,6 +7,8 @@ APP_TIMER_DEF(vibTimer); using namespace Pinetime::Controllers; +MotorController::MotorController( Controllers::Settings &settingsController ) : settingsController{settingsController} {} + void MotorController::Init() { nrf_gpio_cfg_output(pinMotor); nrf_gpio_pin_set(pinMotor); @@ -14,7 +16,10 @@ void MotorController::Init() { app_timer_create(&vibTimer, APP_TIMER_MODE_SINGLE_SHOT, vibrate); } -void MotorController::SetDuration(uint8_t motorDuration) { +void MotorController::SetDuration(uint8_t motorDuration) { + + if ( settingsController.GetVibrationStatus() == Controllers::Settings::Vibration::OFF ) return; + nrf_gpio_pin_clear(pinMotor); /* Start timer for motorDuration miliseconds and timer triggers vibrate() when it finishes*/ app_timer_start(vibTimer, APP_TIMER_TICKS(motorDuration), NULL); diff --git a/src/components/motor/MotorController.h b/src/components/motor/MotorController.h index bdc20c0c..2f2e0343 100644 --- a/src/components/motor/MotorController.h +++ b/src/components/motor/MotorController.h @@ -2,6 +2,7 @@ #include <cstdint> #include "app_timer.h" +#include "components/settings/Settings.h" namespace Pinetime { namespace Controllers { @@ -9,10 +10,12 @@ namespace Pinetime { class MotorController { public: + MotorController( Controllers::Settings &settingsController ); void Init(); void SetDuration(uint8_t motorDuration); private: + Controllers::Settings& settingsController; static void vibrate(void * p_context); }; } |