cancel
Showing results for 
Search instead for 
Did you mean: 

What should be the register setting to get both free fall detection and motion detection in low power conditions in LSM6DSO32?

NIVI
Associate II

Hi,

We are using LSM6DSO32 Sensor in our device. For our application we need two things(Should be able to operate in low power),

1) Free fall detection (if device falls down, interrupt should be generated)

2) Motion detection (if device is in motion/at rest, interrupt should be generated)

 Current Register setting for Fall detection(Low power) is

CTRL1_XL,0x30, CTRL2_G,0x34, CTRL7_G,0x80, WAKE_UP_DUR,0x00, FREE_FALL,0x02, MD1_CFG,0x10, MD2_CFG,0x00, TAP_CFG0,0x01, TAP_CFG2,0x80, CTRL6_C,0x10

We tried Motion Detection as per the Application note (AN5473) configuration,

But could not get any interrupts generated.

What should be the register setting to get both free fall detection and motion detection in low power conditions.?

7 REPLIES 7
Federica Bossi
ST Employee

Hi @NIVI​ ,

Welcome to ST Community!

For Motion Detection do you mean Motion/Stationary recognition? In this case I suggest you to follow the steps reported at pag 35-36-37 in AN5473.

In addition, you can get both free fall detection and motion detection independently on the power mode conditions.

Let me know if this helps.

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
NIVI
Associate II

Hi @Federica Bossi​ ,

Thanks for the response

Our application is based on wearable device. With the help of the LSM6DSO32TR we want to know if the person is in motion or stationary ( INT1interrupt) and also if the person falls ( INT2 interrupt). In our case we are able to generate the free fall interrupt with the above given register settings, but still the interrupt works even for a small change( this might generate false free fall detection when the device is worn by the user)

1)What would be the good register setting to detect the free fall detection for human wearable devices?

2)What would be the good register setting to know the human motion and stationary detection?

We already tried Motion Detection as per the Application note (AN5473 - page no.57) configuration,

But did not get the expected output.? How to test if it works well. Kindly react out us as soon as possible!

Federica Bossi
ST Employee

Hi @NIVI​ ,

For the free-fall detection I suggest you to follow our PID example.

Otherwise, for Motion/Stationary recognition look at page 50-51-52 of AN5473 and our PID examples.

If this helps your problem, please mark my answer as "Best Answer" by clicking on the "Select as Best" button, this can be helpful for Community users to find this solution faster. 

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
NIVI
Associate II

Hi Federica,

Tried the above method, but there is no change in the interrupts.

How to check activity and inactivity interrupts. What should we do to the device to check the working function?

Hi @Federica Bossi​ (ST Employee),

We have tried the motion detection section in the Application note.

1) How to check if the configurations for MOTION DETECTION is working or not?

2)What is the register setting for FALL DETECTION in one interrupt pin and MOTION DETECTION in another interrupt pin(in Low Power Mode)

Quick reply will be appreciated.

Hi @NIVI​ ,

If you want to check if the activity/inactivity detection is working you simply need to move (for activity) or hold (for inactivity) the device for a while.

If no movement condition is detected for a programmable time, an inactivity/stationary condition event is generated; otherwise, when the accelerometer data exceed the configurable threshold, an Activity/Motion condition event is generated.

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.

Hi @NIVI​ ,

As mention in the Application Note mentioned before, the Activity/Inactivity recognition function is enabled by setting the INTERRUPTS_ENABLE bit to 1 and configuring the INACT_EN[1:0] bits of the TAP_CFG2 register. If the INACT_EN[1:0] bits of the TAP_CFG2 register are equal to 00b, the Motion/Stationary embedded function is enabled.

The free-fall interrupt signal can be enabled by setting the INTERRUPTS_ENABLE bit in the TAP_CFG2 register to 1 and can be driven to the two interrupt pins by setting the INT1_FF bit of the MD1_CFG register to 1 or the INT2_FF bit of the MD2_CFG register to 1; it can also be checked by reading the FF_IA bit of the WAKE_UP_SRC register.

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.