LSM6DSL - iNEMO inertial module: always-on 3D ...

18
LSM6DSL - iNEMO inertial module: always-on 3D accelerometer and 3D gyroscope Milano, October 19 th -20 th 2016

Transcript of LSM6DSL - iNEMO inertial module: always-on 3D ...

Page 1: LSM6DSL - iNEMO inertial module: always-on 3D ...

LSM6DSL - iNEMO inertial module:

always-on 3D accelerometer and

3D gyroscope

Milano, October 19th-20th 2016

Page 2: LSM6DSL - iNEMO inertial module: always-on 3D ...

Summary• XL/Gyro filtering chain

• Embedded digital features:

• Free-fall

• Wake-up

• 6D/4D orientation detection

• Single-tap and double-tap sensing

• Activity/Inactivity recognition

• Embedded Android functions:

• Pedometer functions (step counter and step detector)

• Significant Motion detection

• Relative Tilt

• Mode 2: Sensor Hub mode

• FIFO

2

Page 3: LSM6DSL - iNEMO inertial module: always-on 3D ...

XL Filtering Chain

SLOPE

FILTER

HPCF_XL[1:0]

00

01

10

11

SPI/

I2C

1

0

HP_SLOPE_XL_EN

LPF2_XL_EN

0

1

INPUT_COMPOSITE

0

1

LPF1_BW_SEL

0

1

Digital

HP Filter

HPCF_XL[1:0]

Digital

LP Filter

LPF2

HPCF_XL[1:0]

S/D Tap

6D / 4D0

1

LOW_PASS_ON_6D

1

0

SLOPE_FDS

Wake-up

Activity /

Inactivity

Free-fall

Smart

functions

FIFO

ADC

Digital

LP Filter

Analog

Anti-aliasing

LP Filter

ODR_XL[3:0]

LPF1ODR/2*

ODR/4**

3

* The cut-off value of this LPF1 output is

ODR/2 when the XL is in HP mode. It’s

equal to 740Hz in LP/NM mode

** The cut-off value of this LPF1 output is

always ODR/4 (in both HP mode and

LP/NM mode)

Page 4: LSM6DSL - iNEMO inertial module: always-on 3D ...

Slope Filter 4

ACCELERATION

SLOPE

Slope(tn) = [ acc(tn) - acc(tn-1) ] / 2

acc(tn)

acc(tn-1)

Page 5: LSM6DSL - iNEMO inertial module: always-on 3D ...

5

ADCDigital

HP Filter

HP_EN_G

Analog

Anti-aliasing

LP Filter

0

1

LPF1_SEL_G

Digital

LP Filter

FTYPE[1:0]

LPF1

0

1

SPI/I2C

FIFODigital

LP Filter

ODR_G[3:0]

LPF2

Gyroscope Filtering Chain

Page 6: LSM6DSL - iNEMO inertial module: always-on 3D ...

Free-fall detection 6

Z

0g

Y

X

+ FF Threshold

- FF Threshold

FREE-

FALL

ZONE

FF Interrupt

FF Duration

• Recognize when the device is in free-fall

• Configurable parameters:

• FF Threshold

• FF Duration

Page 7: LSM6DSL - iNEMO inertial module: always-on 3D ...

Wake-up 7

+ WK Threshold

- WK Threshold

WK Interrupt

WK Duration

ACCELERATION

SLOPE

Slope(tn) = [ acc(tn) - acc(tn-1) ] / 2

acc(tn)

acc(tn-1)

• Recognize when the device is moved

• Configurable parameters:

• WK Threshold

• WK Duration

Page 8: LSM6DSL - iNEMO inertial module: always-on 3D ...

6D/4D orientation detection 8

X

YZ

X

YZ

X

YZ

X

Y

Z

X

Y

Z

X

YZ

(a)

(c)

(e)

(b)

(d)

(f)

• Detect the orientation of the device in space, enabling easy

implementation of energy-saving procedures and automatic image

rotation for mobile devices

• Configurable parameters:

• 6D Threshold (50°, 60°, 70°, 80°)

• 6D/4D detection mode

Page 9: LSM6DSL - iNEMO inertial module: always-on 3D ...

Single-tap and double-tap sensing 9

+ Tap Threshold

(a)

(b)

Slope

- Tap Threshold

Interrupt

SHOCK

QUIET DURATION

SHOCK

QUIET

Interrupt

QUIET QUIET

SHOCKSHOCK

SINGLE

TAP

DOUBLE

TAP

• Generate interrupt signal when the device is single/double tapped in any

