From e87047652645d30ce7f13f3b731b8db6a7338238 Mon Sep 17 00:00:00 2001 From: dragonprevost Date: Tue, 13 Nov 2018 10:49:54 -0800 Subject: added header --- readme.md | 2 ++ 1 file changed, 2 insertions(+) (limited to 'readme.md') diff --git a/readme.md b/readme.md index e69de29..12f338a 100644 --- a/readme.md +++ b/readme.md @@ -0,0 +1,2 @@ +Impact Monitor +====== -- cgit v1.2.3 From 71bfb918c22028176dfba996eed81127eefefe61 Mon Sep 17 00:00:00 2001 From: dragonprevost Date: Tue, 13 Nov 2018 11:01:51 -0800 Subject: added project description --- readme.md | 1 + 1 file changed, 1 insertion(+) (limited to 'readme.md') diff --git a/readme.md b/readme.md index 12f338a..b6cf700 100644 --- a/readme.md +++ b/readme.md @@ -1,2 +1,3 @@ Impact Monitor ====== +This application is designed to operate on a [MongOH Red](https://mangoh.io/mangoh-red-new) WP85 board. Using *general input output* this project uses pthreads to probes a bmi160 chip intermitantly in order to detect a significant impact. -- cgit v1.2.3 From 7211e981440c24418904fe3c86a5bdd337ef45fd Mon Sep 17 00:00:00 2001 From: dragonprevost Date: Tue, 13 Nov 2018 11:19:07 -0800 Subject: added make file --- readme.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'readme.md') diff --git a/readme.md b/readme.md index b6cf700..df3089c 100644 --- a/readme.md +++ b/readme.md @@ -1,3 +1,11 @@ -Impact Monitor +Motion Service ====== -This application is designed to operate on a [MongOH Red](https://mangoh.io/mangoh-red-new) WP85 board. Using *general input output* this project uses pthreads to probes a bmi160 chip intermitantly in order to detect a significant impact. +This application is designed to operate on a [MongOH Red](https://mangoh.io/mangoh-red-new) WP85 board. Using **general input output** this project uses pthreads to probes a bmi160 chip intermittently in order to detect a significant impact. + +##Prerequisits +Throw in some prereq + +##Getting Started +Compile the project using +```make wp85``` + -- cgit v1.2.3 From 232df147ba604648efd8cdbb4b22f9b1d7d4818e Mon Sep 17 00:00:00 2001 From: dragonprevost Date: Tue, 13 Nov 2018 11:20:29 -0800 Subject: fixed readme formatting --- readme.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'readme.md') diff --git a/readme.md b/readme.md index df3089c..875b55f 100644 --- a/readme.md +++ b/readme.md @@ -2,10 +2,10 @@ Motion Service ====== This application is designed to operate on a [MongOH Red](https://mangoh.io/mangoh-red-new) WP85 board. Using **general input output** this project uses pthreads to probes a bmi160 chip intermittently in order to detect a significant impact. -##Prerequisits +## Prerequisits Throw in some prereq -##Getting Started +## Getting Started Compile the project using ```make wp85``` -- cgit v1.2.3 From 94ba948f63c8b3b43ed858c601bb3ddf2e59bd35 Mon Sep 17 00:00:00 2001 From: dragonprevost Date: Tue, 13 Nov 2018 11:29:57 -0800 Subject: readme formatting --- readme.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'readme.md') diff --git a/readme.md b/readme.md index 875b55f..85bb459 100644 --- a/readme.md +++ b/readme.md @@ -1,11 +1,13 @@ -Motion Service +MangOH Motion Service ====== -This application is designed to operate on a [MongOH Red](https://mangoh.io/mangoh-red-new) WP85 board. Using **general input output** this project uses pthreads to probes a bmi160 chip intermittently in order to detect a significant impact. +This application is designed to operate on a [MongOH Red](https://mangoh.io/mangoh-red-new) WP85 board. Using **general input output** this project uses pthreads to probe the onboard bmi160 chip intermittently in order to detect a significant motion on the board. -## Prerequisits +## Prerequisites Throw in some prereq ## Getting Started Compile the project using -```make wp85``` +``make wp85`` + +## Setting -- cgit v1.2.3 From 94ba7c621dffcc373c2ced094badc96042853525 Mon Sep 17 00:00:00 2001 From: dragonprevost Date: Tue, 13 Nov 2018 11:55:14 -0800 Subject: adding settings to readme --- readme.md | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) (limited to 'readme.md') diff --git a/readme.md b/readme.md index 85bb459..9b96aad 100644 --- a/readme.md +++ b/readme.md @@ -3,11 +3,23 @@ MangOH Motion Service This application is designed to operate on a [MongOH Red](https://mangoh.io/mangoh-red-new) WP85 board. Using **general input output** this project uses pthreads to probe the onboard bmi160 chip intermittently in order to detect a significant motion on the board. ## Prerequisites -Throw in some prereq -## Getting Started +When cloning use ``git clone --recurse-submodule https://github.com/brnkl/motion-service.git`` +to include the util module. + + +## Building Compile the project using -``make wp85`` +wp85: ``make wp85`` + +## Setting Variables +To change the sensitivity of the application you must edit the `motionMonitor/motionMonitor.c` file. +The Accelerometer measures acceleration in 3 dimensions, X, Y, and Z. These dimensions of acceleration are recorded and the magnitude of their resulting vector is calculated using ``double impactMagnitude = sqrt(x * x + y * y + z * z);`` +`#define DEFAULT_THRESHOLD_MS2 17` determines the magnitude of the resulting vector that will trigger the application to detect a sudden impact. + +If adjusting the value of `DEFAUTL_THRESHOLD_MS2` keep in mind that gravity implies a motionless magnitude of -9.8m/s^2 + +As visualized with the red vector here. +![Magnitude](https://www.intmath.com/vectors/img/235-3D-vector.png) -## Setting -- cgit v1.2.3 From f5725d13ef13953ffdb1c430e64b7c382aeb8285 Mon Sep 17 00:00:00 2001 From: dragonprevost Date: Tue, 13 Nov 2018 11:58:07 -0800 Subject: image formatting --- readme.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'readme.md') diff --git a/readme.md b/readme.md index 9b96aad..5f592bd 100644 --- a/readme.md +++ b/readme.md @@ -13,13 +13,14 @@ Compile the project using wp85: ``make wp85`` ## Setting Variables -To change the sensitivity of the application you must edit the `motionMonitor/motionMonitor.c` file. +To change the sensitivity of impact detection you must edit the `motionMonitor/motionMonitor.c` file. The Accelerometer measures acceleration in 3 dimensions, X, Y, and Z. These dimensions of acceleration are recorded and the magnitude of their resulting vector is calculated using ``double impactMagnitude = sqrt(x * x + y * y + z * z);`` + +![Magnitude](https://www.intmath.com/vectors/img/235-3D-vector.png) + + `#define DEFAULT_THRESHOLD_MS2 17` determines the magnitude of the resulting vector that will trigger the application to detect a sudden impact. If adjusting the value of `DEFAUTL_THRESHOLD_MS2` keep in mind that gravity implies a motionless magnitude of -9.8m/s^2 As visualized with the red vector here. -![Magnitude](https://www.intmath.com/vectors/img/235-3D-vector.png) - - -- cgit v1.2.3 From 93b7465821b72332a5f917496e637a6453bafc67 Mon Sep 17 00:00:00 2001 From: dragonprevost Date: Tue, 13 Nov 2018 12:00:44 -0800 Subject: moved vector imafe --- readme.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'readme.md') diff --git a/readme.md b/readme.md index 5f592bd..a0b6898 100644 --- a/readme.md +++ b/readme.md @@ -14,7 +14,7 @@ wp85: ``make wp85`` ## Setting Variables To change the sensitivity of impact detection you must edit the `motionMonitor/motionMonitor.c` file. -The Accelerometer measures acceleration in 3 dimensions, X, Y, and Z. These dimensions of acceleration are recorded and the magnitude of their resulting vector is calculated using ``double impactMagnitude = sqrt(x * x + y * y + z * z);`` +The Accelerometer measures acceleration in 3 dimensions, X, Y, and Z. These dimensions of acceleration are recorded and the magnitude of their resulting vector is calculated using ``double impactMagnitude = sqrt(x * x + y * y + z * z);``. As visualized in the image below. ![Magnitude](https://www.intmath.com/vectors/img/235-3D-vector.png) @@ -23,4 +23,3 @@ The Accelerometer measures acceleration in 3 dimensions, X, Y, and Z. These dime If adjusting the value of `DEFAUTL_THRESHOLD_MS2` keep in mind that gravity implies a motionless magnitude of -9.8m/s^2 -As visualized with the red vector here. -- cgit v1.2.3 From 902423bd25ae3a9019220d2fb751e5854ff45cd6 Mon Sep 17 00:00:00 2001 From: dragonprevost Date: Tue, 13 Nov 2018 12:35:41 -0800 Subject: added bindinds and example headers to readme --- readme.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'readme.md') diff --git a/readme.md b/readme.md index a0b6898..4cffa17 100644 --- a/readme.md +++ b/readme.md @@ -10,6 +10,7 @@ to include the util module. ## Building Compile the project using + wp85: ``make wp85`` ## Setting Variables @@ -21,5 +22,10 @@ The Accelerometer measures acceleration in 3 dimensions, X, Y, and Z. These dime `#define DEFAULT_THRESHOLD_MS2 17` determines the magnitude of the resulting vector that will trigger the application to detect a sudden impact. -If adjusting the value of `DEFAUTL_THRESHOLD_MS2` keep in mind that gravity implies a motionless magnitude of -9.8m/s^2 +If adjusting the value of `DEFAUTL_THRESHOLD_MS2` keep in mind that gravity implies a motionless magnitude of -9.8m/s^2. + +## Bindings + +## Example + -- cgit v1.2.3 From 854ce50239de16051fcfbb2b428792d91f53f988 Mon Sep 17 00:00:00 2001 From: dragonprevost Date: Tue, 13 Nov 2018 12:50:37 -0800 Subject: added content to bindings --- readme.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'readme.md') diff --git a/readme.md b/readme.md index 4cffa17..2b48970 100644 --- a/readme.md +++ b/readme.md @@ -25,6 +25,25 @@ The Accelerometer measures acceleration in 3 dimensions, X, Y, and Z. These dime If adjusting the value of `DEFAUTL_THRESHOLD_MS2` keep in mind that gravity implies a motionless magnitude of -9.8m/s^2. ## Bindings +``` +... +bindings: +{ + myClientApp.myComponent.brnkl_motion -> motionService.brnkl_motion +} +... +``` +``` +... +requires: +{ + api: + { + brnkl_motion.api + } +} +... +``` ## Example -- cgit v1.2.3 From 2c9f4355b1669c7f656585be7e083cbd4036d963 Mon Sep 17 00:00:00 2001 From: dragonprevost Date: Tue, 13 Nov 2018 14:36:05 -0800 Subject: added to bindings --- readme.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'readme.md') diff --git a/readme.md b/readme.md index 2b48970..2b5a6a2 100644 --- a/readme.md +++ b/readme.md @@ -25,6 +25,7 @@ The Accelerometer measures acceleration in 3 dimensions, X, Y, and Z. These dime If adjusting the value of `DEFAUTL_THRESHOLD_MS2` keep in mind that gravity implies a motionless magnitude of -9.8m/s^2. ## Bindings +App.adef ``` ... bindings: @@ -33,6 +34,7 @@ bindings: } ... ``` +Component.cdef ``` ... requires: @@ -45,6 +47,8 @@ requires: ... ``` -## Example + +## Example + -- cgit v1.2.3 From 86b44a139649d1bc63f69dde18f27abcacb94177 Mon Sep 17 00:00:00 2001 From: dragonprevost Date: Tue, 13 Nov 2018 16:11:27 -0800 Subject: fixed submodule in readme clone --- readme.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'readme.md') diff --git a/readme.md b/readme.md index 2b5a6a2..64b1b05 100644 --- a/readme.md +++ b/readme.md @@ -4,8 +4,7 @@ This application is designed to operate on a [MongOH Red](https://mangoh.io/mang ## Prerequisites -When cloning use ``git clone --recurse-submodule https://github.com/brnkl/motion-service.git`` -to include the util module. +When cloning use ``git clone https://github.com/brnkl/motion-service.git``. ## Building -- cgit v1.2.3 From caf251e70652039b5f64eb9a3b594674f1da5646 Mon Sep 17 00:00:00 2001 From: dragonprevost Date: Tue, 13 Nov 2018 19:38:14 -0800 Subject: added rough example to readme --- readme.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'readme.md') diff --git a/readme.md b/readme.md index 64b1b05..08eac0b 100644 --- a/readme.md +++ b/readme.md @@ -48,6 +48,32 @@ requires: ## Example +For getting a list of impact information you may follow this example. +``` +double x_arr [array_size]; +double y_arr [array_size]; +double z_arr [array_size]; +uint64 timestamps[array_size]; + +// Fills arrays with x, y, and z acceleration that have been recorded at each impact. + +le_result_t result = getSuddenImpact(x_arr, y_arr, z_arr, timestamps); + +for (int i = 0; i < array_size; i++) + LE_INFO("X: %d - Y: %d - Z: %d - time: %ul", x_arr[i], + y_arr[i], + z_arr[i], + timestamps[i]); +``` +For receiving the current acceleration only + +``` +double x_val; +double y_val; +double z_val; +le_result_t result = getCurrentAcceleration(x_val, y_val, z_val); +LE_INFO("Current Acceleration: X: %d - Y: %d - Z: %d"); +``` -- cgit v1.2.3 From 7ba91139470e24608d255ec0156444e26133d935 Mon Sep 17 00:00:00 2001 From: dragonprevost Date: Tue, 13 Nov 2018 19:40:11 -0800 Subject: gramard check in readme --- readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'readme.md') diff --git a/readme.md b/readme.md index 08eac0b..62b7a4e 100644 --- a/readme.md +++ b/readme.md @@ -47,7 +47,7 @@ requires: ``` -## Example +## Examples For getting a list of impact information you may follow this example. ``` double x_arr [array_size]; -- cgit v1.2.3 From 27dec638c20271b1b8aff084385d11e74bad39c8 Mon Sep 17 00:00:00 2001 From: dragonprevost Date: Thu, 15 Nov 2018 12:24:59 -0800 Subject: added examples to readme --- readme.md | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'readme.md') diff --git a/readme.md b/readme.md index 2b48970..83dc5a5 100644 --- a/readme.md +++ b/readme.md @@ -46,5 +46,38 @@ requires: ``` ## Example +For getting the current acceleration +``` +struct Acceleration{ + double x; + double y; + double z; +}; + +struct Acceleration v = value; +le_result_t result = brnkl_motion_getCurrentAccleration(&v->x, &v->y, &v->z); +``` +To get a list of all recent impacts. +``` +double xAcc[N_MAX_IMPACT_VALUES], yAcc[N_MAX_IMPACT_VALUES], zAcc[N_MAX_IMPACT_VALUES]; + uint64_t timestamps[N_MAX_IMPACT_VALUES]; + size_t xSize = N_MAX_IMPACT_VALUES, ySize = N_MAX_IMPACT_VALUES, + zSize = N_MAX_IMPACT_VALUES, timestampsSize = N_MAX_IMPACT_VALUES; + le_result_t r = brnkl_motion_getSuddenImpact( + xAcc, &xSize, yAcc, &ySize, zAcc, &zSize, timestamps, ×tampsSize); + if (r != LE_OK) + return r; + // NOTE this assumes that xSize == ySize == zSize == timestampsSize + // TODO could even assert/log this + int j = 0; + for (int i = 0; i < xSize; i++) { + recordRes[j++] = + le_avdata_RecordFloat(ref, "impactx", xAcc[i], timestamps[i]); + recordRes[j++] = + le_avdata_RecordFloat(ref, "impacty", yAcc[i], timestamps[i]); + recordRes[j++] = + le_avdata_RecordFloat(ref, "impactz", zAcc[i], timestamps[i]); + } +``` -- cgit v1.2.3 From 241513bec363481319dd71b6ad3d2040d0c00f8b Mon Sep 17 00:00:00 2001 From: dragonprevost Date: Thu, 15 Nov 2018 12:45:32 -0800 Subject: fixed readme formatting --- readme.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'readme.md') diff --git a/readme.md b/readme.md index c102175..d5e6942 100644 --- a/readme.md +++ b/readme.md @@ -82,7 +82,7 @@ double xAcc[N_MAX_IMPACT_VALUES], yAcc[N_MAX_IMPACT_VALUES], zAcc[N_MAX_IMPACT_V recordRes[j++] = le_avdata_RecordFloat(ref, "impactz", zAcc[i], timestamps[i]); } -======= +``` ## Examples For getting a list of impact information you may follow this example. @@ -113,5 +113,4 @@ le_result_t result = getCurrentAcceleration(x_val, y_val, z_val); LE_INFO("Current Acceleration: X: %d - Y: %d - Z: %d"); ->>>>>>> 7ba91139470e24608d255ec0156444e26133d935 ``` -- cgit v1.2.3 From f595007692362b15bb8bfdac6ae073a56f3709a0 Mon Sep 17 00:00:00 2001 From: dragonprevost Date: Thu, 15 Nov 2018 12:47:57 -0800 Subject: adjusted example for returning list of impacts --- readme.md | 49 +++++-------------------------------------------- 1 file changed, 5 insertions(+), 44 deletions(-) (limited to 'readme.md') diff --git a/readme.md b/readme.md index d5e6942..1075fd1 100644 --- a/readme.md +++ b/readme.md @@ -63,54 +63,15 @@ le_result_t result = brnkl_motion_getCurrentAccleration(&v->x, &v->y, &v->z); To get a list of all recent impacts. ``` -double xAcc[N_MAX_IMPACT_VALUES], yAcc[N_MAX_IMPACT_VALUES], zAcc[N_MAX_IMPACT_VALUES]; + double xAcc[N_MAX_IMPACT_VALUES], yAcc[N_MAX_IMPACT_VALUES], zAcc[N_MAX_IMPACT_VALUES]; + uint64_t timestamps[N_MAX_IMPACT_VALUES]; + size_t xSize = N_MAX_IMPACT_VALUES, ySize = N_MAX_IMPACT_VALUES, zSize = N_MAX_IMPACT_VALUES, timestampsSize = N_MAX_IMPACT_VALUES; + le_result_t r = brnkl_motion_getSuddenImpact( xAcc, &xSize, yAcc, &ySize, zAcc, &zSize, timestamps, ×tampsSize); - if (r != LE_OK) - return r; - // NOTE this assumes that xSize == ySize == zSize == timestampsSize - // TODO could even assert/log this - int j = 0; - for (int i = 0; i < xSize; i++) { - recordRes[j++] = - le_avdata_RecordFloat(ref, "impactx", xAcc[i], timestamps[i]); - recordRes[j++] = - le_avdata_RecordFloat(ref, "impacty", yAcc[i], timestamps[i]); - recordRes[j++] = - le_avdata_RecordFloat(ref, "impactz", zAcc[i], timestamps[i]); - } -``` - -## Examples -For getting a list of impact information you may follow this example. -``` -double x_arr [array_size]; -double y_arr [array_size]; -double z_arr [array_size]; -uint64 timestamps[array_size]; - -// Fills arrays with x, y, and z acceleration that have been recorded at each impact. - -le_result_t result = getSuddenImpact(x_arr, y_arr, z_arr, timestamps); - -for (int i = 0; i < array_size; i++) - LE_INFO("X: %d - Y: %d - Z: %d - time: %ul", x_arr[i], - y_arr[i], - z_arr[i], - timestamps[i]); -``` -For receiving the current acceleration only - + ``` -double x_val; -double y_val; -double z_val; -le_result_t result = getCurrentAcceleration(x_val, y_val, z_val); - -LE_INFO("Current Acceleration: X: %d - Y: %d - Z: %d"); - -``` -- cgit v1.2.3 From 0de7d02a3d9293253f27b1f868db5789ec932fd9 Mon Sep 17 00:00:00 2001 From: Nicholas Van Doorn Date: Thu, 15 Nov 2018 13:09:19 -0800 Subject: Update readme.md Co-Authored-By: dragonprevost --- readme.md | 1 - 1 file changed, 1 deletion(-) (limited to 'readme.md') diff --git a/readme.md b/readme.md index 1075fd1..d9f83da 100644 --- a/readme.md +++ b/readme.md @@ -46,7 +46,6 @@ requires: ... ``` -<<<<<<< HEAD ## Example For getting the current acceleration ``` -- cgit v1.2.3 From 4e379259292be2709834ee0d75e212f80b14e1b0 Mon Sep 17 00:00:00 2001 From: Nicholas Van Doorn Date: Thu, 15 Nov 2018 13:09:33 -0800 Subject: Update readme.md Co-Authored-By: dragonprevost --- readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'readme.md') diff --git a/readme.md b/readme.md index d9f83da..3aa0175 100644 --- a/readme.md +++ b/readme.md @@ -48,7 +48,7 @@ requires: ## Example For getting the current acceleration -``` +```C struct Acceleration{ double x; double y; -- cgit v1.2.3