Top Banner
App RtM MEMS & Sensors Machine Learning Processing and STM32CubeMX support November 19, 2018 Marketing: Gildas HENRIET Application: Petr STUKJUNGER A pplication R tM
52

App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

Jun 26, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

App RtM MEMS & SensorsMachine Learning Processing and

STM32CubeMX support

November 19, 2018

Marketing: Gildas HENRIET

Application: Petr STUKJUNGER

Application

RtM

Page 2: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

2

Update on new MEMS products and SW

Machine learning processing in MEMS sensors

STM32CubeMX support for MEMS

Page 3: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

3

Update on new MEMS products and SW

Page 4: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

4

SENSORS & MOTION MEMSST offer

CONSUMER

INDUSTRIAL

AUTOMOTIVE

Pressure, Humidity,

Temperature

6-axis IMU

Microphone

AXL Mag, E-compass

6-axis IMU

Microphone

AXL Mag, E-compass

GyroAXL 6-axis IMU

Dedicated AXL

Alarm

E-call

Telematic

Vehicle tracking

Indus Robot

Positioning

Tracking

Tilt

Vibration

Available in 2018 Applications

IOT

Wearable

Alarm

Smart Home

Remote Control

Voice Assistant

Page 5: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

[email protected] – EMEA – Sensors Presentation

5SENSORS & MOTION MEMS

ST offer

Pressure, Humidity,

Temperature

6-axis IMU

Microphone

AXL Mag, E-compass

6-axis IMU

Microphone

AXL Mag, E-compass

GyroAXL 6-axis IMU

Dedicated AXL

Alarm

E-call

Telematic

Vehicle tracking

Indus Robot

Positioning

Tracking

Tilt

Vibration

Available in 2018 New products for H2 2018 / H1 2019

IOT

Wearable

Alarm

Smart Home

Remote Control

Voice Assistant

AIS2IH

AIS2DW12

IIS2DLPC

IIS3DHHC

IIS2ICLH

IIS3DWBISM330DHC

ASM330LHH

LPS22HH

STTS22H

LPS33W LPS27HHW

HTS2

LSM6DSO LSM6DSR

IMP34DT05

MP34DT06J

MP23DB01HP

MP23DB02MM

LSM6DSOX

LSM6DSRX

MP in 18H2 MP in 19H1

ISM330DLC

CONSUMER

INDUSTRIAL

AUTOMOTIVE

LIS2DTW12

Page 6: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

6

SENSORS & MOTION MEMSST offer

CONSUMER

Pressure, Humidity,

Temperature

6-axis IMU

Microphone

AXL Mag, E-compass

IOT

Wearable

Alarm

Smart Home

Remote Control

Voice Assistant

LPS22HH

STTS22H

LPS33W

LPS27HHW

HTS2

LSM6DSO LSM6DSR

MP34DT06JMP23DB01HP

MP23DB02MM

LSM6DSOX

LSM6DSRX

• LPS22HH, LSM6DSO, MP34DT06J: in Mass Production

• LIS2DTW12: in Mass Production in 18Q4

• LSM6DSR: Mass Production targeted in 19Q1

• LSM6DSOX, LSM6DSRX: Mass Production targeted in 19Q1

• LPS33W : Mass Production targeted in 18Q4

• LPS27HHW: Mass Production targeted in 19Q2-Q3

• STTS22H, HTS2: Mass Production targeted in 19Q1, 19Q2

• MP23DB01HP, MP23DB02MM: Mass Production targeted in 19Q1

Available in 2018 Available in 2018 New products for H1 2019

LIS2DTW12

Page 7: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

7

SENSORS & MOTION MEMSST offerAvailable in 2018 Available in 2018 New products for H1 2019

INDUSTRIAL

6-axis IMU

Microphone

AXL Mag, E-compass

Dedicated AXL

Indus Robot

Positioning

Tracking

Tilt

Vibration

IIS2DLPC

IIS3DHHC

IIS2ICLH

IIS3DWBISM330DHC

IMP34DT05

