accel-mma84

Library to run the MMA8452Q accelerometer.

#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