forked from landlessness/node-BNO055
-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request landlessness#3 from gradymorgan/master
Adding some features to library
- Loading branch information
Showing
3 changed files
with
228 additions
and
61 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,69 @@ | ||
|
||
# node-BNO055 | ||
|
||
## Installation | ||
|
||
Install i2c following instructions here: | ||
https://github.com/kelly/node-i2c | ||
|
||
```sh | ||
$ npm install --save bno-055 | ||
``` | ||
|
||
## Usage | ||
|
||
```js | ||
|
||
var BNO055 = require('bno-055'); | ||
|
||
var async = require('async'); | ||
|
||
var imu = new BNO055(); | ||
|
||
imu.beginNDOF(function() { | ||
console.info('imu running'); | ||
|
||
setInterval(function() { | ||
async.series({ | ||
calibrationStatus: imu.getCalibrationStatus.bind(imu), | ||
quaternion: imu.getQuaternion.bind(imu), | ||
euler: imu.getEuler.bind(imu), | ||
linearAcceleration: imu.getLinearAcceleration.bind(imu) | ||
}, | ||
function(err, results) { | ||
console.info( 'imu: ', JSON.stringify(results) ); | ||
}); | ||
}, 1000); | ||
}); | ||
``` | ||
|
||
Change the mounting position of the sensor. See section 3.4 Axis remap in the datasheet for details. | ||
|
||
```js | ||
var imu = new BNO055({ | ||
orientation: BNO055.orientation(BNO055.AXIS_REMAP_Y, BNO055.AXIS_REMAP_X, BNO055.AXIS_REMAP_Z, 0,1,0) | ||
}); | ||
``` | ||
|
||
Resuse the sensor's calibration data. See section 3.10 Calibration for details on manual calibration. | ||
|
||
```js | ||
// get calibration values, and save for later | ||
var calibrationData; | ||
|
||
imu.getCalibrationData(function(err, results) { | ||
if (!err && results) { | ||
calibrationData = results; | ||
} | ||
}); | ||
|
||
|
||
//then use that data later when initializing the sensor | ||
var imu = new BNO055({ | ||
calibration: calibrationData | ||
}); | ||
``` | ||
|
||
## Datasheet | ||
|
||
https://www.adafruit.com/datasheets/BST_BNO055_DS000_12.pdf |
Oops, something went wrong.