The LSM6DS3 is a accelerometer and gyroscope sensor with a giant 8kb FIFO buffer and embedded processing interrupt functions, specifically targeted at the cellphone market. Due to the capabilities and low cost of the LSM6DS3 we’ve created this small breakout board just for you! Each LSM6DS3 Breakout has been designed to be super-flexible and can be configured specifically for many applications. With the LSM6DS3 Breakout you will be able to detect shocks, tilt, motion, taps, count steps, and even read the temperature!
The LSM6DS3 is capable of reading accelerometer data up to 6.7kS/s and gyroscope data up to 1.7kS/s for more accurate movement sensing. As stated before this breakout also has the ability to buffer up to 8kB of data between reads, host other sensors, and drive interrupt pins all thanks to the LSM6DS3’s built-in FIFO.
Each pin has been broken out on the LSM6DS3, with one side of the board featuring power and I2C functionality while the other side sporting pins that control SPI functionality and interrupt outputs. Please keep in mind that the LSM6DS3 is a 3.3V device so supplying voltages greater than ~3.6V can permanently damage the IC. A logic level shifter is required for any development platform operating at 5V.
More Technical Info:
The integrated power-efficient modes are able to reduce the power consumption down to
1.25 mA in high-performance mode, combining always-on low-power features with superior
sensing precision for an optimal motion experience for the consumer thanks to ultra-low
noise performance for both the gyroscope and accelerometer.
The LSM6DS3 delivers best-in-class motion sensing that can detect orientation and
gestures in order to empower application developers and consumers with features and
capabilities that are more sophisticated than simply orienting their devices to portrait and
The event-detection interrupts enable efficient and reliable motion tracking and contextual
awareness, implementing hardware recognition of free-fall events, 6D orientation, tap and
double-tap sensing, activity or inactivity, and wakeup events.
The LSM6DS3 supports main OS requirements, offering real, virtual and batch mode
sensors. In addition, the LSM6DS3 can efficiently run the sensor-related features specified
in Android, saving power and enabling faster reaction time. In particular, the LSM6DS3 has
been designed to implement hardware features such as significant motion, tilt, pedometer
functions, timestamping and to support the data acquisition of an external magnetometer
with ironing correction (hard, soft).
The LSM6DS3 offers hardware flexibility to connect the pins with different mode
connections to external sensors to expand functionalities such as adding a sensor hub, etc.
Up to 8 kbyte of FIFO with dynamic allocation of significant data (i.e. external sensors,
timestamp, etc.) allows overall power saving of the system.
Like the entire portfolio of MEMS sensor modules, the LSM6DS3 leverages on the robust
and mature in-house manufacturing processes already used for the production of
micromachined accelerometers and gyroscopes. The various sensing elements are
manufactured using specialized micromachining processes, while the IC interfaces are
developed using CMOS technology that allows the design of a dedicated circuit which is
trimmed to better match the characteristics of the sensing element.
Power consumption: 0.9 mA in combo normal mode and 1.25 mA in combo high-performance mode up to 1.6 kHz. “Always on” experience with low power consumption for both accelerometer and gyroscope.
Smart FIFO up to 8 kbyte based on features set
±2/±4/±8/±16 g full scale
±125/±245/±500/±1000/±2000 dps full scale
Analog supply voltage: 1.71-5V
SPI/I2C serial interface with main processor data synchronization feature
Embedded temperature sensor
Pedometer, step detector and step counter
Significant motion and tilt functions
Tap and double-tap detection
IoT and connected devices
Intelligent power saving for handheld devices
Vibration monitoring and compensation
6D orientation detection
Module size: 1.30 x 1.80cm / 0.51" x 0.71" (L x W)
This is an arduino IDE library to control the LSM6DS3. It can be configured to use I2C or SPI with 2 instances per I2C channel or any number of SPI instances. The top-level driver, class LSM6DS3, contains an inner driver LSM6DS3Core, a settings struct, and float-based math functions for conversion from raw to meaningful numbers.
And this is the SparkFun library :