Driver for the Tessel accelerometer module
JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
examples
test
.gitignore
COPYRIGHT
LICENSE-APACHE
LICENSE-MIT
README.md
index.js
package.json

README.md

Accelerometer

Driver for the accel-mma84 Tessel accelerometer module. The hardware documentation for this module can be found here.

If you run into any issues you can ask for support on the Accelerometer Module Forums.

Installation

npm install accel-mma84

Example

/*********************************************
This basic accelerometer example logs a stream
of x, y, and z data from the accelerometer
*********************************************/

var tessel = require('tessel');
var accel = require('../').use(tessel.port['A']); // Replace '../' with 'accel-mma84' in your own code

// Initialize the accelerometer.
accel.on('ready', function () {
    // Stream accelerometer data
  accel.on('data', function (xyz) {
    console.log('x:', xyz[0].toFixed(2),
      'y:', xyz[1].toFixed(2),
      'z:', xyz[2].toFixed(2));
  });

});

accel.on('error', function(err){
  console.log('Error:', err);
});

Methods

# accel.availableOutputRates()
Logs the available interrupt rates in Hz.

# accel.availableScaleRanges()
Logs the available accelerometer ranges (in units of Gs).

# accel.enableDataInterrupts( trueOrFalse, callback(err) )
Enables or disables data interrupts, and thus, data events. Set the first param truthy to enable, falsy to disable.

# accel.getAcceleration( callback(err, xyz) )
Gets the acceleration from the device, outputs as array [x, y, z].

# accel.setOutputRate( rateInHz, callback(err) )
Sets the output rate of the data (1.56-800 Hz).

# accel.setScaleRange( scaleRange, callback(err) )
Sets the accelerometer to read up to 2, 4, or 8 Gs of acceleration (smaller range = better precision).

Events

# accel.on( 'data', callback(xyz) )
Emitted when data is available. xyz is an array in the form of [x, y, z].

# accel.on( 'error', callback(err) )
Emitted upon error.

# accel.on( 'ready', callback() )
Emitted upon first successful communication between the Tessel and the module.

Further Examples

  • Change Rates. This more advanced accelerometer example logs a stream of x, y, and z data, then stops the stream, changes the polling rate, and resumes streaming from the accelerometer.
  • Show Axes. Demonstrates axes by turning on a different LED per axis (x, y, z) only when that axis has positive acceleration. Also prints +/- per axis to the console.

Licensing

MIT or Apache 2.0, at your option