• IIS2DLPC, IIS3DHHC, IMP34DT05: in Mass Production

• ISM330DHC: Mass Production targeted in 19Q1

• IIS2IDCLH, IIS3DWB: Mass Production targeted begin of 19Q2

Page 8: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

8

SENSORS & MOTION MEMSST offerAvailable in 2018 New products for H2 2018 / H1 2019

AUTOMOTIVE

GyroAXL 6-axis IMU

Alarm

E-call

Telematic

Vehicle tracking

AIS2IH

AIS2DW12ASM330LHH

• ASM330LHH: PPAP in Q1 2019, Mass Production in 19Q1

• AIS2DW12: PPAP in 19Q1, Mass Production in 19Q3

• AIS2IH: PPAP in 19Q3

Page 9: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

9X-CUBE-MEMS1 news

• X-CUBE-MEMS1 is a firmware package with MEMS low-level

drivers, examples and libraries for STM32

What is new in X-CUBE-MEMS1 v5.1 (since v4.1):

• Support of Cortex-M0+ (STM32L or BlueNRG-1/2)

• Sensor fusion (MotionFX)

• Gyroscope calibration (MotionGC)

• Magnetometer calibration (MotionMC)

• Added new Vertical Context (MotionVC) library – see next

slide

• Added support for STM32CubeMX – see later

• Since v5.0 X-NUCLEO-IKS01A1 is not supported – legacy

version X-CUBE-MEMS1-V4 (v4.4.1) still available on st.com

Page 10: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

10Vertical Context (MotionVC) library

• Vertical movement detection:

• On floor

• Up/down

• Stairs, Elevator, Escalator

• Drift free altitude and vertical velocity with confidence

parameter. Automatic adaptation to different noise

floor of pressure sensor data.

• Inbuilt step detection mode. Suitable for mobile like

carry position (belt, pocket).

• Sensors required: accelerometer (50 Hz) and

barometer (10 Hz)

• MCU resources: 10 kB of flash, 3.9 kB of RAM

• Available for ARM Cortex-M3 and Cortex-M4

Page 11: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

11X-CUBE-MEMS-XT1 news

• X-CUBE-MEMS-XT1 is an extended firmware package

with MEMS low-level drivers, examples and libraries for

STM32

What is new in X-CUBE-MEMS1 v4.4 (since v4.1.1):

• Added support of new components:

• A3G4250D, AIS328DQ, AIS3624DQ, IIS2MDC, ISM303DAC,

ISM330DLC, IIS2DLPC, LPS22HH, LPS33HW, LSM6DSO and

LSM6DSR

• Added new Signal Processing (MotionSP) library – see

next slide

Page 12: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

12Signal Processing (MotionSP) library

• The library performs analysis of acceleration data on X, Y and Z axis to detect vibration from machines such as motors, fans and pumps.

• Time domain analysis

• Acceleration RMS

• Acceleration Peak

• Speed RMS

• Frequency domain analysis

• FFT analysis

• Selectable window for FFT: rectangular window, Hanning, Hamming or flat top window

• User configurable: output data rate and full scale, number of FFT samples, magnitude, etc.

• Sample application using data from LSM6DSL on X-NUCLEO-IKS01A2 and NUCLEO-F401RE or NUCLEO-L476RG

Page 13: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

13

ADVANCED MOTION LIBRARIES

Run on the STM32 MCUs

Binary libraries available for:• IAR Embedded

Workbench for ARM• uVision (MDK-ARM)• System Workbench

for STM32

Application examples available for:• NUCLEO-F401RE• NUCLEO-L476RG• NUCLEO-L152RE• NUCLEO-L073RZ• NUCLEO-L053R8

Dedicated User Manual for

each library.

Accelerometer

Calibration

Gyroscope

CalibrationMagnetometer

Calibration

Tilt

SensingeCompass

Activity

Recognition

Activity

Recognition

for Wrist

Carry

Position

Sensor

Fusion

Motion

Intensity

Detection

Pedometer

Fitness

Activities

Pose

