FintasticMan
f2df0c45ef
lowersleep: Improve algorithm by checking wrist angle
...
Inspired by https://github.com/InfiniTimeOrg/InfiniTime/pull/827#issuecomment-1881580414 .
2024-03-12 19:14:58 +01:00
apilat
a6cd3679eb
Only inhibit sleep if motion notifications are enabled, not just Bluetooth
2024-01-23 14:58:21 +01:00
FintasticMan
0f9f606b78
lowersleep: Implement Lower to Sleep functionality ( #827 )
2023-08-27 18:15:21 +02:00
Finlay Davidson
2b1eae7f59
raisewake: Improve raise to wake algorithm
...
This new algorithm calculates the number of degrees that the wrist has
rolled, and checks if that is above a threshold.
First it checks if the wrist is still enough for the acceleration values
to be considered mostly from gravity. It does this by calculating the
mean over the past 2 SystemTask loops, and checking that the variance
from that mean is below a threshold.
Then it calculates the angle the wrist is being held at, and calculates
the difference from the angle some time ago. If this difference is above
the threshold, it wakes the watch.
2023-08-17 21:21:22 +02:00
Finlay Davidson
cfe21103ea
motioncontroller: Add functions for analysis
...
These are functions for converting acceleration due to gravity to angles
in degrees, and some statistical analysis including the mean and
variance.
2023-08-17 21:21:22 +02:00
Finlay Davidson
3085bb3990
motioncontroller: Store acceleration history
...
Store history of acceleration values for the y and z axes.
2023-08-17 21:21:22 +02:00
Finlay Davidson
47ca403857
shakewake: Slightly improve accuracy
...
The accumulated speed was calculated by dividing first and multiplying
after, which results in more rounding errors than if you multiply first
and then divide. The values aren't big enough to overflow.
2023-08-17 21:21:22 +02:00
Isaac
9e128c838e
ShakeWake: Fixed instant wake after sleep issue in certain positions ( #1691 )
...
* ShakeWake: Fixed instant wake after sleep issue in certain positions
Add lastX var to track the previous x acceleration for correct calculation of speed.
Reorder axes for clarity.
---------
Co-authored-by: Isaac <114504394+isaacc27@users.noreply.github.com>
Co-authored-by: FintasticMan <52415484+FintasticMan@users.noreply.github.com>
2023-06-17 17:37:53 +02:00
Riku Isokoski
4d93ae6d27
MotionController: Remove IsOk variable
...
We should be able to assume MotionController is safe to use.
2023-04-16 14:15:49 +00:00
Finlay Davidson
e55a76f740
raisewake: Change names in line with the style guide
2023-03-09 10:17:03 +02:00
Finlay Davidson
49ad5be742
motioncontroller: Fix clang-tidy warnings
...
Also move one-line functions to header.
2023-03-09 10:17:03 +02:00
Finlay Davidson
76e79df375
shakewake: Switch to more generic timekeeping
...
Could be used for other motion-based algorithms in the future.
2023-03-09 10:17:03 +02:00
Finlay Davidson
a43463762c
shakewake: Simplify return code
2023-03-09 10:17:03 +02:00
Finlay Davidson
6cf6455313
shakewake: Switch to more generic last* vars
...
These could be used for other motion-based algorithms in the future.
Also fix includes.
2023-03-09 10:17:03 +02:00
Finlay Davidson
f993311830
shakewake: Fix names according to style guide
2023-03-09 10:17:03 +02:00
Finlay Davidson
96165a8541
Format header files
...
In my PR updating clang-format, I forgot to also format the headers.
2023-01-09 21:41:21 +01:00
Finlay Davidson
eda96ffadc
Update clang-{format,tidy} to 14
...
Also add configuration options only available in 13 and 14.
Fixes warning about -fstack-usage in clang-tidy check.
2023-01-04 17:15:33 +01:00
Riku Isokoski
afea7ca0d1
Update clang-tidy configuration and fix some warnings ( #1474 )
...
Don't enable coding conventions from unrelated projects. Only enable
generic checks.
2022-12-18 18:14:36 +01:00
Tim Keller
5c13200238
Fix crash upon leaving app.
...
Code formatting
2022-01-04 02:00:03 +00:00
Tim Keller
d2510d7926
Better Sensitivity UI, Calibration button added
2022-01-04 02:00:02 +00:00
Tim Keller
6d74820698
Add averaging to wake threshold. Makes it take more then just a "flick" to turn on
2022-01-04 01:59:01 +00:00
Tim Keller
3ebf002f9d
Add start of settings app for senstivity.
...
really just debugging. I want to make it more configurable then high med low.
Position of setting needs a new location...dynamicly adding it currently at the end. Which honestly im fine with.
2022-01-04 01:59:01 +00:00
Tim Keller
ad42cdf120
Cleanup
2022-01-04 01:57:18 +00:00
Tim Keller
d270275bd2
Added Shake to wake
2022-01-04 01:57:18 +00:00
Stephanie
e0013e7304
Ran clang-format
2021-12-30 21:51:43 +01:00
Stephanie
a65f173e3c
Renamed confusing variables and general cleanup
2021-12-30 21:51:43 +01:00
Stephanie
f7d1b3f368
Moved trip meter update to MotionController and changed trip meter logic
2021-12-30 21:51:43 +01:00
Stephanie
fb87fdb2d9
Changed lap counter to trip meter
2021-12-30 21:51:43 +01:00
Stephanie
d034bd131e
Added "lap" button to step counter
2021-12-30 21:51:43 +01:00
Reinhold Gschweicher
ac7b2da611
Update includes to to be relative to src directory
...
Don't use relative imports like `../foo.h` as those depend on the
relative position of both files. Rather than that use imports relative
to the `src` directory, which explicitly is part of the include
directories.
2021-11-15 22:02:49 +01:00
Jean-François Milants
60a49af886
Add MotionService : expose step count and RAW X/Y/Z values to the host.
2021-10-17 08:23:44 +02:00
JF002
c6dca25b9f
Add support for BMA425 acceleration sensor. ( #440 )
...
* Add support for BMA425 acceleration sensor.
2021-06-19 20:27:59 +02:00
Joaquim
cd0d85dff9
Merge branch 'develop' of
...
https://github.com/JF002/InfiniTime into StepsApp
2021-04-26 21:29:48 +01:00
Avamander
6989854519
Changed access modified indentation
2021-04-24 12:00:45 +03:00
Avamander
40d45d923b
Reformatted all the files according to clang-format style
2021-04-24 11:39:53 +03:00
Joaquim
cd4a3e1dfe
New Steps app
...
Settings to set the steps goal
More detail in Motion app
New 42px Font
2021-04-19 15:28:38 +01:00
Jean-François Milants
52a90288fd
Handle return code from BMA driver, and set a flag is the initialization fails. This allows to boot InfiniTime even if the device cannot initialize.
2021-04-04 15:56:11 +02:00
Jean-François Milants
68bdaee1cc
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".
2021-04-04 15:56:04 +02:00