Tessel Accelerometer


Detect orientation and movement of your Tessel by measuring gravity / acceleration.

Control by tilt!

  • 3-Axis Digital Accelerometer
  • 12-bit resolution
  • Selectable ±2g/±4g/±8g scales

For more info visit here.

How To Connect

Cylon.robot({
  connections: {
    tessel: { adaptor: 'tessel', port: 'A' }
  },

  devices: {
    accel: { driver: 'accel-mma84' }
  },
});

How To Use

Example using a Direct Pin.

var Cylon = require('cylon');

Cylon.robot({
  connections: {
    tessel: { adaptor: 'tessel', port: 'A' }
  },

  devices: {
    accel: { driver: 'accel-mma84' }
  },

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

    my.accel.on('data', function (xyz) {
      console.log('x:', xyz[0].toFixed(2),
        'y:', xyz[1].toFixed(2),
        'z:', xyz[2].toFixed(2));
    });
  }
}).start();

Commands

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. 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

'data'

Emitted when data is available. xyz is an array in the form of [x, y, z].

'error'

Emitted upon error.

'ready'

Emitted upon first successful communication between the Tessel and the module.

Compatibility