tessel / accel-mma84

Driver for the Tessel accelerometer module
Other
15 stars 7 forks source link

Accelerometer

Code of Conduct

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

Licensing

MIT or Apache 2.0, at your option