Estimation

Gesture

RecognitionFall

Detection

Standing vs

Sitting

Desk Detection

Activity T

rackin

g

for

Mo

bile

De

vic

es

Po

sitio

n T

rackin

gA

ctivity T

rackin

gfo

r W

rist D

evic

es

Calib

ratio

n

Alg

ori

thm

s

Active

TimePedometer Sleep

Monitoring

X-CUBE-MEMS1/XT1 MiddlewareOverview

Download from

X-CUBE-MEMS1

X-CUBE-MEMS-XT1

Vertical

Context

Con

ditio

n

Mo

nito

rin

g

Signal

Processing

Page 14: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

14

Machine learning processing in MEMS

sensors

Page 15: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

15

LSM6DSO & LSM6DSRCONSUMER 6-axis IMU

• A: ±2/±4/±8/±16 g full scale

• G: ±125/±250/±500/±1000/±2000 dps full scale

• Accuracy: 3.8mdps/√Hz (G), 70μg/√Hz (A) noise level

• 0.55mA current consumption in HP combo

-15% vs. LSM6DSL @ same performance

• New ultra low power mode: 4.4µA Axl only 1.6Hz

LSM6DSOPERFORMANCE and STABILITY

• A: ±2/±4/±8/±16 g full scale

• G Full Scale up to 4000dps

• Accuracy improved Bias Instability 5deg/h

• Accuracy: high stability over temp and time

LSM6DSR*

FEATURES embedded @ silicon level common to LSM6DSO and LSM6DSR*

• Finite State Machine (described in the 2dnd part)

• Recognize custom motion patterns from A + G + external

sensor to generate interrupts

• Smart FIFO up to 9KB to store (using compressed mode)

• Gyroscope, Accelerometer, External sensors (up to 4), Step

counter, Timestamp, Temperature

• New and High performance embedded Pedometer

• Improved filtering capabilities

• Advanced configurable parameters

P2P with LSM6DSL, LSM6DS3, SW compatible

POWER CONSUMPTION and FEATURES

*Mass Production in Q1 2019

Page 16: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

16

What are 2 added features on new 6-axis IMUsFSM / MLP

Machine Learning Processing (MLP)Finite State Machine (FSM)

Face Up/

Down

Tap

Tap

Glance

Free Fall 6 D

Activity

Rec

Carry

Pos

Vibration

Monitor

Step

Count

Wake Up

Fitness

MLP: a new feature for LSM6DSOX / LSM6DSRX

Application

can be done

by SW

(today) or

by HW

(19Q1)

FSM: a new feature for LSM6DSO(X) / LSM6DSR(X)

Page 17: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

17Finite State Machine - BENEFITS

Configurable embedded modules for fast and effective

implementation of DEDUCTIVE motion detection processing

Innovative Embedded

Solution

Inertial Sensor

LSM6DSO / DSR

FSM

Up to 16

Ultra Low Power

Parallel processing of many

Algos

Lower interaction with MCU

Interrupts

Flexible Configurability

Evaluation of multiple sensors

Pros

1

Each FSM is intended to detect:

single specific gesture

1x FSM

• Wrist Tilt

• Free Fall

• Pick Up

• Wake-Up

• Shake

• Glance

• Tap

• Motion /Stationary

• Etc…

Page 18: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

18FSM Block Diagram

*Connected as external sensor.

FSM

SM1Enable bit

INT Config.

Dec.Factor

SM2Enable bit

INT Config.

Dec.Factor

SM16Enable bit

INT Config.

Dec.Factor

FSM ODR

ACC

GYR

MAG*

INT1

OUT_S1

INP

UT

MU

X1

INP

UT

MU

X2

INT2

OUT_S2

INT16

OUT_S16

FIXED DATA

VARIABLE DATA

INSTRUCTIONS

FIXED DATA

VARIABLE DATA

INSTRUCTIONS

FIXED DATA

VARIABLE DATA

INSTRUCTIONS

INP

UT

MU

X1

6

LONG

COUNTER

