quickcadence
Version:
Cadence detection for accelerometer data. Available in RxJS and Bacon.js flavors.
50 lines (32 loc) • 1.5 kB
Markdown
# quickcadence
[](https://gyazo.com/fa11d9be4f8d3a14ea2ae7f5684d874f)
[](https://circleci.com/gh/andrewhao/quickcadence)
[](https://codeclimate.com/github/andrewhao/quickcadence)
Cadence detection for event-driven accelerometer data
## Usage
```js
var QuickCadence = require('quickcadence')
// On a Node `streams2` stream, or BaconJS `Observable` stream.
// Returns a BaconJS Observable.
//
// The stream must be object that matches the schema:
// {x: <xAccelValue>, y: <yAccelValue>, z: <zAccelValue>}
var cadenceStream = QuickCadence.pipe(stream);
cadenceStream.onValue(function(val) { console.log(val) });
// Values emitted are integers of the current cadence calculation.
// `93.22`
// `88.11`
// `79.25` ...
```
## Limitations
Power is matched off of the `y` acceleration axis, which works well for
wrist-mounted accelerometers (watches). Further work can be done to
generalize this algorithm to all-axes calculations.
## Data harness for your accelerometer data
Put CSV dump of files with other `csv` files in the `samples` directory.
Start the dev server to load the data harness:
$ npm start
$ open http://localhost:8080/reference/index.html
## Build
$ npm run build
Assets are generated into the `builds/` directory.