2021-03-31 13:47:27 -04:00
|
|
|
#include "MotionController.h"
|
|
|
|
|
|
|
|
using namespace Pinetime::Controllers;
|
|
|
|
|
|
|
|
void MotionController::Update(int16_t x, int16_t y, int16_t z, uint32_t nbSteps) {
|
|
|
|
this->x = x;
|
|
|
|
this->y = y;
|
|
|
|
this->z = z;
|
|
|
|
this->nbSteps = nbSteps;
|
|
|
|
}
|
|
|
|
|
|
|
|
bool MotionController::ShouldWakeUp(bool isSleeping) {
|
|
|
|
if ((x + 335) <= 670 && z < 0) {
|
|
|
|
if (not isSleeping) {
|
|
|
|
if (y <= 0) {
|
|
|
|
return false;
|
|
|
|
} else {
|
|
|
|
lastYForWakeUp = 0;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
if (y >= 0) {
|
|
|
|
lastYForWakeUp = 0;
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
if (y + 230 < lastYForWakeUp) {
|
|
|
|
lastYForWakeUp = y;
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return false;
|
|
|
|
}
|
2021-04-02 10:56:14 -04:00
|
|
|
void MotionController::IsSensorOk(bool isOk) {
|
|
|
|
isSensorOk = isOk;
|
|
|
|
}
|