Page 19: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

19FSM Instructions

NEXTRESET

COMMAND

NEXTRESET

PARAMETERS

NEXTRESET

START

CONT

Instructions are consisit of a set of commands and a set of conditions:

• COMMANDS:

• CONDITIONS:

• RESET condition is always checked before the NEXT condition

• Timeouts long and short

• Input signals (triggered with masks) compared vs. thresholds;

• Input signals (triggered with masks) crossing zero value.

TIMERS

THRESHOLDS

MASKS

EXECUTION

OUTPUT

VARIOUS

Set new timer values

Set threshold, switch thresholds

Set mask, switch masks

Jumps, continue from start, set start

Write output register, control interrupt

Long counter, set input

Page 20: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

20FSM Development Support in GUI

ST Unico GUI SW supports:

1. Design

2. Test

3. Debug

Page 21: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

21FSM Gestures Database

• 4D

• Free Fall

• Glance (accelerometer only)

• Glance (accelerometer and gyroscope)

• Glance-Deglance

• Motion

• Stationary

• Shake

• Pick-Up

• Flip Up, Flip Down

• Wrist-Tilt

• Basic Pedometer

x

y

z

xy

z

+X

t

INTERRUPT

TI3

THRESH1

-THRESH1

x

y

z

Page 22: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

22Machine Learning Processing - BENEFITS

• Configurable embedded modules for fast and effective

implementation of both DEDUCTIVE and INDUCTIVE

motion detection processing

Those of FSM, plus

Handles complex algorithms

Dramatically decreases MCU load

and current consumption

BOM reduction (no DSP needed)

Pros

1

• Activity recognition

• Fitness activities

• Motion intensity

• Vibration intensity

• Carry position

• Context awareness

• False positive rejection

• Etc…

Enhanced Innovative

Embedded Solution

Inertial Sensor

LSM6DSOX / DSRX

FSM

Up to 16

MLP

Up to 8

Each Application is intended to detect:

User contexts

1x Decision tree

Page 23: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

23Programmable Sensor Overview

• LSM6DSRX and LSM6DSOX are provided with a

Decision Tree logic

• A Decision Tree is a mathematical tool composed

by a series of configurable nodes

• Each node is characterized by one “if-then-else”

condition (input signals against a threshold)

• Example:

• Node 1: Average of Acc X < 500 mg

• Node 2: Variance of Gyro Y > 100 dps

• Up to 8 decision trees can be configured to run

simultaneously in LSM6DSRX and LSM6DSOX

4

Page 24: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

24

1. Define classes to be recognized

• (e.g. Activity Recognition: Walking, Jogging, Driving)

2. Collect multiple logs for each class

• (e.g. different persons doing the same activity)

3. Offline data analysis:

• Define the features that better characterize the defined

classes (some statistical parameters like: mean,

variance, energy, etc…)

• Implement a decision tree (threshold, number of nodes,

outputs, etc…) using machine learning tools such as

WEKA

4. Configure the LSM6DSRX /

LSM6DSOX Programmable Sensor

• The decision tree will run on the device, reducing the

MCU Power Consumption

Machine Learning Approach

Page 25: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

25

Sensors

Data

Computation

Block

Decision

Tree

Accelerometer

ResultsGyroscope

External

Sensor

Features

Filters Meta-classifier

MLP Block Diagram

Page 26: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

26

Feature Name Feature Description

MEAN Computes the average of the selected input in the defined time window

VARIANCE Computes the variance of the selected input in the defined time window

ENERGY Computes the energy of the selected input in the defined time window

PEAK TO PEAK Computes the maximum peak to peak value of the selected input in the defined time window

ZERO CROSSING Computes the number of times the selected input crosses a selected threshold in the defined time window

POSITIVE ZERO CROSSING Computes the number of times the selected input crosses a selected threshold in the defined time window. Only

transitions with positive slope are considered.

NEGATIVE ZERO CROSSING Computes the number of times the selected input crosses a selected threshold in the defined time window. Only

transitions with negative slopes are considered.

