1.0.0 • Published 7 years ago

mbed-js-st-lsm6dsl v1.0.0

Weekly downloads
5
License
Apache-2.0
Repository
github
Last release
7 years ago

mbed-js-lsm6dsl

LSM6DSL library wrappers for Javascript on Mbed

About library

Helper class providing functions for LSM6DSL sensor library (part of X_NUCLEO_IKS01A2) in JavaScript.

Requirements

This library is to be used with the following tools:

See this project for more information: mbed-js-example

Dependencies

You need to install dependencies before installing this library.

Installation

  • Before installing this library, make sure you have a working JavaScript on Mbed project and the project builds for your target device. Follow mbed-js-example to create the project and learn more about using JavaScript on Mbed.

  • Install this library using npm (Node package manager) with the following command:

cd project_path
npm install syed-zeeshan/mbed-js-lsm6dsl

Usage

/*****************
 * Instantiation *
 *****************/
// Instantiate LSM6DSL library 
var lsm6dsl = LSM6DSL_JS();

/******************
 * Initialization *
 ******************/
// Initialize using DevI2C
lsm6dsl.init_i2c(dev_i2c);

// Initialize using DevI2C, int1 pin and int2 pin
lsm6dsl.init_i2c(dev_i2c, int1_pin, int2_pin);

// Initialize using DevI2C, int1 pin, int2 pin and address
lsm6dsl.init_i2c(dev_i2c, int1_pin, int2_pin, address);

// Initialize using SPI and CS pin
lsm6dsl.init_spi(spi, cs_pin);

// Initialize using SPI, CS pin, int1 pin, int2 pin and SPI type
lsm6dsl.init_spi(spi, cs_pin, int1_pin, int2_pin, spi_type);

/***********************
 * Reading sensor data *
 ***********************/
// To read accelerometer data (JSON output)
lsm6dsl.get_accelerometer_axes();

// To read gyroscope data (JSON output)
lsm6dsl.get_gyroscope_axes();

Example using DevI2C (Nucleo-F429ZI)

// Initialize DevI2C with SDA and SCL pins
var dev_i2c = DevI2C(D14, D15);

// Instantiate LSM6DSL library 
var lsm6dsl = LSM6DSL_JS();

// Initialize LSM6DSL library
lsm6dsl.init_i2c(dev_i2c);

// Print sensor data
var acc = lsm6dsl.get_accelerometer_axes();
var gyr = lsm6dsl.get_gyroscope_axes();

print("[Accelerometer]: [" + acc.x + ", " + acc.y + ", " + acc.z + "]");
print("[Gyroscope]: [" + gyr.x + ", " + gyr.y + ", " + gyr.z + "]");

Example using SPI (Nucleo-F476RG)

// Initialize SPI with MOSI, MISO, SCLK pins
var spi = SPI(PB_15, NC, PB_13);

// Instantiate LSM6DSL library 
var lsm6dsl = LSM6DSL_JS();

// Initialize using SPI and CS pin
lsm6dsl.init_spi(spi, PB_12, NC, PA_2, 3);

// Print sensor data
var acc = lsm6dsl.get_accelerometer_axes();
var gyr = lsm6dsl.get_gyroscope_axes();

print("[Accelerometer]: [" + acc.x + ", " + acc.y + ", " + acc.z + "]");
print("[Gyroscope]: [" + gyr.x + ", " + gyr.y + ", " + gyr.z + "]");