Skip to content

Latest commit

 

History

History
46 lines (31 loc) · 1.31 KB

README.md

File metadata and controls

46 lines (31 loc) · 1.31 KB

LSM6DSOX

Arduino library to support the LSM6DSOX 3D accelerometer and 3D gyroscope

API

This sensor uses I2C or SPI to communicate. For I2C it is then required to create a TwoWire interface before accessing to the sensors:

TwoWire dev_i2c(I2C_SDA, I2C_SCL);  
dev_i2c.begin();

For SPI it is then required to create a SPI interface before accessing to the sensors:

SPIClass dev_spi(SPI_MOSI, SPI_MISO, SPI_SCK);  
dev_spi.begin();

An instance can be created and enabled when the I2C bus is used following the procedure below:

LSM6DSOXSensor AccGyr(&dev_i2c);
AccGyr.begin();
AccGyr.Enable_X();  
AccGyr.Enable_G();

An instance can be created and enabled when the SPI bus is used following the procedure below:

LSM6DSOXSensor AccGyr(&dev_spi, CS_PIN);
AccGyr.begin();	
AccGyr.Enable_X();  
AccGyr.Enable_G();

The access to the sensor values is done as explained below:

Read accelerometer and gyroscope.

int32_t accelerometer[3];
int32_t gyroscope[3];
AccGyr.Get_X_Axes(accelerometer);  
AccGyr.Get_G_Axes(gyroscope);

Documentation

You can find the source files at
https://github.com/stm32duino/LSM6DSOX

The LSM6DSOX datasheet is available at
https://www.st.com/content/st_com/en/products/mems-and-sensors/inemo-inertial-modules/lsm6dsox.html