PEAK DETECTOR Counts the number of peaks (positive and negative) of the selected input in the defined time window

POSITIVE PEAK DETECTOR Counts the number of positive peaks of the selected input in the defined time window

NEGATIVE PEAK DETECTOR Counts the number of negative peaks of the selected input in the defined time window

MINIMUM Minimal value of the selected input in the defined time window

MAXIMUM Maximum value of the selected input in the defined time window

• Features: statistical parameters calculated from

• Input data (e.g. Acc_X, Acc_Y, Acc_Z, Acc_V, Acc_V2, Gyro_X, Gyro_Y, etc…)

• Filtered data (e.g. high-pass on Acc_Z, band-pass on Acc_V2, etc…) – user-configurable

Computation

Block

Features

Filters

MLP Filters and Features

Time window is number of samples used to compute output of a feature

Page 27: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

27

Tree Example

Start

node

node

Typical node

Input Condition

False PathTrue Path

• Decision Tree: a predictive model built from the

training data

• The outputs of the computation blocks (filters and

features) are the inputs of the decision tree

• Each node of the decision tree contains a condition

• Some examples of conditions:

• Mean on Acc_X < 0.5 g

• Variance on Gyro_Z < 200 dps

Decision

Tree

Results

Meta-classifier

MLP Decision Tree

Page 28: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

28

• The Decision tree generates a result every sample

• Decision tree outputs can be filtered by a Meta-Classifier [Optional]

• Meta-classifiers use internal counters to filter the decision tree results

• Meta-Classifiers update the results only when counters reach the “End Counter”

values

• Example:

• Results:A, B

• End Counter for result A = 3

• End Counter for result B = 4

Decision

Tree

Results

Meta-classifier

MLP Meta-Classifier

Result before meta-classifier A A A B A B B B A B B B A A A

1 2 3 2 3 2 1 0 1 0 0 0 1 2 3

0 0 0 1 0 1 2 3 2 3 4 5 4 3 2

x x A A A A A A A A B B B B A

CounterA

Counter B

Result after meta-classifier

Page 29: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

29

LSM6DSRX / LSM6DSOX

Hardware Limitations• LSM6DSRX and LSM6DSOX have limited resources for

Programmable Sensor, in terms of:

• Number of decision trees

• Size of the trees (number of nodes)

• Decision tree results

• Meta-classifier

• Number of filters and features (*):

• No specific limit for filters and features. However, it is strongly suggested to reduce the

number of nodes of the decision trees when many filters and features are configured

LSM6DSRX LSM6DSOX

Maximum number of decision trees 8 8

Maximum number of Nodes (Total number for all the

decision trees)

512 (*) 256 (*)

Maximum number of results per decision tree 256 16

Result sub-groups for meta-classifier 8 4

Number of Filters and Features (*) (*)

Page 30: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

30Programmable Sensor Tools

• Unico GUI for LSM6DSRX / LSM6DSOX

• Data Logging

• Device Configuration

• Programmable Sensor Configuration Tool

• Data patterns management

• Programmable sensor parameters settings (ODRs, Full

scales, window, filters, features, results, etc…)

• Filters and features computation,ARFF file

generation, UCF file generation

• Configuration file (.ucf) loading

• Decision Tree outputs visualization and Logging

• WEKA* (Machine Learning tool)

• Attributes selection (from .ARFF file)

• Data filtering

• Decision tree generation

• Decision tree performance evaluation (e.g. number

of nodes, accuracy, confusion matrix, etc…)

* Waikato Environment for KnowledgeAnalysis (WEKA) is a suite of machine

learning software, developed at the University of Waikato, New Zealand. It is a free

software licensed under the GNU General Public License

Page 31: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

31

LSM6DSRX / LSM6DSOX

Configuration Procedure1. Data patterns

1.

2.

3.

Launch Unico GUI for LSM6DSRX or LSM6DSOX

Configure the device

Save log files

Load ARFF file

Select attributes

Generate a decision tree

Save the decision tree in a text file

6.