direction (recommended XL ODR >= 400Hz)

• Configurable parameters:

• Tap Threshold

• Shock time

• Quiet time (Double tap)

• Duration time (Double tap)

Page 10: LSM6DSL - iNEMO inertial module: always-on 3D ...

Activity/Inactivity recognition 10

Interrupt

Slope

WAKE_DURSLEEP_DUR

INACTIVITY

STATUS

+ WK Threshold

ACTIVITY

STATUS

- WK Threshold

• Automatically decrease the accelerometer sampling rate to 12.5 Hz,

increasing the accelerometer ODR and bandwidth as soon as the

wake-up interrupt event has been detected

• Configurable parameters:

• WK Threshold

• Sleep Duration

• WK Duration

Page 11: LSM6DSL - iNEMO inertial module: always-on 3D ...

Pedometer functions:

Step counter & Step detector11

t

Amplitude

Actual THS

Minimum THS

Detected step

• A specific IP block dedicated to pedometer functions: the step detector

and the step counter. Pedometer functions work at 26 Hz (XL only)

• Configurable parameters:

• Number of debounce steps

• Debounce restart time

• Pedo Full-scale (2g / 4g)

• Minimum Threshold

Page 12: LSM6DSL - iNEMO inertial module: always-on 3D ...

Significant Motion Detection 12

• The Significant Motion function generates an interrupt when a

‘significant motion’, that could be due to a change in user location, is

detected. Significant Motion function works at 26 Hz (XL only)

• Configurable parameters:

• Number of steps to be performed before an SMD interrupt is generated

Page 13: LSM6DSL - iNEMO inertial module: always-on 3D ...

Relative Tilt 13

35º35º

START

POSITION

#0

FINAL

POSITION

#0

35º

START

POSITION

#1

35º

TILT

DETECTION

INTERRUPT

• The Tilt function allows detecting when an activity change occurs (e.g.

when phone is in a front pocket and the user goes from sitting to

standing or standing to sitting). Tilt algo works at 26Hz (XL only)

• First Tilt interrupt: tilt angle > 35° for a period of time >= 2 sec

• Next Tilt interrupts: as soon as tilt angle > 35° (no need to wait 2 sec)

Page 14: LSM6DSL - iNEMO inertial module: always-on 3D ...

Mode 2 - Sensor Hub mode (1/2) 14

LSM6DSL Ext Sensor

SDx

SCx

INT2

SDA

SCL

Data Ready

I2C MASTER I2C SLAVEExternal trigger is optional

1.5 kOhmR

Vdd_IO

1.5 kOhmR

Vdd_IO

External pull-up is optional

I2C / SPI

to HOST

• In Sensor Hub mode (Mode 2) up to 4 external sensors can be

connected to the I2C master interface

• External sensor data can also be stored in FIFO

• Magnetometer hard-iron / soft-iron correction

Page 15: LSM6DSL - iNEMO inertial module: always-on 3D ...

Mode 2 - Sensor Hub mode (2/2) 15

• I2C interface pass-through mode

LSM6DSL

SDx

SCx

INT2

Ext Sensor

SDA

SCL

1.5 kOhmR

Vdd_IO

1.5 kOhmR

Vdd_IO

SDA

SCL

PASS_THROUGH_MODE bit

10 kOhmR

Vdd_IO

10 kOhmR

Vdd_IOMCU

SDA

SCL

Page 16: LSM6DSL - iNEMO inertial module: always-on 3D ...

FIFO (1/2) 16

• LSM6DSL embeds an 4 kbyte first-in first-out buffer (FIFO) allowing to

limit intervention by the host processor and facilitate post-processing

data for event recognition

• The FIFO can be configured to store the following data:

• Gyroscope sensor data

• Accelerometer sensor data

• External sensors (connected to sensor hub interface) data

• Step counter and timestamp data

• Temperature sensor data

• Five different FIFO operating modes:

• Bypass mode (FIFO disabled)

• FIFO mode

• Continuous mode

• Continuous-to-FIFO mode

• Bypass-to-Continuous mode

Page 17: LSM6DSL - iNEMO inertial module: always-on 3D ...

FIFO (2/2) 17

• All data sets can be stored in FIFO at different ODRs, by setting the

decimation factors

• FIFO status signals:

• FIFO overrun events

• FIFO full status

• FIFO empty status

• FIFO threshold status

• Number of unread samples stored in the FIFO

• Stop on watermark

• ‘High part of data only’ mode

Page 18: LSM6DSL - iNEMO inertial module: always-on 3D ...

Thank You!

18