diff options
| author | JF <jf@codingfield.com> | 2021-06-20 15:09:24 (GMT) |
|---|---|---|
| committer | Gitea <gitea@fake.local> | 2021-06-20 15:09:24 (GMT) |
| commit | d96395c81021778af35b8b4bf965bfe8663eb081 (patch) | |
| tree | 979e75d716bca8bcd69b86f24a2f2d0270a274d0 /src/components/motion | |
| parent | fb133a0167f7ea4281bca45be6efc928720d4f82 (diff) | |
| parent | 20a24f8cf56551eae1202f8dc5733bd0cf61adbf (diff) | |
Merge branch 'develop' of JF/PineTime into master
Diffstat (limited to 'src/components/motion')
| -rw-r--r-- | src/components/motion/MotionController.cpp | 7 | ||||
| -rw-r--r-- | src/components/motion/MotionController.h | 14 |
2 files changed, 21 insertions, 0 deletions
diff --git a/src/components/motion/MotionController.cpp b/src/components/motion/MotionController.cpp index e9ee314..b0dbada 100644 --- a/src/components/motion/MotionController.cpp +++ b/src/components/motion/MotionController.cpp @@ -34,3 +34,10 @@ bool MotionController::ShouldWakeUp(bool isSleeping) { void MotionController::IsSensorOk(bool isOk) { isSensorOk = isOk; } +void MotionController::Init(Pinetime::Drivers::Bma421::DeviceTypes types) { + switch(types){ + case Drivers::Bma421::DeviceTypes::BMA421: this->deviceType = DeviceTypes::BMA421; break; + case Drivers::Bma421::DeviceTypes::BMA425: this->deviceType = DeviceTypes::BMA425; break; + default: this->deviceType = DeviceTypes::Unknown; break; + } +} diff --git a/src/components/motion/MotionController.h b/src/components/motion/MotionController.h index 3a23826..ff71509 100644 --- a/src/components/motion/MotionController.h +++ b/src/components/motion/MotionController.h @@ -1,11 +1,18 @@ #pragma once #include <cstdint> +#include <drivers/Bma421.h> namespace Pinetime { namespace Controllers { class MotionController { public: + enum class DeviceTypes{ + Unknown, + BMA421, + BMA425, + }; + void Update(int16_t x, int16_t y, int16_t z, uint32_t nbSteps); int16_t X() const { @@ -27,6 +34,12 @@ namespace Pinetime { return isSensorOk; } + DeviceTypes DeviceType() const { + return deviceType; + } + + void Init(Pinetime::Drivers::Bma421::DeviceTypes types); + private: uint32_t nbSteps; int16_t x; @@ -34,6 +47,7 @@ namespace Pinetime { int16_t z; int16_t lastYForWakeUp = 0; bool isSensorOk = false; + DeviceTypes deviceType = DeviceTypes::Unknown; }; } }
\ No newline at end of file |