7.

8.

Load the decision tree in the Programmable Sensor Tool of Unico

Configure decision tree output values and meta classifiers

Save the register configuration for LSM6DSRX/LSM6DSOX (.ucf file)

3. Device configuration

1.

2.

Log files

(data patterns)

2. Programmable Sensor Configuration

1.

2.

3.

4.

5.

Open Programmable Sensor Tool in Unico

Load data patterns previously acquired, and set the expected results

Choose inputs, ODRs, full scales, window length, filters, features, etc…

GenerateARFF file

Launch Weka (Machine Learning tool)

1.

2.

3.

4.

Load the configuration (.ucf) generated for LSM6DSRX/LSM6DSOX on the device through Unico GUI

See decision tree outputs in Unico

Register Configuration

(.ucf)

WEKA

Decision tree file

(.txt)

Attributes file

(.ARFF)

Page 32: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

32MLP Algorithms Database

• Vibration monitoring

• Motion intensity

• 6D position recognition

• Activity recognition for mobile

• Activity recognition for wrist

• Gym activity recognition

• Carry position for mobile

Page 33: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

33

STM32CubeMX support for MEMS

Page 34: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

34Introduction

• The STM32CubeMX MEMS pack is a plugin

for STM32CubeMX tool to support MEMS

components

• The aim is to generate source code ready to

be loaded on boards that combine the usage

of a STM32 and MEMS components

• The CubeMX MEMS pack is able to manage

most examples contained into the X-CUBE-

MEMS1 software package

Page 35: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

35Main Features

• MEMS components currently supported

• LSM6DSL, LSM303AGR, LIS3MDL, HTS221

and LPS22HB

• I2C and 4-wire SPI interfaces are

supported

• 13 out of 14 examples of the X-CUBE-

MEMS1 package are supported - see

next slide

• Current limitations

• No support od middlewares and applications

• no support for 3-wire SPI

Page 36: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

36MEMS examples supported

• DataLogTerminal – printing out data on serial terminal

• LPS22HB_FIFOMode – LPS22HB FIFO usage

• LSM6DSL_6DOrientation – LSM6DSL 6D orientation detection

• LSM6DSL_FIFOContinuousMode – LSM6DSL FIFO usage

• LSM6DSL_FIFOLowPower – LSM6DSL FIFO usage

• LSM6DSL_FIFOMode – LSM6DSL FIFO usage

• LSM6DSL_FreeFall – LSM6DSL free fall detection

• LSM6DSL_MultiEvent – LSM6DSL multiple events detection

• LSM6DSL_Pedometer – LSM6DSL embedded pedometer usage

• LSM6DSL_SelfTest – LSM6DSL embedded self-test usage

• LSM6DSL_SingleDoubleTap – LSM6DSL 6D single and double tap detection

• LSM6DSL_Tilt – LSM6DSL embedded tilt detection

• LSM6DSL_WakeUp – LSM6DSL wake up detection

Page 37: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

37STM32CubeMX workflow

Board description

STM32

MEMS

sensor

Description of board• STM32F pins

• Connection to MEMS sensor

Source codes• STM32F configuration

• MEMS sensor

configuration and usage

example

STM32CubeMX• GUI design

• MCU and MEMS setup

Page 38: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

38

X-NUCLEO-IKS01A2 and Custom Board

use cases

• The STM32CubeMX MEMS pack is able to address two different use cases:

• The use case where the X-NUCLEO-IKS01A2 is combined with a Nucleo board

• The use case where the supported MEMS components are combined with a STM32 on a Custom Board

• The two use cases are mutually exclusive

• The applications with “IKS01A2_” prefix address the use case of X-NUCLEO-IKS01A2, whereas the other applications address the use case of Custom Boards

B-L475E-IOT01A STM32L4 Discovery kit IoT node

X-NUCLEO-IKS01A2MEMS and expansion board

Page 39: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

39How to install CubeMX MEMS Pack (1)

Install STM32CubeMX first ;-) using

this link.

• Start CubeMX and go to Help ->

Manage embedded software

packages

• Click Refresh

• Go to STMicroelectronics Tab

Page 40: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

40How to install CubeMX MEMS Pack (2)

• Select the X-CUBE-MEMS1 pack

• Click Install Now

Page 41: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

41IKS01A2_DataLogTerminal Example (1)

• Plug X-NUCLEO-IKS01A2 to

Nucleo-F091RC board

• UART default settings: Baud

rate 115200 bps, 8 data bits,

No parity, 1 stop bit, No HW

Flow Control

Page 42: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

42IKS01A2_DataLogTerminal Example (2)

• Click on New Project, select any MCU or Board from

the Selector menu (in our example Nucleo-F091RC)

• Go to Project Select Additional software

components

Page 43: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

43IKS01A2_DataLogTerminal Example (3)

• Expand your pack,

select the

“IKS01A2”

component and the

“IKS01A2_DataLog

Terminal”

application

• Click Ok

Page 44: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

44IKS01A2_DataLogTerminal Example (4)

• Select PB9 as

I2C1_SDA

• Select PB8 as

I2C1_SCL

• Enable I2C1

Page 45: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

45IKS01A2_DataLogTerminal Example (5)

• Select the additional

software in the pinout

view

• Go to the Configuration

tab and click on your

pack button

Page 46: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

46IKS01A2_DataLogTerminal Example (6)

• Configuration of Platform

Settings

Page 47: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

47IKS01A2_DataLogTerminal Example (7)

• NVIC Configuration

Page 48: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

48IKS01A2_DataLogTerminal Example (8)

• Click Project Generate Code

• Enter project name and location

• Select your IDE

• Click Ok

• Then click on Open project

Your project is ready to be compiled

using your preferred IDE.

Page 49: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

49Takeaway: Why Choose ST ?

Our Strenghts

Paving the Future with Unique Assets and Focused Market Leadership

Page 50: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

50TOP SELLING MEMS Products• Consumer AXL: LIS2DE12 / LIS2DH12 / LIS2DW12 / LIS2DTW12 / LIS25BA

• Consumer High-g: AXL (up to 400g): H3LIS100DL / H3LIS200DL / H3LIS331DL

• Industrial AXL: IIS328DQ / I3G4250D / IIS2DH / IIS2DLPC / IIS3DHHC

• Automotive AXL: AIS328DQ / AIS3624DQ / AIS2DW12 / AIS2IH

• Consumer Magnetometer and 6-Axis e-Compass: LSM303AGR / LSM303AH / LIS2MDL

• Industrial Magnetometer, e-Compass: ISM303DAC / IIS2MDC

• Consumer 6-axis IMU (A+G): LSM6DSL / LSM6DSO / LSM6DSR

• Industrial 6-axis IMU: ISM330DLC / ISM330DHC

• Automotive Gyro and 6-axis IMU: A3G4250D / ASM330LHH

• Environmental Sensors: LPS22HB / LPS22HH / LPS33HW / HTS221 / STML20 / STTS751 / STTS22H /

LPS33W

• Microphones: MP23ABS1 / MP34DT05-A / MP34DT06J / MP23DB01HP / MP23DB02MM

• Industrial Microphone: IMP34DT05

New PRODUCTS / Alpha customers

Sense

6-axis IMU

AXL

Mag, E-compass

Pressure, Humidity, Temperature

Microphone

AXL

Gyro,

6-axis IMU6-axis IMU

Microphone

AXL

Mag, E-compass

Dedicated AXL

Page 51: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

51

For more information on sensors: www.st.com/sensors

For EMEA – a dedicated team

Product Marketing:

[email protected]

Technical support

[email protected]

Page 52: App RtM MEMS & Sensors - EMCU · AppRtM –EMEA M&A –Sensors Presentation X-CUBE-MEMS-XT1 news 11 •X-CUBE-MEMS-XT1 is an extended firmware package with MEMS low-level drivers,

AppRtM – EMEA M&A – Sensors Presentation

52

Thank you!

Sense