├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── application_examples ├── README.md ├── asm330lhb │ └── README.md ├── asm330lhbg1 │ └── README.md ├── asm330lhhx │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── asm330lhhx_motion_stationary.h │ │ └── asm330lhhx_motion_stationary.ucf │ ├── README.md │ └── Shake detection │ │ ├── README.md │ │ ├── asm330lhhx_shake.h │ │ └── asm330lhhx_shake.ucf ├── asm330lhhxg1 │ └── README.md ├── iis2dulpx │ ├── FourD position recognition │ │ ├── README.md │ │ ├── iis2dulpx_four_d.h │ │ └── iis2dulpx_four_d.ucf │ ├── Freefall detection │ │ ├── README.md │ │ ├── iis2dulpx_free_fall.h │ │ └── iis2dulpx_free_fall.ucf │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── iis2dulpx_motion_stationary.h │ │ └── iis2dulpx_motion_stationary.ucf │ └── README.md ├── iis2iclx │ ├── README.md │ └── Tilt detection │ │ ├── README.md │ │ ├── iis2iclx_tilt.h │ │ └── iis2iclx_tilt.ucf ├── ism330bx │ ├── FourD position recognition │ │ ├── README.md │ │ ├── ism330bx_four_d.h │ │ └── ism330bx_four_d.ucf │ ├── Freefall detection │ │ ├── README.md │ │ ├── ism330bx_freefall_detection.h │ │ └── ism330bx_freefall_detection.ucf │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── ism330bx_motion_stationary.h │ │ └── ism330bx_motion_stationary.ucf │ └── README.md ├── ism330dhcx │ ├── FourD position recognition │ │ ├── README.md │ │ ├── ism330dhcx_four_d.h │ │ └── ism330dhcx_four_d.ucf │ ├── Freefall detection │ │ ├── README.md │ │ ├── ism330dhcx_freefall_detection.h │ │ └── ism330dhcx_freefall_detection.ucf │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── ism330dhcx_motion_stationary.h │ │ └── ism330dhcx_motion_stationary.ucf │ └── README.md ├── lis2dux12 │ ├── Flip-Down detection │ │ ├── README.md │ │ ├── lis2dux12_flip_down.h │ │ └── lis2dux12_flip_down.ucf │ ├── Flip-up detection │ │ ├── README.md │ │ ├── lis2dux12_flip_up.h │ │ └── lis2dux12_flip_up.ucf │ ├── FourD position recognition │ │ ├── README.md │ │ ├── lis2dux12_four_d.h │ │ └── lis2dux12_four_d.ucf │ ├── Freefall detection │ │ ├── README.md │ │ ├── lis2dux12_free_fall.h │ │ └── lis2dux12_free_fall.ucf │ ├── Glance detection │ │ ├── README.md │ │ ├── lis2dux12_glance_detection.h │ │ └── lis2dux12_glance_detection.ucf │ ├── Jiggle detection │ │ ├── README.md │ │ ├── lis2dux12_jiggle_detection.h │ │ └── lis2dux12_jiggle_detection.ucf │ ├── Lift detection │ │ ├── README.md │ │ ├── lis2dux12_lift_detection.h │ │ └── lis2dux12_lift_detection.ucf │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── lis2dux12_motion_stationary.h │ │ └── lis2dux12_motion_stationary.ucf │ ├── Pick-up detection │ │ ├── README.md │ │ ├── lis2dux12_pickup.h │ │ └── lis2dux12_pickup.ucf │ ├── README.md │ ├── Shake detection │ │ ├── README.md │ │ ├── lis2dux12_shake.h │ │ └── lis2dux12_shake.ucf │ ├── Wrist navigation gestures │ │ ├── README.md │ │ ├── lis2dux12_wrist_navigation.h │ │ └── lis2dux12_wrist_navigation.ucf │ └── Wrist-Tilt detection (accelerometer only) │ │ ├── README.md │ │ ├── lis2dux12_wrist_tilt_xl.h │ │ └── lis2dux12_wrist_tilt_xl.ucf ├── lis2duxs12 │ ├── Flip-Down detection │ │ ├── README.md │ │ ├── lis2duxs12_flip_down.h │ │ └── lis2duxs12_flip_down.ucf │ ├── Flip-up detection │ │ ├── README.md │ │ ├── lis2duxs12_flip_up.h │ │ └── lis2duxs12_flip_up.ucf │ ├── FourD position recognition │ │ ├── README.md │ │ ├── lis2duxs12_four_d.h │ │ └── lis2duxs12_four_d.ucf │ ├── Freefall detection │ │ ├── README.md │ │ ├── lis2duxs12_free_fall.h │ │ └── lis2duxs12_free_fall.ucf │ ├── Glance detection │ │ ├── README.md │ │ ├── lis2duxs12_glance_detection.h │ │ └── lis2duxs12_glance_detection.ucf │ ├── Jiggle detection │ │ ├── README.md │ │ ├── lis2duxs12_jiggle_detection.h │ │ └── lis2duxs12_jiggle_detection.ucf │ ├── Lift detection │ │ ├── README.md │ │ ├── lis2duxs12_lift_detection.h │ │ └── lis2duxs12_lift_detection.ucf │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── lis2duxs12_motion_stationary.h │ │ └── lis2duxs12_motion_stationary.ucf │ ├── Pick-up detection │ │ ├── README.md │ │ ├── lis2duxs12_pickup.h │ │ └── lis2duxs12_pickup.ucf │ ├── README.md │ ├── Shake detection │ │ ├── README.md │ │ ├── lis2duxs12_shake.h │ │ └── lis2duxs12_shake.ucf │ ├── Wrist navigation gestures │ │ ├── README.md │ │ ├── lis2duxs12_wrist_navigation.h │ │ └── lis2duxs12_wrist_navigation.ucf │ └── Wrist-Tilt detection (accelerometer only) │ │ ├── README.md │ │ ├── lis2duxs12_wrist_tilt_xl.h │ │ └── lis2duxs12_wrist_tilt_xl.ucf ├── lsm6dso │ ├── Flip-Down detection │ │ ├── README.md │ │ ├── lsm6dso_flip_down.h │ │ └── lsm6dso_flip_down.ucf │ ├── Flip-up detection │ │ ├── README.md │ │ ├── lsm6dso_flip_up.h │ │ └── lsm6dso_flip_up.ucf │ ├── FourD position recognition │ │ ├── README.md │ │ ├── lsm6dso_four_d.h │ │ └── lsm6dso_four_d.ucf │ ├── Freefall detection │ │ ├── README.md │ │ ├── lsm6dso_freefall_detection.h │ │ └── lsm6dso_freefall_detection.ucf │ ├── Lift detection │ │ ├── README.md │ │ ├── lsm6dso_lift.h │ │ └── lsm6dso_lift.ucf │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── lsm6dso_motion_stationary.h │ │ └── lsm6dso_motion_stationary.ucf │ ├── Phone-to-ear detection │ │ ├── README.md │ │ ├── lsm6dso_phone_to_ear.h │ │ └── lsm6dso_phone_to_ear.ucf │ ├── Pick-up detection │ │ ├── README.md │ │ ├── lsm6dso_pick_up.h │ │ └── lsm6dso_pick_up.ucf │ ├── README.md │ ├── Shake detection │ │ ├── README.md │ │ ├── lsm6dso_shake.h │ │ └── lsm6dso_shake.ucf │ ├── Wrist navigation gestures │ │ ├── README.md │ │ ├── lsm6dso_wrist_navigation.h │ │ └── lsm6dso_wrist_navigation.ucf │ ├── Wrist-Tilt detection (accelerometer + gyroscope) │ │ ├── README.md │ │ ├── lsm6dso_wrist_tilt_xl_g_left.h │ │ ├── lsm6dso_wrist_tilt_xl_g_left.ucf │ │ ├── lsm6dso_wrist_tilt_xl_g_right.h │ │ └── lsm6dso_wrist_tilt_xl_g_right.ucf │ └── Wrist-Tilt detection (accelerometer only) │ │ ├── README.md │ │ ├── lsm6dso_wrist_tilt_xl.h │ │ └── lsm6dso_wrist_tilt_xl.ucf ├── lsm6dso32 │ ├── Flip-Down detection │ │ ├── README.md │ │ ├── lsm6dso32_flip_down.h │ │ └── lsm6dso32_flip_down.ucf │ ├── FourD position recognition │ │ ├── README.md │ │ ├── lsm6dso32_four_d.h │ │ └── lsm6dso32_four_d.ucf │ ├── Freefall detection │ │ ├── README.md │ │ ├── lsm6dso32_freefall_detection.h │ │ └── lsm6dso32_freefall_detection.ucf │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── lsm6dso32_motion_stationary.h │ │ └── lsm6dso32_motion_stationary.ucf │ ├── README.md │ └── Shake detection │ │ ├── README.md │ │ ├── lsm6dso32_shake.h │ │ └── lsm6dso32_shake.ucf ├── lsm6dso32x │ ├── Flip-Down detection │ │ ├── README.md │ │ ├── lsm6dso32x_flip_down.h │ │ └── lsm6dso32x_flip_down.ucf │ ├── FourD position recognition │ │ ├── README.md │ │ ├── lsm6dso32x_four_d.h │ │ └── lsm6dso32x_four_d.ucf │ ├── Freefall detection │ │ ├── README.md │ │ ├── lsm6dso32x_freefall_detection.h │ │ └── lsm6dso32x_freefall_detection.ucf │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── lsm6dso32x_motion_stationary.h │ │ └── lsm6dso32x_motion_stationary.ucf │ ├── README.md │ └── Shake detection │ │ ├── README.md │ │ ├── lsm6dso32x_shake.h │ │ └── lsm6dso32x_shake.ucf ├── lsm6dsox │ ├── Asset tracking │ │ ├── README.md │ │ ├── datalogs │ │ │ ├── motion.csv │ │ │ ├── shake.csv │ │ │ ├── stationary.csv │ │ │ └── stationary_not_upright.csv │ │ ├── lsm6dsox_asset_tracking.h │ │ └── lsm6dsox_asset_tracking.ucf │ ├── Flip-Down detection │ │ ├── README.md │ │ ├── lsm6dsox_flip_down.h │ │ └── lsm6dsox_flip_down.ucf │ ├── Flip-up detection │ │ ├── README.md │ │ ├── lsm6dsox_flip_up.h │ │ └── lsm6dsox_flip_up.ucf │ ├── FourD position recognition │ │ ├── README.md │ │ ├── lsm6dsox_four_d.h │ │ └── lsm6dsox_four_d.ucf │ ├── Freefall detection │ │ ├── README.md │ │ ├── lsm6dsox_freefall_detection.h │ │ └── lsm6dsox_freefall_detection.ucf │ ├── Glance detection │ │ ├── README.md │ │ ├── lsm6dsox_glance.h │ │ └── lsm6dsox_glance.ucf │ ├── Jiggle detection │ │ ├── README.md │ │ ├── lsm6dsox_jiggle.h │ │ └── lsm6dsox_jiggle.ucf │ ├── Lift detection │ │ ├── README.md │ │ ├── lsm6dsox_lift.h │ │ └── lsm6dsox_lift.ucf │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── lsm6dsox_motion_stationary.h │ │ └── lsm6dsox_motion_stationary.ucf │ ├── Phone-to-ear detection │ │ ├── README.md │ │ ├── lsm6dsox_phone_to_ear.h │ │ └── lsm6dsox_phone_to_ear.ucf │ ├── Pick-up detection │ │ ├── README.md │ │ ├── lsm6dsox_pick_up.h │ │ └── lsm6dsox_pick_up.ucf │ ├── README.md │ ├── Shake detection │ │ ├── README.md │ │ ├── lsm6dsox_shake.h │ │ └── lsm6dsox_shake.ucf │ ├── Wrist navigation gestures │ │ ├── README.md │ │ ├── lsm6dsox_wrist_navigation.h │ │ └── lsm6dsox_wrist_navigation.ucf │ ├── Wrist-Tilt detection (accelerometer + gyroscope) │ │ ├── README.md │ │ ├── lsm6dsox_wrist_tilt_xl_g_left.h │ │ ├── lsm6dsox_wrist_tilt_xl_g_left.ucf │ │ ├── lsm6dsox_wrist_tilt_xl_g_right.h │ │ └── lsm6dsox_wrist_tilt_xl_g_right.ucf │ └── Wrist-Tilt detection (accelerometer only) │ │ ├── README.md │ │ ├── lsm6dsox_wrist_tilt_xl.h │ │ └── lsm6dsox_wrist_tilt_xl.ucf ├── lsm6dsr │ ├── Flip-Down detection │ │ ├── README.md │ │ ├── lsm6dsr_flip_down.h │ │ └── lsm6dsr_flip_down.ucf │ ├── FourD position recognition │ │ ├── README.md │ │ ├── lsm6dsr_four_d.h │ │ └── lsm6dsr_four_d.ucf │ ├── Freefall detection │ │ ├── README.md │ │ ├── lsm6dsr_freefall_detection.h │ │ └── lsm6dsr_freefall_detection.ucf │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── lsm6dsr_motion_stationary.h │ │ └── lsm6dsr_motion_stationary.ucf │ ├── README.md │ └── Shake detection │ │ ├── README.md │ │ ├── lsm6dsr_shake.h │ │ └── lsm6dsr_shake.ucf ├── lsm6dsrx │ ├── Asset tracking │ │ ├── README.md │ │ ├── datalogs │ │ │ ├── motion.csv │ │ │ ├── shake.csv │ │ │ ├── stationary.csv │ │ │ └── stationary_not_upright.csv │ │ ├── lsm6dsrx_asset_tracking.h │ │ └── lsm6dsrx_asset_tracking.ucf │ ├── Flip-Down detection │ │ ├── README.md │ │ ├── lsm6dsrx_flip_down.h │ │ └── lsm6dsrx_flip_down.ucf │ ├── FourD position recognition │ │ ├── README.md │ │ ├── lsm6dsrx_four_d.h │ │ └── lsm6dsrx_four_d.ucf │ ├── Freefall detection │ │ ├── README.md │ │ ├── lsm6dsrx_freefall_detection.h │ │ └── lsm6dsrx_freefall_detection.ucf │ ├── Glance detection │ │ ├── README.md │ │ ├── lsm6dsrx_glance.h │ │ └── lsm6dsrx_glance.ucf │ ├── Jiggle detection │ │ ├── README.md │ │ ├── lsm6dsrx_jiggle.h │ │ └── lsm6dsrx_jiggle.ucf │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── lsm6dsrx_motion_stationary.h │ │ └── lsm6dsrx_motion_stationary.ucf │ ├── README.md │ └── Shake detection │ │ ├── README.md │ │ ├── lsm6dsrx_shake.h │ │ └── lsm6dsrx_shake.ucf ├── lsm6dsv │ ├── Flip-Down detection │ │ ├── README.md │ │ ├── lsm6dsv_flip_down.h │ │ └── lsm6dsv_flip_down.ucf │ ├── Flip-up detection │ │ ├── README.md │ │ ├── lsm6dsv_flip_up.h │ │ └── lsm6dsv_flip_up.ucf │ ├── FourD position recognition │ │ ├── README.md │ │ ├── lsm6dsv_four_d.h │ │ └── lsm6dsv_four_d.ucf │ ├── Freefall detection │ │ ├── README.md │ │ ├── lsm6dsv_freefall_detection.h │ │ └── lsm6dsv_freefall_detection.ucf │ ├── Lift detection │ │ ├── README.md │ │ ├── lsm6dsv_lift_detection.h │ │ └── lsm6dsv_lift_detection.ucf │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── lsm6dsv_motion_stationary.h │ │ └── lsm6dsv_motion_stationary.ucf │ ├── Phone-to-ear detection │ │ ├── README.md │ │ ├── lsm6dsv_phone_to_ear.h │ │ └── lsm6dsv_phone_to_ear.ucf │ ├── Pick-up detection │ │ ├── README.md │ │ ├── lsm6dsv_pick_up.h │ │ └── lsm6dsv_pick_up.ucf │ ├── README.md │ ├── Shake detection │ │ ├── README.md │ │ ├── lsm6dsv_shake.h │ │ └── lsm6dsv_shake.ucf │ ├── Wrist navigation gestures │ │ ├── README.md │ │ ├── lsm6dsv_wrist_navigation.h │ │ └── lsm6dsv_wrist_navigation.ucf │ ├── Wrist-Tilt detection (accelerometer + gyroscope) │ │ ├── README.md │ │ ├── lsm6dsv_wrist_tilt_xl_g_left.h │ │ ├── lsm6dsv_wrist_tilt_xl_g_left.ucf │ │ ├── lsm6dsv_wrist_tilt_xl_g_right.h │ │ └── lsm6dsv_wrist_tilt_xl_g_right.ucf │ └── Wrist-Tilt detection (accelerometer only) │ │ ├── README.md │ │ ├── lsm6dsv_wrist_tilt_xl.h │ │ └── lsm6dsv_wrist_tilt_xl.ucf ├── lsm6dsv16b │ ├── Flip-Down detection │ │ ├── README.md │ │ ├── lsm6dsv16b_flip_down.h │ │ └── lsm6dsv16b_flip_down.ucf │ ├── Flip-up detection │ │ ├── README.md │ │ ├── lsm6dsv16b_flip_up.h │ │ └── lsm6dsv16b_flip_up.ucf │ ├── FourD position recognition │ │ ├── README.md │ │ ├── lsm6dsv16b_four_d.h │ │ └── lsm6dsv16b_four_d.ucf │ ├── Freefall detection │ │ ├── README.md │ │ ├── lsm6dsv16b_freefall_detection.h │ │ └── lsm6dsv16b_freefall_detection.ucf │ ├── Lift detection │ │ ├── README.md │ │ ├── lsm6dsv16b_lift_detection.h │ │ └── lsm6dsv16b_lift_detection.ucf │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── lsm6dsv16b_motion_stationary.h │ │ └── lsm6dsv16b_motion_stationary.ucf │ ├── Phone-to-ear detection │ │ ├── README.md │ │ ├── lsm6dsv16b_phone_to_ear.h │ │ └── lsm6dsv16b_phone_to_ear.ucf │ ├── Pick-up detection │ │ ├── README.md │ │ ├── lsm6dsv16b_pick_up.h │ │ └── lsm6dsv16b_pick_up.ucf │ ├── README.md │ ├── Shake detection │ │ ├── README.md │ │ ├── lsm6dsv16b_shake.h │ │ └── lsm6dsv16b_shake.ucf │ ├── Wrist navigation gestures │ │ ├── README.md │ │ ├── lsm6dsv16b_fsm_wrist_navigation.h │ │ └── lsm6dsv16b_fsm_wrist_navigation.ucf │ ├── Wrist-Tilt detection (accelerometer + gyroscope) │ │ ├── README.md │ │ ├── lsm6dsv16b_wrist_tilt_xl_g_left.h │ │ ├── lsm6dsv16b_wrist_tilt_xl_g_left.ucf │ │ ├── lsm6dsv16b_wrist_tilt_xl_g_right.h │ │ └── lsm6dsv16b_wrist_tilt_xl_g_right.ucf │ └── Wrist-Tilt detection (accelerometer only) │ │ ├── README.md │ │ ├── lsm6dsv16b_wrist_tilt_xl.h │ │ └── lsm6dsv16b_wrist_tilt_xl.ucf ├── lsm6dsv16bx │ ├── Flip-Down detection │ │ ├── README.md │ │ ├── lsm6dsv16bx_flip_down.h │ │ └── lsm6dsv16bx_flip_down.ucf │ ├── Flip-up detection │ │ ├── README.md │ │ ├── lsm6dsv16bx_flip_up.h │ │ └── lsm6dsv16bx_flip_up.ucf │ ├── FourD position recognition │ │ ├── README.md │ │ ├── lsm6dsv16bx_four_d.h │ │ └── lsm6dsv16bx_four_d.ucf │ ├── Freefall detection │ │ ├── README.md │ │ ├── lsm6dsv16bx_freefall_detection.h │ │ └── lsm6dsv16bx_freefall_detection.ucf │ ├── Glance detection │ │ ├── README.md │ │ ├── lsm6dsv16bx_glance_detection.h │ │ └── lsm6dsv16bx_glance_detection.ucf │ ├── Jiggle detection │ │ ├── README.md │ │ ├── lsm6dsv16bx_jiggle_detection.h │ │ └── lsm6dsv16bx_jiggle_detection.ucf │ ├── Lift detection │ │ ├── README.md │ │ ├── lsm6dsv16bx_lift_detection.h │ │ └── lsm6dsv16bx_lift_detection.ucf │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── lsm6dsv16bx_motion_stationary.h │ │ └── lsm6dsv16bx_motion_stationary.ucf │ ├── Phone-to-ear detection │ │ ├── README.md │ │ ├── lsm6dsv16bx_phone_to_ear.h │ │ └── lsm6dsv16bx_phone_to_ear.ucf │ ├── Pick-up detection │ │ ├── README.md │ │ ├── lsm6dsv16bx_pick_up.h │ │ └── lsm6dsv16bx_pick_up.ucf │ ├── README.md │ ├── Shake detection │ │ ├── README.md │ │ ├── lsm6dsv16bx_shake.h │ │ └── lsm6dsv16bx_shake.ucf │ ├── Wrist navigation gestures │ │ ├── README.md │ │ ├── lsm6dsv16bx_fsm_wrist_navigation.h │ │ └── lsm6dsv16bx_fsm_wrist_navigation.ucf │ ├── Wrist-Tilt detection (accelerometer + gyroscope) │ │ ├── README.md │ │ ├── lsm6dsv16bx_wrist_tilt_xl_g_left.h │ │ ├── lsm6dsv16bx_wrist_tilt_xl_g_left.ucf │ │ ├── lsm6dsv16bx_wrist_tilt_xl_g_right.h │ │ └── lsm6dsv16bx_wrist_tilt_xl_g_right.ucf │ └── Wrist-Tilt detection (accelerometer only) │ │ ├── README.md │ │ ├── lsm6dsv16bx_wrist_tilt_xl.h │ │ └── lsm6dsv16bx_wrist_tilt_xl.ucf ├── lsm6dsv16x │ ├── Flip-Down detection │ │ ├── README.md │ │ ├── lsm6dsv16x_flip_down.h │ │ └── lsm6dsv16x_flip_down.ucf │ ├── Flip-up detection │ │ ├── README.md │ │ ├── lsm6dsv16x_flip_up.h │ │ └── lsm6dsv16x_flip_up.ucf │ ├── FourD position recognition │ │ ├── README.md │ │ ├── lsm6dsv16x_four_d.h │ │ └── lsm6dsv16x_four_d.ucf │ ├── Freefall detection │ │ ├── README.md │ │ ├── lsm6dsv16x_freefall_detection.h │ │ └── lsm6dsv16x_freefall_detection.ucf │ ├── Glance detection │ │ ├── README.md │ │ ├── lsm6dsv16x_glance_detection.h │ │ └── lsm6dsv16x_glance_detection.ucf │ ├── Jiggle detection │ │ ├── README.md │ │ ├── lsm6dsv16x_jiggle_detection.h │ │ └── lsm6dsv16x_jiggle_detection.ucf │ ├── Lift detection │ │ ├── README.md │ │ ├── lsm6dsv16x_lift_detection.h │ │ └── lsm6dsv16x_lift_detection.ucf │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── lsm6dsv16x_motion_stationary.h │ │ └── lsm6dsv16x_motion_stationary.ucf │ ├── Phone-to-ear detection │ │ ├── README.md │ │ ├── lsm6dsv16x_phone_to_ear.h │ │ └── lsm6dsv16x_phone_to_ear.ucf │ ├── Pick-up detection │ │ ├── README.md │ │ ├── lsm6dsv16x_pick_up.h │ │ └── lsm6dsv16x_pick_up.ucf │ ├── README.md │ ├── Shake detection │ │ ├── README.md │ │ ├── lsm6dsv16x_shake.h │ │ └── lsm6dsv16x_shake.ucf │ ├── Wrist navigation gestures │ │ ├── README.md │ │ ├── lsm6dsv16x_wrist_navigation.h │ │ └── lsm6dsv16x_wrist_navigation.ucf │ ├── Wrist-Tilt detection (accelerometer + gyroscope) │ │ ├── README.md │ │ ├── lsm6dsv16x_wrist_tilt_xl_g_left.h │ │ ├── lsm6dsv16x_wrist_tilt_xl_g_left.ucf │ │ ├── lsm6dsv16x_wrist_tilt_xl_g_right.h │ │ └── lsm6dsv16x_wrist_tilt_xl_g_right.ucf │ └── Wrist-Tilt detection (accelerometer only) │ │ ├── README.md │ │ ├── lsm6dsv16x_wrist_tilt_xl.h │ │ └── lsm6dsv16x_wrist_tilt_xl.ucf ├── lsm6dsv320x │ ├── Flip-Down detection │ │ ├── README.md │ │ ├── lsm6dsv320x_flip_down.h │ │ └── lsm6dsv320x_flip_down.ucf │ ├── Flip-up detection │ │ ├── README.md │ │ ├── lsm6dsv320x_flip_up.h │ │ └── lsm6dsv320x_flip_up.ucf │ ├── FourD position recognition │ │ ├── README.md │ │ ├── lsm6dsv320x_four_d.h │ │ └── lsm6dsv320x_four_d.ucf │ ├── Freefall detection │ │ ├── README.md │ │ ├── lsm6dsv320x_freefall_detection.h │ │ └── lsm6dsv320x_freefall_detection.ucf │ ├── Glance detection │ │ ├── README.md │ │ ├── lsm6dsv320x_glance_detection.h │ │ └── lsm6dsv320x_glance_detection.ucf │ ├── Jiggle detection │ │ ├── README.md │ │ ├── lsm6dsv320x_jiggle_detection.h │ │ └── lsm6dsv320x_jiggle_detection.ucf │ ├── Lift detection │ │ ├── README.md │ │ ├── lsm6dsv320x_lift_detection.h │ │ └── lsm6dsv320x_lift_detection.ucf │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── lsm6dsv320x_motion_stationary.h │ │ └── lsm6dsv320x_motion_stationary.ucf │ ├── Peak Tracking │ │ ├── README.md │ │ ├── lsm6dsv320x_peak_tracking.h │ │ └── lsm6dsv320x_peak_tracking.ucf │ ├── Phone-to-ear detection │ │ ├── README.md │ │ ├── lsm6dsv320x_phone_to_ear.h │ │ └── lsm6dsv320x_phone_to_ear.ucf │ ├── Pick-up detection │ │ ├── README.md │ │ ├── lsm6dsv320x_pick_up.h │ │ └── lsm6dsv320x_pick_up.ucf │ ├── README.md │ ├── Shake detection │ │ ├── README.md │ │ ├── lsm6dsv320x_shake.h │ │ └── lsm6dsv320x_shake.ucf │ ├── Wrist navigation gestures │ │ ├── README.md │ │ ├── lsm6dsv320x_wrist_navigation.h │ │ └── lsm6dsv320x_wrist_navigation.ucf │ ├── Wrist-Tilt detection (accelerometer + gyroscope) │ │ ├── README.md │ │ ├── lsm6dsv320x_wrist_tilt_xl_g_left.h │ │ ├── lsm6dsv320x_wrist_tilt_xl_g_left.ucf │ │ ├── lsm6dsv320x_wrist_tilt_xl_g_right.h │ │ └── lsm6dsv320x_wrist_tilt_xl_g_right.ucf │ └── Wrist-Tilt detection (accelerometer only) │ │ ├── README.md │ │ ├── lsm6dsv320x_wrist_tilt_xl.h │ │ └── lsm6dsv320x_wrist_tilt_xl.ucf ├── lsm6dsv32x │ ├── Flip-Down detection │ │ ├── README.md │ │ ├── lsm6dsv32x_flip_down.h │ │ └── lsm6dsv32x_flip_down.ucf │ ├── Flip-up detection │ │ ├── README.md │ │ ├── lsm6dsv32x_flip_up.h │ │ └── lsm6dsv32x_flip_up.ucf │ ├── FourD position recognition │ │ ├── README.md │ │ ├── lsm6dsv32x_four_d.h │ │ └── lsm6dsv32x_four_d.ucf │ ├── Freefall detection │ │ ├── README.md │ │ ├── lsm6dsv32x_freefall_detection.h │ │ └── lsm6dsv32x_freefall_detection.ucf │ ├── Glance detection │ │ ├── README.md │ │ ├── lsm6dsv32x_glance_detection.h │ │ └── lsm6dsv32x_glance_detection.ucf │ ├── Jiggle detection │ │ ├── README.md │ │ ├── lsm6dsv32x_jiggle_detection.h │ │ └── lsm6dsv32x_jiggle_detection.ucf │ ├── Lift detection │ │ ├── README.md │ │ ├── lsm6dsv32x_lift_detection.h │ │ └── lsm6dsv32x_lift_detection.ucf │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── lsm6dsv32x_motion_stationary.h │ │ └── lsm6dsv32x_motion_stationary.ucf │ ├── Phone-to-ear detection │ │ ├── README.md │ │ ├── lsm6dsv32x_phone_to_ear.h │ │ └── lsm6dsv32x_phone_to_ear.ucf │ ├── Pick-up detection │ │ ├── README.md │ │ ├── lsm6dsv32x_pick_up.h │ │ └── lsm6dsv32x_pick_up.ucf │ ├── README.md │ ├── Shake detection │ │ ├── README.md │ │ ├── lsm6dsv32x_shake.h │ │ └── lsm6dsv32x_shake.ucf │ ├── Wrist navigation gestures │ │ ├── README.md │ │ ├── lsm6dsv32x_wrist_navigation.h │ │ └── lsm6dsv32x_wrist_navigation.ucf │ ├── Wrist-Tilt detection (accelerometer + gyroscope) │ │ ├── README.md │ │ ├── lsm6dsv32x_wrist_tilt_xl_g_left.h │ │ ├── lsm6dsv32x_wrist_tilt_xl_g_left.ucf │ │ ├── lsm6dsv32x_wrist_tilt_xl_g_right.h │ │ └── lsm6dsv32x_wrist_tilt_xl_g_right.ucf │ └── Wrist-Tilt detection (accelerometer only) │ │ ├── README.md │ │ ├── lsm6dsv32x_wrist_tilt_xl.h │ │ └── lsm6dsv32x_wrist_tilt_xl.ucf ├── lsm6dsv80x │ ├── Flip-Down detection │ │ ├── README.md │ │ ├── lsm6dsv80x_flip_down.h │ │ └── lsm6dsv80x_flip_down.ucf │ ├── Flip-up detection │ │ ├── README.md │ │ ├── lsm6dsv80x_flip_up.h │ │ └── lsm6dsv80x_flip_up.ucf │ ├── FourD position recognition │ │ ├── README.md │ │ ├── lsm6dsv80x_four_d.h │ │ └── lsm6dsv80x_four_d.ucf │ ├── Freefall detection │ │ ├── README.md │ │ ├── lsm6dsv80x_freefall_detection.h │ │ └── lsm6dsv80x_freefall_detection.ucf │ ├── Glance detection │ │ ├── README.md │ │ ├── lsm6dsv80x_glance_detection.h │ │ └── lsm6dsv80x_glance_detection.ucf │ ├── Jiggle detection │ │ ├── README.md │ │ ├── lsm6dsv80x_jiggle_detection.h │ │ └── lsm6dsv80x_jiggle_detection.ucf │ ├── Lift detection │ │ ├── README.md │ │ ├── lsm6dsv80x_lift_detection.h │ │ └── lsm6dsv80x_lift_detection.ucf │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── lsm6dsv80x_motion_stationary.h │ │ └── lsm6dsv80x_motion_stationary.ucf │ ├── Peak Tracking │ │ ├── README.md │ │ ├── lsm6dsv80x_peak_tracking.h │ │ └── lsm6dsv80x_peak_tracking.ucf │ ├── Phone-to-ear detection │ │ ├── README.md │ │ ├── lsm6dsv80x_phone_to_ear.h │ │ └── lsm6dsv80x_phone_to_ear.ucf │ ├── Pick-up detection │ │ ├── README.md │ │ ├── lsm6dsv80x_pick_up.h │ │ └── lsm6dsv80x_pick_up.ucf │ ├── README.md │ ├── Shake detection │ │ ├── README.md │ │ ├── lsm6dsv80x_shake.h │ │ └── lsm6dsv80x_shake.ucf │ ├── Wrist navigation gestures │ │ ├── README.md │ │ ├── lsm6dsv80x_wrist_navigation.h │ │ └── lsm6dsv80x_wrist_navigation.ucf │ ├── Wrist-Tilt detection (accelerometer + gyroscope) │ │ ├── README.md │ │ ├── lsm6dsv80x_wrist_tilt_xl_g_left.h │ │ ├── lsm6dsv80x_wrist_tilt_xl_g_left.ucf │ │ ├── lsm6dsv80x_wrist_tilt_xl_g_right.h │ │ └── lsm6dsv80x_wrist_tilt_xl_g_right.ucf │ └── Wrist-Tilt detection (accelerometer only) │ │ ├── README.md │ │ ├── lsm6dsv80x_wrist_tilt_xl.h │ │ └── lsm6dsv80x_wrist_tilt_xl.ucf ├── st1vafe3bx │ ├── Flip-Down detection │ │ ├── README.md │ │ ├── st1vafe3bx_flip_down.h │ │ └── st1vafe3bx_flip_down.ucf │ ├── Flip-up detection │ │ ├── README.md │ │ ├── st1vafe3bx_flip_up.h │ │ └── st1vafe3bx_flip_up.ucf │ ├── FourD position recognition │ │ ├── README.md │ │ ├── st1vafe3bx_four_d.h │ │ └── st1vafe3bx_four_d.ucf │ ├── Freefall detection │ │ ├── README.md │ │ ├── st1vafe3bx_free_fall.h │ │ └── st1vafe3bx_free_fall.ucf │ ├── Glance detection │ │ ├── README.md │ │ ├── st1vafe3bx_glance_detection.h │ │ └── st1vafe3bx_glance_detection.ucf │ ├── Jiggle detection │ │ ├── README.md │ │ ├── st1vafe3bx_jiggle_detection.h │ │ └── st1vafe3bx_jiggle_detection.ucf │ ├── Lift detection │ │ ├── README.md │ │ ├── st1vafe3bx_lift_detection.h │ │ └── st1vafe3bx_lift_detection.ucf │ ├── Motion-Stationary detection │ │ ├── README.md │ │ ├── st1vafe3bx_motion_stationary.h │ │ └── st1vafe3bx_motion_stationary.ucf │ ├── Pick-up detection │ │ ├── README.md │ │ ├── st1vafe3bx_pickup.h │ │ └── st1vafe3bx_pickup.ucf │ ├── README.md │ ├── Shake detection │ │ ├── README.md │ │ ├── st1vafe3bx_shake.h │ │ └── st1vafe3bx_shake.ucf │ ├── Wrist navigation gestures │ │ ├── README.md │ │ ├── st1vafe3bx_wrist_navigation.h │ │ └── st1vafe3bx_wrist_navigation.ucf │ └── Wrist-Tilt detection (accelerometer only) │ │ ├── README.md │ │ ├── st1vafe3bx_wrist_tilt_xl.h │ │ └── st1vafe3bx_wrist_tilt_xl.ucf └── st1vafe6ax │ ├── Flip-Down detection │ ├── README.md │ ├── st1vafe6ax_flip_down.h │ └── st1vafe6ax_flip_down.ucf │ ├── Flip-up detection │ ├── README.md │ ├── st1vafe6ax_flip_up.h │ └── st1vafe6ax_flip_up.ucf │ ├── FourD position recognition │ ├── README.md │ ├── st1vafe6ax_four_d.h │ └── st1vafe6ax_four_d.ucf │ ├── Freefall detection │ ├── README.md │ ├── st1vafe6ax_freefall_detection.h │ └── st1vafe6ax_freefall_detection.ucf │ ├── Glance detection │ ├── README.md │ ├── st1vafe6ax_glance_detection.h │ └── st1vafe6ax_glance_detection.ucf │ ├── Jiggle detection │ ├── README.md │ ├── st1vafe6ax_jiggle_detection.h │ └── st1vafe6ax_jiggle_detection.ucf │ ├── Lift detection │ ├── README.md │ ├── st1vafe6ax_lift_detection.h │ └── st1vafe6ax_lift_detection.ucf │ ├── Motion-Stationary detection │ ├── README.md │ ├── st1vafe6ax_motion_stationary.h │ └── st1vafe6ax_motion_stationary.ucf │ ├── Phone-to-ear detection │ ├── README.md │ ├── st1vafe6ax_phone_to_ear.h │ └── st1vafe6ax_phone_to_ear.ucf │ ├── Pick-up detection │ ├── README.md │ ├── st1vafe6ax_pick_up.h │ └── st1vafe6ax_pick_up.ucf │ ├── README.md │ ├── Shake detection │ ├── README.md │ ├── st1vafe6ax_shake.h │ └── st1vafe6ax_shake.ucf │ ├── Wrist navigation gestures │ ├── README.md │ ├── st1vafe6ax_fsm_wrist_navigation.h │ └── st1vafe6ax_fsm_wrist_navigation.ucf │ ├── Wrist-Tilt detection (accelerometer + gyroscope) │ ├── README.md │ ├── st1vafe6ax_wrist_tilt_xl_g_left.h │ ├── st1vafe6ax_wrist_tilt_xl_g_left.ucf │ ├── st1vafe6ax_wrist_tilt_xl_g_right.h │ └── st1vafe6ax_wrist_tilt_xl_g_right.ucf │ └── Wrist-Tilt detection (accelerometer only) │ ├── README.md │ ├── st1vafe6ax_wrist_tilt_xl.h │ └── st1vafe6ax_wrist_tilt_xl.ucf └── configuration_examples ├── README.md ├── example_0_fsm ├── README.md └── utils │ ├── fig_01.png │ ├── fig_02.png │ ├── fig_03.png │ ├── fig_04.png │ ├── fig_05.png │ ├── fig_06.png │ └── freefall.ucf ├── example_1_fsm_mlc_filter ├── README.md └── utils │ ├── fig_01.png │ ├── fig_02.png │ ├── fig_03.png │ ├── fig_04.png │ ├── fig_05.png │ ├── fig_06.png │ ├── fig_07.png │ ├── fig_08.png │ ├── fig_09.png │ ├── fig_10.png │ ├── mlc_hp_xyz.ucf │ ├── wake_up.ucf │ ├── wake_up_no_filter.ucf │ └── wake_up_sinmux.ucf ├── example_2_fsm_mlc_decision_tree ├── README.md └── utils │ ├── fig_01.png │ ├── fig_02.png │ ├── fig_03.png │ ├── fig_04.png │ ├── fig_05.png │ ├── fig_06.png │ ├── fig_07.png │ ├── fig_08.png │ ├── fig_09.png │ ├── fsm.ucf │ ├── high_intensity.ucf │ └── mlc_motion_intensity.ucf ├── example_3_fsm_ext_sensor ├── README.md └── utils │ ├── fig_01.png │ ├── fig_02.png │ ├── fig_03.png │ ├── fig_04.png │ ├── fig_05.png │ ├── fig_06.png │ └── mag_anomalies_detection_fsm.ucf └── example_4_fsm_sflp_asc ├── README.md └── utils ├── fig_01.png ├── fig_02.png ├── fig_03.png ├── fig_04.png ├── fig_05.png ├── fig_06.png ├── fig_07.png └── lsm6dsv16x_fsm_sflp_asc.ucf /application_examples/asm330lhb/README.md: -------------------------------------------------------------------------------- 1 | # ASM330LHB 2 | 3 | High-accuracy 6-axis automotive inertial measurement unit (IMU) with embedded finite state machine and dual operating modes. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/asm330lhb.html 6 | 7 | Note: the FSM application examples available for ASM330LHHX ([available here](./../asm330lhhx)) can be used also for ASM330LHB. 8 | 9 | 10 | -------------------------------------------------------------------------------- /application_examples/asm330lhbg1/README.md: -------------------------------------------------------------------------------- 1 | # ASM330LHBG1 2 | 3 | High-accuracy 6-axis automotive inertial measurement unit (IMU) with embedded finite state machine and dual operating modes. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/asm330lhbg1.html 6 | 7 | Note: the FSM application examples available for ASM330LHHX ([available here](./../asm330lhhx)) can be used also for ASM330LHBG1. 8 | 9 | 10 | -------------------------------------------------------------------------------- /application_examples/asm330lhhx/Motion-Stationary detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *motion* and *stationary* states of the device. The example uses the accelerometer sensor. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = Stationary state detected 17 | - 01h = Motion state detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *motion* or a *stationary* event is detected. The *motion* interrupt is generated when the device is in *stationary* state and it is moved. The *stationary* interrupt is generated when the device is in *motion* state and it is still for 5 seconds. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2022 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/asm330lhhx/README.md: -------------------------------------------------------------------------------- 1 | # ASM330LHHX 2 | 3 | High-accuracy 6-axis automotive inertial measurement unit (IMU) with embedded finite state machine and dual operating modes. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/asm330lhhx.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/asm330lhhx/Shake detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *shake* gesture example. This gesture is detected when the user is shaking the accelerometer along the X-axis. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *shake* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2022 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/asm330lhhxg1/README.md: -------------------------------------------------------------------------------- 1 | # ASM330LHHXG1 2 | 3 | High-accuracy 6-axis automotive inertial measurement unit (IMU) with embedded finite state machine and dual operating modes. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/asm330lhhxg1.html 6 | 7 | Note: the FSM application examples available for ASM330LHHX ([available here](./../asm330lhhx)) can be used also for ASM330LHHXG1. 8 | 9 | 10 | -------------------------------------------------------------------------------- /application_examples/iis2dulpx/FourD position recognition/iis2dulpx_four_d.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI246KA (IIS2DULPX) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 14 00 12 | Ac 13 10 13 | WAIT 5 14 | Ac 3F 80 15 | Ac 04 00 16 | Ac 05 00 17 | Ac 39 4B 18 | Ac 1A 01 19 | Ac 0A 00 20 | Ac 0B 01 21 | Ac 0E 00 22 | Ac 0F 00 23 | Ac 17 40 24 | Ac 02 01 25 | Ac 08 54 26 | Ac 09 00 27 | Ac 09 00 28 | Ac 09 01 29 | Ac 09 01 30 | Ac 09 00 31 | Ac 09 02 32 | Ac 02 21 33 | Ac 08 00 34 | Ac 09 91 35 | Ac 09 10 36 | Ac 09 16 37 | Ac 09 00 38 | Ac 09 0F 39 | Ac 09 00 40 | Ac 09 66 41 | Ac 09 3A 42 | Ac 09 66 43 | Ac 09 32 44 | Ac 09 F0 45 | Ac 09 00 46 | Ac 09 00 47 | Ac 09 0D 48 | Ac 09 00 49 | Ac 09 EF 50 | Ac 09 33 51 | Ac 09 05 52 | Ac 09 73 53 | Ac 09 99 54 | Ac 09 08 55 | Ac 09 22 56 | Ac 04 00 57 | Ac 05 01 58 | Ac 17 00 59 | Ac 3F 00 60 | Ac 1F 01 61 | Ac 14 33 62 | -------------------------------------------------------------------------------- /application_examples/iis2dulpx/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 11.2 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | Any orientation. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when the *freefall* is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2023 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/iis2dulpx/Freefall detection/iis2dulpx_free_fall.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI246KA (IIS2DULPX) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 14 00 12 | Ac 13 10 13 | WAIT 5 14 | Ac 3F 80 15 | Ac 04 00 16 | Ac 05 00 17 | Ac 39 4B 18 | Ac 1A 01 19 | Ac 0A 00 20 | Ac 0B 01 21 | Ac 0E 00 22 | Ac 0F 00 23 | Ac 17 40 24 | Ac 02 01 25 | Ac 08 54 26 | Ac 09 00 27 | Ac 09 00 28 | Ac 09 01 29 | Ac 09 01 30 | Ac 09 00 31 | Ac 09 02 32 | Ac 02 21 33 | Ac 08 00 34 | Ac 09 71 35 | Ac 09 10 36 | Ac 09 1C 37 | Ac 09 00 38 | Ac 09 11 39 | Ac 09 00 40 | Ac 09 CD 41 | Ac 09 34 42 | Ac 09 A8 43 | Ac 09 00 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 01 47 | Ac 09 00 48 | Ac 09 00 49 | Ac 09 02 50 | Ac 09 00 51 | Ac 09 F5 52 | Ac 09 77 53 | Ac 09 99 54 | Ac 09 12 55 | Ac 09 66 56 | Ac 09 53 57 | Ac 09 C7 58 | Ac 09 88 59 | Ac 09 99 60 | Ac 09 50 61 | Ac 09 00 62 | Ac 04 00 63 | Ac 05 01 64 | Ac 17 00 65 | Ac 3F 00 66 | Ac 1F 01 67 | Ac 14 33 68 | -------------------------------------------------------------------------------- /application_examples/iis2dulpx/Motion-Stationary detection/iis2dulpx_motion_stationary.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI246KA (IIS2DULPX) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 14 00 12 | Ac 13 10 13 | WAIT 5 14 | Ac 3F 80 15 | Ac 04 00 16 | Ac 05 00 17 | Ac 39 4B 18 | Ac 1A 01 19 | Ac 0A 00 20 | Ac 0B 01 21 | Ac 0E 00 22 | Ac 0F 00 23 | Ac 17 40 24 | Ac 02 01 25 | Ac 08 54 26 | Ac 09 00 27 | Ac 09 00 28 | Ac 09 01 29 | Ac 09 01 30 | Ac 09 00 31 | Ac 09 02 32 | Ac 02 21 33 | Ac 08 00 34 | Ac 09 71 35 | Ac 09 00 36 | Ac 09 1A 37 | Ac 09 00 38 | Ac 09 10 39 | Ac 09 00 40 | Ac 09 9A 41 | Ac 09 3C 42 | Ac 09 02 43 | Ac 09 00 44 | Ac 09 01 45 | Ac 09 00 46 | Ac 09 00 47 | Ac 09 00 48 | Ac 09 00 49 | Ac 09 7D 50 | Ac 09 66 51 | Ac 09 05 52 | Ac 09 77 53 | Ac 09 99 54 | Ac 09 66 55 | Ac 09 33 56 | Ac 09 53 57 | Ac 09 44 58 | Ac 09 88 59 | Ac 09 22 60 | Ac 04 00 61 | Ac 05 01 62 | Ac 17 00 63 | Ac 3F 00 64 | Ac 1F 01 65 | Ac 14 33 66 | -------------------------------------------------------------------------------- /application_examples/iis2dulpx/README.md: -------------------------------------------------------------------------------- 1 | # IIS2DULPX 2 | 3 | The IIS2DULPX is an intelligent, digital 3-axis linear accelerometer whose MEMS and ASIC have been expressly designed to combine the lowest supply current possible with features such as always-on antialiasing filtering, a finite state machine (FSM) and machine learning core (MLC) with adaptive self-configuration (ASC), and an analog hub / Qvar sensing channel. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/iis2dulpx.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/iis2iclx/README.md: -------------------------------------------------------------------------------- 1 | # IIS2ICLX 2 | 3 | High-accuracy, High-resolution, Low-power, 2-axis Digital Inclinometer with Embedded Machine Learning Core. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/iis2iclx.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/iis2iclx/Tilt detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | This Finite State Machine (FSM) example implements *tilt detection*, used to trigger an event when the inclination between the x-axis and the horizontal plane exceeds a specified angle. 4 | 5 | The FSM processes data coming from the accelerometer, configured at 26 Hz and 2 g. 6 | 7 | The tilt angle is configurable, the default is -30 degrees (-0.5 g on the x-axis). 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | The device must be placed with the x-y plane parallel to gravity. At 0 degrees of tilt the y-axis is pointing up. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *tilt* of the specified angle is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2020 STMicroelectronics** 29 | -------------------------------------------------------------------------------- /application_examples/ism330bx/FourD position recognition/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple example of 4D position recognition typically used in smartphone devices. The example uses the accelerometer X and Y axes to determine portrait (up or down) and landscape (left or right) orientation. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = N/A 17 | - 10h = Y-axis pointing down (portrait, down) 18 | - 20h = Y-axis pointing up (portrait, up) 19 | - 04h = X-axis pointing down (landscape, right) 20 | - 08h = X-axis pointing up (landscape, left) 21 | 22 | 23 | ## 4 - Interrupts 24 | 25 | The configuration generates an interrupt on INT1 when a change in the orientation is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new orientation. 26 | 27 | ------ 28 | 29 | **More Information: [http://www.st.com](http://st.com/MEMS)** 30 | 31 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/ism330bx/FourD position recognition/ism330bx_four_d.ucf: -------------------------------------------------------------------------------- 1 | -- FSMTool v1.1.0, ISM330BX 2 | -- FSM1 3 | 4 | Ac 10 00 5 | Ac 11 00 6 | Ac 01 80 7 | Ac 04 00 8 | Ac 05 00 9 | Ac 5F 4B 10 | Ac 46 01 11 | Ac 0A 00 12 | Ac 0B 01 13 | Ac 0E 00 14 | Ac 0F 00 15 | Ac 17 40 16 | Ac 02 11 17 | Ac 08 7A 18 | Ac 09 00 19 | Ac 09 00 20 | Ac 09 01 21 | Ac 09 01 22 | Ac 09 00 23 | Ac 09 04 24 | Ac 02 41 25 | Ac 08 00 26 | Ac 09 91 27 | Ac 09 10 28 | Ac 09 16 29 | Ac 09 00 30 | Ac 09 0F 31 | Ac 09 00 32 | Ac 09 66 33 | Ac 09 3A 34 | Ac 09 66 35 | Ac 09 32 36 | Ac 09 3C 37 | Ac 09 00 38 | Ac 09 00 39 | Ac 09 0F 40 | Ac 09 00 41 | Ac 09 EF 42 | Ac 09 33 43 | Ac 09 05 44 | Ac 09 73 45 | Ac 09 99 46 | Ac 09 08 47 | Ac 09 22 48 | Ac 04 00 49 | Ac 05 01 50 | Ac 17 00 51 | Ac 01 00 52 | Ac 5E 02 53 | Ac 17 03 54 | Ac 10 44 55 | -------------------------------------------------------------------------------- /application_examples/ism330bx/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *freefall* is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/ism330bx/Freefall detection/ism330bx_freefall_detection.ucf: -------------------------------------------------------------------------------- 1 | -- FSMTool v1.1.0, ISM330BX 2 | -- FSM1 3 | 4 | Ac 10 00 5 | Ac 11 00 6 | Ac 01 80 7 | Ac 04 00 8 | Ac 05 00 9 | Ac 5F 4B 10 | Ac 46 01 11 | Ac 0A 00 12 | Ac 0B 01 13 | Ac 0E 00 14 | Ac 0F 00 15 | Ac 17 40 16 | Ac 02 11 17 | Ac 08 7A 18 | Ac 09 00 19 | Ac 09 00 20 | Ac 09 01 21 | Ac 09 01 22 | Ac 09 00 23 | Ac 09 04 24 | Ac 02 41 25 | Ac 08 00 26 | Ac 09 71 27 | Ac 09 10 28 | Ac 09 1C 29 | Ac 09 00 30 | Ac 09 11 31 | Ac 09 00 32 | Ac 09 CD 33 | Ac 09 34 34 | Ac 09 A8 35 | Ac 09 00 36 | Ac 09 00 37 | Ac 09 00 38 | Ac 09 01 39 | Ac 09 00 40 | Ac 09 00 41 | Ac 09 04 42 | Ac 09 00 43 | Ac 09 F5 44 | Ac 09 77 45 | Ac 09 99 46 | Ac 09 12 47 | Ac 09 66 48 | Ac 09 53 49 | Ac 09 C7 50 | Ac 09 88 51 | Ac 09 99 52 | Ac 09 50 53 | Ac 09 00 54 | Ac 04 00 55 | Ac 05 01 56 | Ac 17 00 57 | Ac 01 00 58 | Ac 5E 02 59 | Ac 17 03 60 | Ac 10 44 61 | -------------------------------------------------------------------------------- /application_examples/ism330bx/Motion-Stationary detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *motion* and *stationary* states of the device. The example uses the accelerometer sensor. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = Stationary state detected 17 | - 01h = Motion state detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *motion* or a *stationary* event is detected. The *motion* interrupt is generated when the device is in *stationary* state and it is moved. The *stationary* interrupt is generated when the device is in *motion* state and it is still for 5 seconds. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/ism330bx/Motion-Stationary detection/ism330bx_motion_stationary.ucf: -------------------------------------------------------------------------------- 1 | -- FSMTool v1.1.0, ISM330BX 2 | -- FSM1 3 | 4 | Ac 10 00 5 | Ac 11 00 6 | Ac 01 80 7 | Ac 04 00 8 | Ac 05 00 9 | Ac 5F 4B 10 | Ac 46 01 11 | Ac 0A 00 12 | Ac 0B 01 13 | Ac 0E 00 14 | Ac 0F 00 15 | Ac 17 40 16 | Ac 02 11 17 | Ac 08 7A 18 | Ac 09 00 19 | Ac 09 00 20 | Ac 09 01 21 | Ac 09 01 22 | Ac 09 00 23 | Ac 09 04 24 | Ac 02 41 25 | Ac 08 00 26 | Ac 09 71 27 | Ac 09 00 28 | Ac 09 1A 29 | Ac 09 00 30 | Ac 09 10 31 | Ac 09 00 32 | Ac 09 66 33 | Ac 09 3C 34 | Ac 09 02 35 | Ac 09 00 36 | Ac 09 01 37 | Ac 09 00 38 | Ac 09 00 39 | Ac 09 00 40 | Ac 09 00 41 | Ac 09 96 42 | Ac 09 66 43 | Ac 09 05 44 | Ac 09 77 45 | Ac 09 99 46 | Ac 09 66 47 | Ac 09 33 48 | Ac 09 53 49 | Ac 09 44 50 | Ac 09 88 51 | Ac 09 22 52 | Ac 04 00 53 | Ac 05 01 54 | Ac 17 00 55 | Ac 01 00 56 | Ac 5E 02 57 | Ac 17 03 58 | Ac 10 44 59 | -------------------------------------------------------------------------------- /application_examples/ism330bx/README.md: -------------------------------------------------------------------------------- 1 | # ISM330BX 2 | 3 | iNEMO inertial module with Machine Learning Core, Finite State Machine with digital output for industrial applications. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/ism330bx.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/ism330dhcx/FourD position recognition/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple example of 4D position recognition. The example uses the accelerometer X and Y axes to determine portrait (up or down) and landscape (left or right) orientation. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = N/A 17 | - 10h = Y-axis pointing down (portrait, down) 18 | - 20h = Y-axis pointing up (portrait, up) 19 | - 40h = X-axis pointing down (landscape, right) 20 | - 80h = X-axis pointing up (landscape, left) 21 | 22 | 23 | ## 4 - Interrupts 24 | 25 | The configuration generates an interrupt on INT1 when a change in the orientation is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new orientation. 26 | 27 | ------ 28 | 29 | **More Information: [http://www.st.com](http://st.com/MEMS)** 30 | 31 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/ism330dhcx/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *freefall* is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/ism330dhcx/Motion-Stationary detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *motion* and *stationary* states of the device. The example uses the accelerometer sensor. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = Stationary state detected 17 | - 01h = Motion state detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *motion* or a *stationary* event is detected. The *motion* interrupt is generated when the device is in *stationary* state and it is moved. The *stationary* interrupt is generated when the device is in *motion* state and it is still for 5 seconds. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/ism330dhcx/README.md: -------------------------------------------------------------------------------- 1 | # ISM330DHCX 2 | 3 | iNEMO inertial module with Machine Learning Core, Finite State Machine with digital output for industrial applications. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/ism330dhcx.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/lis2dux12/Flip-Down detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *flip-down* gesture example, used to stop the phone-call by placing the accelerometer Z axis downward. 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 10.5 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | ENU, SEU, WSU or NWU orientation is required. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when the *flip-down* gesture is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2023 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lis2dux12/Flip-Down detection/lis2dux12_flip_down.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI238A (LIS2DUX12) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 14 00 12 | Ac 13 10 13 | WAIT 5 14 | Ac 3F 80 15 | Ac 04 00 16 | Ac 05 00 17 | Ac 39 4B 18 | Ac 1A 01 19 | Ac 0A 00 20 | Ac 0B 01 21 | Ac 0E 00 22 | Ac 0F 00 23 | Ac 17 40 24 | Ac 02 01 25 | Ac 08 54 26 | Ac 09 00 27 | Ac 09 00 28 | Ac 09 01 29 | Ac 09 01 30 | Ac 09 00 31 | Ac 09 02 32 | Ac 02 21 33 | Ac 08 00 34 | Ac 09 92 35 | Ac 09 00 36 | Ac 09 16 37 | Ac 09 00 38 | Ac 09 0F 39 | Ac 09 00 40 | Ac 09 CD 41 | Ac 09 BA 42 | Ac 09 00 43 | Ac 09 00 44 | Ac 09 08 45 | Ac 09 00 46 | Ac 09 00 47 | Ac 09 09 48 | Ac 09 0D 49 | Ac 09 06 50 | Ac 09 84 51 | Ac 09 33 52 | Ac 09 53 53 | Ac 09 44 54 | Ac 09 22 55 | Ac 09 00 56 | Ac 04 00 57 | Ac 05 01 58 | Ac 17 00 59 | Ac 3F 00 60 | Ac 1F 01 61 | Ac 14 33 62 | -------------------------------------------------------------------------------- /application_examples/lis2dux12/Flip-up detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | This Finite State Machine (FSM) example implements the *flip-up* gesture typically used in mobile devices to signal the event of flipping the device up when it is facing down on a table. It is typically used to automatically turn on the device screen. 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 10.8 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | ENU orientation is required. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when the *flip-up* gesture is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2023 STMicroelectronics** 29 | 30 | -------------------------------------------------------------------------------- /application_examples/lis2dux12/FourD position recognition/lis2dux12_four_d.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI238A (LIS2DUX12) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 14 00 12 | Ac 13 10 13 | WAIT 5 14 | Ac 3F 80 15 | Ac 04 00 16 | Ac 05 00 17 | Ac 39 4B 18 | Ac 1A 01 19 | Ac 0A 00 20 | Ac 0B 01 21 | Ac 0E 00 22 | Ac 0F 00 23 | Ac 17 40 24 | Ac 02 01 25 | Ac 08 54 26 | Ac 09 00 27 | Ac 09 00 28 | Ac 09 01 29 | Ac 09 01 30 | Ac 09 00 31 | Ac 09 02 32 | Ac 02 21 33 | Ac 08 00 34 | Ac 09 91 35 | Ac 09 10 36 | Ac 09 16 37 | Ac 09 00 38 | Ac 09 0F 39 | Ac 09 00 40 | Ac 09 66 41 | Ac 09 3A 42 | Ac 09 66 43 | Ac 09 32 44 | Ac 09 F0 45 | Ac 09 00 46 | Ac 09 00 47 | Ac 09 0D 48 | Ac 09 00 49 | Ac 09 EF 50 | Ac 09 33 51 | Ac 09 05 52 | Ac 09 73 53 | Ac 09 99 54 | Ac 09 08 55 | Ac 09 22 56 | Ac 04 00 57 | Ac 05 01 58 | Ac 17 00 59 | Ac 3F 00 60 | Ac 1F 01 61 | Ac 14 33 62 | -------------------------------------------------------------------------------- /application_examples/lis2dux12/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 11.2 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | Any orientation. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when the *freefall* is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2023 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lis2dux12/Freefall detection/lis2dux12_free_fall.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI238A (LIS2DUX12) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 14 00 12 | Ac 13 10 13 | WAIT 5 14 | Ac 3F 80 15 | Ac 04 00 16 | Ac 05 00 17 | Ac 39 4B 18 | Ac 1A 01 19 | Ac 0A 00 20 | Ac 0B 01 21 | Ac 0E 00 22 | Ac 0F 00 23 | Ac 17 40 24 | Ac 02 01 25 | Ac 08 54 26 | Ac 09 00 27 | Ac 09 00 28 | Ac 09 01 29 | Ac 09 01 30 | Ac 09 00 31 | Ac 09 02 32 | Ac 02 21 33 | Ac 08 00 34 | Ac 09 71 35 | Ac 09 10 36 | Ac 09 1C 37 | Ac 09 00 38 | Ac 09 11 39 | Ac 09 00 40 | Ac 09 CD 41 | Ac 09 34 42 | Ac 09 A8 43 | Ac 09 00 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 01 47 | Ac 09 00 48 | Ac 09 00 49 | Ac 09 02 50 | Ac 09 00 51 | Ac 09 F5 52 | Ac 09 77 53 | Ac 09 99 54 | Ac 09 12 55 | Ac 09 66 56 | Ac 09 53 57 | Ac 09 C7 58 | Ac 09 88 59 | Ac 09 99 60 | Ac 09 50 61 | Ac 09 00 62 | Ac 04 00 63 | Ac 05 01 64 | Ac 17 00 65 | Ac 3F 00 66 | Ac 1F 01 67 | Ac 14 33 68 | -------------------------------------------------------------------------------- /application_examples/lis2dux12/Glance detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *glance* and *de-glance* gestures typically used in smartphone devices. The two gestures can be used to turn-on and turn-off the screen automatically. The example uses the accelerometer low-pass filtered data at 1 Hz using the *Machine Learning Core*. 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 11.4 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | ENU orientation is required. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | - FSM_OUTS1 register values 18 | - 20h = Glance gesture detected 19 | - 08h = De-glance gesture detected 20 | 21 | 22 | ## 4 - Interrupts 23 | 24 | The configuration generates an interrupt on INT1 when a *glance* or a *de-glance* gesture is detected. Reading the FSM_OUTS1 register allows to determine the new state. 25 | 26 | ------ 27 | 28 | **More Information: [http://www.st.com](http://st.com/MEMS)** 29 | 30 | **Copyright © 2023 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lis2dux12/Jiggle detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *jiggle* gesture (similar to a shake) example for wrist-worn devices. The gesture is detected when the accelerometer Z-axis is pointing up and the user is shaking the device along the Y-axis (accelerometer data low-pass filtered at 1 Hz using the *Machine Learning Core*). 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 11.5 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | ENU orientation is required. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when the *jiggle* gesture is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2023 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lis2dux12/Motion-Stationary detection/lis2dux12_motion_stationary.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI238A (LIS2DUX12) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 14 00 12 | Ac 13 10 13 | WAIT 5 14 | Ac 3F 80 15 | Ac 04 00 16 | Ac 05 00 17 | Ac 39 4B 18 | Ac 1A 01 19 | Ac 0A 00 20 | Ac 0B 01 21 | Ac 0E 00 22 | Ac 0F 00 23 | Ac 17 40 24 | Ac 02 01 25 | Ac 08 54 26 | Ac 09 00 27 | Ac 09 00 28 | Ac 09 01 29 | Ac 09 01 30 | Ac 09 00 31 | Ac 09 02 32 | Ac 02 21 33 | Ac 08 00 34 | Ac 09 71 35 | Ac 09 00 36 | Ac 09 1A 37 | Ac 09 00 38 | Ac 09 10 39 | Ac 09 00 40 | Ac 09 9A 41 | Ac 09 3C 42 | Ac 09 02 43 | Ac 09 00 44 | Ac 09 01 45 | Ac 09 00 46 | Ac 09 00 47 | Ac 09 00 48 | Ac 09 00 49 | Ac 09 7D 50 | Ac 09 66 51 | Ac 09 05 52 | Ac 09 77 53 | Ac 09 99 54 | Ac 09 66 55 | Ac 09 33 56 | Ac 09 53 57 | Ac 09 44 58 | Ac 09 88 59 | Ac 09 22 60 | Ac 04 00 61 | Ac 05 01 62 | Ac 17 00 63 | Ac 3F 00 64 | Ac 1F 01 65 | Ac 14 33 66 | -------------------------------------------------------------------------------- /application_examples/lis2dux12/Pick-up detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | This Finite State Machine (FSM) example implements the *pick-up* gesture typically used in mobile devices to signal the event of picking up the device from a table. It is typically used to automatically turn on some services. 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 10.5 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | ENU, SEU, WSU or NWU orientation is required. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when the *pick-up* gesture is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2023 STMicroelectronics** 29 | 30 | -------------------------------------------------------------------------------- /application_examples/lis2dux12/Pick-up detection/lis2dux12_pickup.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI238A (LIS2DUX12) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 14 00 12 | Ac 13 10 13 | WAIT 5 14 | Ac 3F 80 15 | Ac 04 00 16 | Ac 05 00 17 | Ac 39 4B 18 | Ac 1A 01 19 | Ac 0A 00 20 | Ac 0B 01 21 | Ac 0E 00 22 | Ac 0F 00 23 | Ac 17 40 24 | Ac 02 01 25 | Ac 08 54 26 | Ac 09 00 27 | Ac 09 00 28 | Ac 09 01 29 | Ac 09 01 30 | Ac 09 00 31 | Ac 09 02 32 | Ac 02 21 33 | Ac 08 00 34 | Ac 09 91 35 | Ac 09 00 36 | Ac 09 14 37 | Ac 09 00 38 | Ac 09 0E 39 | Ac 09 00 40 | Ac 09 CD 41 | Ac 09 3A 42 | Ac 09 9A 43 | Ac 09 3C 44 | Ac 09 08 45 | Ac 09 00 46 | Ac 09 00 47 | Ac 09 4B 48 | Ac 09 12 49 | Ac 09 66 50 | Ac 09 73 51 | Ac 09 06 52 | Ac 09 22 53 | Ac 09 00 54 | Ac 04 00 55 | Ac 05 01 56 | Ac 17 00 57 | Ac 3F 00 58 | Ac 1F 01 59 | Ac 14 33 60 | -------------------------------------------------------------------------------- /application_examples/lis2dux12/README.md: -------------------------------------------------------------------------------- 1 | # LIS2DUX12 2 | 3 | Ultralow-power 3-axis smart accelerometer with AI, antialiasing filter, and advanced digital features. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/lis2dux12.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/lis2dux12/Shake detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *shake* gesture example for smartphone devices. This gesture is detected when the user is shaking the accelerometer along the X-axis. 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 10.7 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | ENU orientation is required. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when the *shake* gesture is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2023 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lis2dux12/Shake detection/lis2dux12_shake.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI238A (LIS2DUX12) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 14 00 12 | Ac 13 10 13 | WAIT 5 14 | Ac 3F 80 15 | Ac 04 00 16 | Ac 05 00 17 | Ac 39 4B 18 | Ac 1A 01 19 | Ac 0A 00 20 | Ac 0B 01 21 | Ac 0E 00 22 | Ac 0F 00 23 | Ac 17 40 24 | Ac 02 01 25 | Ac 08 54 26 | Ac 09 00 27 | Ac 09 00 28 | Ac 09 01 29 | Ac 09 01 30 | Ac 09 00 31 | Ac 09 02 32 | Ac 02 21 33 | Ac 08 00 34 | Ac 09 51 35 | Ac 09 10 36 | Ac 09 18 37 | Ac 09 00 38 | Ac 09 0D 39 | Ac 09 00 40 | Ac 09 00 41 | Ac 09 3E 42 | Ac 09 80 43 | Ac 09 00 44 | Ac 09 00 45 | Ac 09 08 46 | Ac 09 00 47 | Ac 09 7C 48 | Ac 09 41 49 | Ac 09 5C 50 | Ac 09 12 51 | Ac 09 15 52 | Ac 09 3C 53 | Ac 09 35 54 | Ac 09 22 55 | Ac 09 35 56 | Ac 09 3C 57 | Ac 09 22 58 | Ac 04 00 59 | Ac 05 01 60 | Ac 17 00 61 | Ac 3F 00 62 | Ac 1F 01 63 | Ac 14 33 64 | -------------------------------------------------------------------------------- /application_examples/lis2duxs12/Flip-Down detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *flip-down* gesture example, used to stop the phone-call by placing the accelerometer Z axis downward. 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 10.5 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | ENU, SEU, WSU or NWU orientation is required. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when the *flip-down* gesture is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2023 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lis2duxs12/Flip-Down detection/lis2duxs12_flip_down.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI235KA (LIS2DUXS12) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 14 00 12 | Ac 13 10 13 | WAIT 5 14 | Ac 3F 80 15 | Ac 04 00 16 | Ac 05 00 17 | Ac 39 4B 18 | Ac 1A 01 19 | Ac 0A 00 20 | Ac 0B 01 21 | Ac 0E 00 22 | Ac 0F 00 23 | Ac 17 40 24 | Ac 02 01 25 | Ac 08 54 26 | Ac 09 00 27 | Ac 09 00 28 | Ac 09 01 29 | Ac 09 01 30 | Ac 09 00 31 | Ac 09 02 32 | Ac 02 21 33 | Ac 08 00 34 | Ac 09 92 35 | Ac 09 00 36 | Ac 09 16 37 | Ac 09 00 38 | Ac 09 0F 39 | Ac 09 00 40 | Ac 09 CD 41 | Ac 09 BA 42 | Ac 09 00 43 | Ac 09 00 44 | Ac 09 08 45 | Ac 09 00 46 | Ac 09 00 47 | Ac 09 09 48 | Ac 09 0D 49 | Ac 09 06 50 | Ac 09 84 51 | Ac 09 33 52 | Ac 09 53 53 | Ac 09 44 54 | Ac 09 22 55 | Ac 09 00 56 | Ac 04 00 57 | Ac 05 01 58 | Ac 17 00 59 | Ac 3F 00 60 | Ac 1F 01 61 | Ac 14 33 62 | -------------------------------------------------------------------------------- /application_examples/lis2duxs12/Flip-up detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | This Finite State Machine (FSM) example implements the *flip-up* gesture typically used in mobile devices to signal the event of flipping the device up when it is facing down on a table. It is typically used to automatically turn on the device screen. 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 10.8 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | ENU orientation is required. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when the *flip-up* gesture is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2023 STMicroelectronics** 29 | 30 | -------------------------------------------------------------------------------- /application_examples/lis2duxs12/FourD position recognition/lis2duxs12_four_d.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI235KA (LIS2DUXS12) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 14 00 12 | Ac 13 10 13 | WAIT 5 14 | Ac 3F 80 15 | Ac 04 00 16 | Ac 05 00 17 | Ac 39 4B 18 | Ac 1A 01 19 | Ac 0A 00 20 | Ac 0B 01 21 | Ac 0E 00 22 | Ac 0F 00 23 | Ac 17 40 24 | Ac 02 01 25 | Ac 08 54 26 | Ac 09 00 27 | Ac 09 00 28 | Ac 09 01 29 | Ac 09 01 30 | Ac 09 00 31 | Ac 09 02 32 | Ac 02 21 33 | Ac 08 00 34 | Ac 09 91 35 | Ac 09 10 36 | Ac 09 16 37 | Ac 09 00 38 | Ac 09 0F 39 | Ac 09 00 40 | Ac 09 66 41 | Ac 09 3A 42 | Ac 09 66 43 | Ac 09 32 44 | Ac 09 F0 45 | Ac 09 00 46 | Ac 09 00 47 | Ac 09 0D 48 | Ac 09 00 49 | Ac 09 EF 50 | Ac 09 33 51 | Ac 09 05 52 | Ac 09 73 53 | Ac 09 99 54 | Ac 09 08 55 | Ac 09 22 56 | Ac 04 00 57 | Ac 05 01 58 | Ac 17 00 59 | Ac 3F 00 60 | Ac 1F 01 61 | Ac 14 33 62 | -------------------------------------------------------------------------------- /application_examples/lis2duxs12/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 11.2 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | Any orientation. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when the *freefall* is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2023 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lis2duxs12/Glance detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *glance* and *de-glance* gestures typically used in smartphone devices. The two gestures can be used to turn-on and turn-off the screen automatically. The example uses the accelerometer low-pass filtered data at 1 Hz using the *Machine Learning Core*. 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 11.4 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | ENU orientation is required. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | - FSM_OUTS1 register values 18 | - 20h = Glance gesture detected 19 | - 08h = De-glance gesture detected 20 | 21 | 22 | ## 4 - Interrupts 23 | 24 | The configuration generates an interrupt on INT1 when a *glance* or a *de-glance* gesture is detected. Reading the FSM_OUTS1 register allows to determine the new state. 25 | 26 | ------ 27 | 28 | **More Information: [http://www.st.com](http://st.com/MEMS)** 29 | 30 | **Copyright © 2023 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lis2duxs12/Jiggle detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *jiggle* gesture (similar to a shake) example for wrist-worn devices. The gesture is detected when the accelerometer Z-axis is pointing up and the user is shaking the device along the Y-axis (accelerometer data low-pass filtered at 1 Hz using the *Machine Learning Core*). 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 11.5 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | ENU orientation is required. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when the *jiggle* gesture is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2023 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lis2duxs12/Motion-Stationary detection/lis2duxs12_motion_stationary.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI235KA (LIS2DUXS12) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 14 00 12 | Ac 13 10 13 | WAIT 5 14 | Ac 3F 80 15 | Ac 04 00 16 | Ac 05 00 17 | Ac 39 4B 18 | Ac 1A 01 19 | Ac 0A 00 20 | Ac 0B 01 21 | Ac 0E 00 22 | Ac 0F 00 23 | Ac 17 40 24 | Ac 02 01 25 | Ac 08 54 26 | Ac 09 00 27 | Ac 09 00 28 | Ac 09 01 29 | Ac 09 01 30 | Ac 09 00 31 | Ac 09 02 32 | Ac 02 21 33 | Ac 08 00 34 | Ac 09 71 35 | Ac 09 00 36 | Ac 09 1A 37 | Ac 09 00 38 | Ac 09 10 39 | Ac 09 00 40 | Ac 09 9A 41 | Ac 09 3C 42 | Ac 09 02 43 | Ac 09 00 44 | Ac 09 01 45 | Ac 09 00 46 | Ac 09 00 47 | Ac 09 00 48 | Ac 09 00 49 | Ac 09 7D 50 | Ac 09 66 51 | Ac 09 05 52 | Ac 09 77 53 | Ac 09 99 54 | Ac 09 66 55 | Ac 09 33 56 | Ac 09 53 57 | Ac 09 44 58 | Ac 09 88 59 | Ac 09 22 60 | Ac 04 00 61 | Ac 05 01 62 | Ac 17 00 63 | Ac 3F 00 64 | Ac 1F 01 65 | Ac 14 33 66 | -------------------------------------------------------------------------------- /application_examples/lis2duxs12/Pick-up detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | This Finite State Machine (FSM) example implements the *pick-up* gesture typically used in mobile devices to signal the event of picking up the device from a table. It is typically used to automatically turn on some services. 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 10.5 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | ENU, SEU, WSU or NWU orientation is required. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when the *pick-up* gesture is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2023 STMicroelectronics** 29 | 30 | -------------------------------------------------------------------------------- /application_examples/lis2duxs12/Pick-up detection/lis2duxs12_pickup.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI238A (LIS2DUX12) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 14 00 12 | Ac 13 10 13 | WAIT 5 14 | Ac 3F 80 15 | Ac 04 00 16 | Ac 05 00 17 | Ac 39 4B 18 | Ac 1A 01 19 | Ac 0A 00 20 | Ac 0B 01 21 | Ac 0E 00 22 | Ac 0F 00 23 | Ac 17 40 24 | Ac 02 01 25 | Ac 08 54 26 | Ac 09 00 27 | Ac 09 00 28 | Ac 09 01 29 | Ac 09 01 30 | Ac 09 00 31 | Ac 09 02 32 | Ac 02 21 33 | Ac 08 00 34 | Ac 09 91 35 | Ac 09 00 36 | Ac 09 14 37 | Ac 09 00 38 | Ac 09 0E 39 | Ac 09 00 40 | Ac 09 CD 41 | Ac 09 3A 42 | Ac 09 9A 43 | Ac 09 3C 44 | Ac 09 08 45 | Ac 09 00 46 | Ac 09 00 47 | Ac 09 4B 48 | Ac 09 12 49 | Ac 09 66 50 | Ac 09 73 51 | Ac 09 06 52 | Ac 09 22 53 | Ac 09 00 54 | Ac 04 00 55 | Ac 05 01 56 | Ac 17 00 57 | Ac 3F 00 58 | Ac 1F 01 59 | Ac 14 33 60 | -------------------------------------------------------------------------------- /application_examples/lis2duxs12/README.md: -------------------------------------------------------------------------------- 1 | # LIS2DUXS12 2 | 3 | Ultralow-power 3-axis smart accelerometer with Qvar, AI, antialiasing filter, and advanced digital features. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/lis2duxs12.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/lis2duxs12/Shake detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *shake* gesture example for smartphone devices. This gesture is detected when the user is shaking the accelerometer along the X-axis. 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 10.7 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | ENU orientation is required. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when the *shake* gesture is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2023 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lis2duxs12/Shake detection/lis2duxs12_shake.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI235KA (LIS2DUXS12) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 14 00 12 | Ac 13 10 13 | WAIT 5 14 | Ac 3F 80 15 | Ac 04 00 16 | Ac 05 00 17 | Ac 39 4B 18 | Ac 1A 01 19 | Ac 0A 00 20 | Ac 0B 01 21 | Ac 0E 00 22 | Ac 0F 00 23 | Ac 17 40 24 | Ac 02 01 25 | Ac 08 54 26 | Ac 09 00 27 | Ac 09 00 28 | Ac 09 01 29 | Ac 09 01 30 | Ac 09 00 31 | Ac 09 02 32 | Ac 02 21 33 | Ac 08 00 34 | Ac 09 51 35 | Ac 09 10 36 | Ac 09 18 37 | Ac 09 00 38 | Ac 09 0D 39 | Ac 09 00 40 | Ac 09 00 41 | Ac 09 3E 42 | Ac 09 80 43 | Ac 09 00 44 | Ac 09 00 45 | Ac 09 08 46 | Ac 09 00 47 | Ac 09 7C 48 | Ac 09 41 49 | Ac 09 5C 50 | Ac 09 12 51 | Ac 09 15 52 | Ac 09 3C 53 | Ac 09 35 54 | Ac 09 22 55 | Ac 09 35 56 | Ac 09 3C 57 | Ac 09 22 58 | Ac 04 00 59 | Ac 05 01 60 | Ac 17 00 61 | Ac 3F 00 62 | Ac 1F 01 63 | Ac 14 33 64 | -------------------------------------------------------------------------------- /application_examples/lsm6dso/Flip-Down detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *flip-down* gesture example, used to stop the phone-call by placing the accelerometer Z axis downward. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *flip-down* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dso/FourD position recognition/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple example of 4D position recognition typically used in smartphone devices. The example uses the accelerometer X and Y axes to determine portrait (up or down) and landscape (left or right) orientation. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = N/A 17 | - 10h = Y-axis pointing down (portrait, down) 18 | - 20h = Y-axis pointing up (portrait, up) 19 | - 40h = X-axis pointing down (landscape, right) 20 | - 80h = X-axis pointing up (landscape, left) 21 | 22 | 23 | ## 4 - Interrupts 24 | 25 | The configuration generates an interrupt on INT1 when a change in the orientation is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new orientation. 26 | 27 | ------ 28 | 29 | **More Information: [http://www.st.com](http://st.com/MEMS)** 30 | 31 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dso/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *freefall* is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dso/Motion-Stationary detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *motion* and *stationary* states of the device. The example uses the accelerometer sensor. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = Stationary state detected 17 | - 01h = Motion state detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *motion* or a *stationary* event is detected. The *motion* interrupt is generated when the device is in *stationary* state and it is moved. The *stationary* interrupt is generated when the device is in *motion* state and it is still for 5 seconds. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dso/README.md: -------------------------------------------------------------------------------- 1 | # LSM6DSO 2 | 3 | iNEMO inertial module with Finite State Machine and advanced Digital Functions. Ultra-low power for battery operated IoT, Gaming, Wearable and Personal Electronics. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/lsm6dso.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/lsm6dso/Shake detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *shake* gesture example for smartphone devices. This gesture is detected when the user is shaking the accelerometer along the X-axis. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *shake* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dso32/Flip-Down detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *flip-down* gesture example, used to stop the phone-call by placing the accelerometer Z axis downward. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *flip-down* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dso32/FourD position recognition/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple example of 4D position recognition typically used in smartphone devices. The example uses the accelerometer X and Y axes to determine portrait (up or down) and landscape (left or right) orientation. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = N/A 17 | - 10h = Y-axis pointing down (portrait, down) 18 | - 20h = Y-axis pointing up (portrait, up) 19 | - 40h = X-axis pointing down (landscape, right) 20 | - 80h = X-axis pointing up (landscape, left) 21 | 22 | 23 | ## 4 - Interrupts 24 | 25 | The configuration generates an interrupt on INT1 when a change in the orientation is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new orientation. 26 | 27 | ------ 28 | 29 | **More Information: [http://www.st.com](http://st.com/MEMS)** 30 | 31 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dso32/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *freefall* is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dso32/Motion-Stationary detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *motion* and *stationary* states of the device. The example uses the accelerometer sensor. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = Stationary state detected 17 | - 01h = Motion state detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *motion* or a *stationary* event is detected. The *motion* interrupt is generated when the device is in *stationary* state and it is moved. The *stationary* interrupt is generated when the device is in *motion* state and it is still for 5 seconds. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dso32/README.md: -------------------------------------------------------------------------------- 1 | # LSM6DSO32 2 | 3 | iNEMO inertial module: always-on 3D accelerometer and 3D gyroscope. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/lsm6dso32.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/lsm6dso32/Shake detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *shake* gesture example for smartphone devices. This gesture is detected when the user is shaking the accelerometer along the X-axis. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *shake* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dso32x/Flip-Down detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *flip-down* gesture example, used to stop the phone-call by placing the accelerometer Z axis downward. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *flip-down* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2021 STMicroelectronics** 27 | 28 | -------------------------------------------------------------------------------- /application_examples/lsm6dso32x/FourD position recognition/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple example of 4D position recognition typically used in smartphone devices. The example uses the accelerometer X and Y axes to determine portrait (up or down) and landscape (left or right) orientation. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = N/A 17 | - 10h = Y-axis pointing down (portrait, down) 18 | - 20h = Y-axis pointing up (portrait, up) 19 | - 40h = X-axis pointing down (landscape, right) 20 | - 80h = X-axis pointing up (landscape, left) 21 | 22 | 23 | ## 4 - Interrupts 24 | 25 | The configuration generates an interrupt on INT1 when a change in the orientation is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new orientation. 26 | 27 | ------ 28 | 29 | **More Information: [http://www.st.com](http://st.com/MEMS)** 30 | 31 | **Copyright © 2021 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dso32x/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *freefall* is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2021 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dso32x/Motion-Stationary detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *motion* and *stationary* states of the device. The example uses the accelerometer sensor. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = Stationary state detected 17 | - 01h = Motion state detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *motion* or a *stationary* event is detected. The *motion* interrupt is generated when the device is in *stationary* state and it is moved. The *stationary* interrupt is generated when the device is in *motion* state and it is still for 5 seconds. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2021 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dso32x/README.md: -------------------------------------------------------------------------------- 1 | # LSM6DSO32X 2 | 3 | iNEMO inertial module: always-on 3D accelerometer and 3D gyroscope. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/lsm6dso32x.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/lsm6dso32x/Shake detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *shake* gesture example for smartphone devices. This gesture is detected when the user is shaking the accelerometer along the X-axis. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *shake* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2021 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsox/Flip-Down detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *flip-down* gesture example, used to stop the phone-call by placing the accelerometer Z axis downward. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *flip-down* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsox/FourD position recognition/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple example of 4D position recognition typically used in smartphone devices. The example uses the accelerometer X and Y axes to determine portrait (up or down) and landscape (left or right) orientation. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = N/A 17 | - 10h = Y-axis pointing down (portrait, down) 18 | - 20h = Y-axis pointing up (portrait, up) 19 | - 40h = X-axis pointing down (landscape, right) 20 | - 80h = X-axis pointing up (landscape, left) 21 | 22 | 23 | ## 4 - Interrupts 24 | 25 | The configuration generates an interrupt on INT1 when a change in the orientation is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new orientation. 26 | 27 | ------ 28 | 29 | **More Information: [http://www.st.com](http://st.com/MEMS)** 30 | 31 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsox/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *freefall* is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsox/Glance detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *glance* and *de-glance* gestures typically used in smartphone devices. The two gestures can be used to turn-on and turn-off the screen automatically. The example uses the accelerometer sensor filtered using the *Machine Learning Core*. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 20h = Glance gesture detected 17 | - 08h = De-glance gesture detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *glance* or a *de-glance* gesture is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsox/Jiggle detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *jiggle* gesture (similar to a shake) example for wrist-worn devices. The gesture is detected when the accelerometer Z-axis is pointing up and the user is shaking the device along the Y-axis (accelerometer data filtered using the *Machine Learning Core*). 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *jiggle* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsox/Motion-Stationary detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *motion* and *stationary* states of the device. The example uses the accelerometer sensor. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = Stationary state detected 17 | - 01h = Motion state detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *motion* or a *stationary* event is detected. The *motion* interrupt is generated when the device is in *stationary* state and it is moved. The *stationary* interrupt is generated when the device is in *motion* state and it is still for 5 seconds. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsox/README.md: -------------------------------------------------------------------------------- 1 | # LSM6DSOX 2 | 3 | iNEMO inertial module with Machine Learning Core, Finite State Machine and advanced Digital Functions. Ultra-low power for battery operated IoT, Gaming, Wearable and Personal Electronics. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/lsm6dsox.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/lsm6dsox/Shake detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *shake* gesture example for smartphone devices. This gesture is detected when the user is shaking the accelerometer along the X-axis. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *shake* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsr/Flip-Down detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *flip-down* gesture example, used to stop the phone-call by placing the accelerometer Z axis downward. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *flip-down* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsr/FourD position recognition/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple example of 4D position recognition typically used in smartphone devices. The example uses the accelerometer X and Y axes to determine portrait (up or down) and landscape (left or right) orientation. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = N/A 17 | - 10h = Y-axis pointing down (portrait, down) 18 | - 20h = Y-axis pointing up (portrait, up) 19 | - 40h = X-axis pointing down (landscape, right) 20 | - 80h = X-axis pointing up (landscape, left) 21 | 22 | 23 | ## 4 - Interrupts 24 | 25 | The configuration generates an interrupt on INT1 when a change in the orientation is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new orientation. 26 | 27 | ------ 28 | 29 | **More Information: [http://www.st.com](http://st.com/MEMS)** 30 | 31 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsr/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *freefall* is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsr/Motion-Stationary detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *motion* and *stationary* states of the device. The example uses the accelerometer sensor. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = Stationary state detected 17 | - 01h = Motion state detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *motion* or a *stationary* event is detected. The *motion* interrupt is generated when the device is in *stationary* state and it is moved. The *stationary* interrupt is generated when the device is in *motion* state and it is still for 5 seconds. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsr/README.md: -------------------------------------------------------------------------------- 1 | # LSM6DSR 2 | 3 | iNEMO Inertial Module with Finite State Machine and Advanced Digital Functions for High Accuracy Applications. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/lsm6dsr.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/lsm6dsr/Shake detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *shake* gesture example for smartphone devices. This gesture is detected when the user is shaking the accelerometer along the X-axis. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *shake* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsrx/Flip-Down detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *flip-down* gesture example, used to stop the phone-call by placing the accelerometer Z axis downward. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *flip-down* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsrx/FourD position recognition/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple example of 4D position recognition typically used in smartphone devices. The example uses the accelerometer X and Y axes to determine portrait (up or down) and landscape (left or right) orientation. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = N/A 17 | - 10h = Y-axis pointing down (portrait, down) 18 | - 20h = Y-axis pointing up (portrait, up) 19 | - 40h = X-axis pointing down (landscape, right) 20 | - 80h = X-axis pointing up (landscape, left) 21 | 22 | 23 | ## 4 - Interrupts 24 | 25 | The configuration generates an interrupt on INT1 when a change in the orientation is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new orientation. 26 | 27 | ------ 28 | 29 | **More Information: [http://www.st.com](http://st.com/MEMS)** 30 | 31 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsrx/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *freefall* is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsrx/Glance detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *glance* and *de-glance* gestures typically used in smartphone devices. The two gestures can be used to turn-on and turn-off the screen automatically. The example uses the accelerometer sensor filtered using the *Machine Learning Core*. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 20h = Glance gesture detected 17 | - 08h = De-glance gesture detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *glance* or a *de-glance* gesture is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsrx/Jiggle detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *jiggle* gesture (similar to a shake) example for wrist-worn devices. The gesture is detected when the accelerometer Z-axis is pointing up and the user is shaking the device along the Y-axis (accelerometer data filtered using the *Machine Learning Core*). 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *jiggle* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsrx/Motion-Stationary detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *motion* and *stationary* states of the device. The example uses the accelerometer sensor. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = Stationary state detected 17 | - 01h = Motion state detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *motion* or a *stationary* event is detected. The *motion* interrupt is generated when the device is in *stationary* state and it is moved. The *stationary* interrupt is generated when the device is in *motion* state and it is still for 5 seconds. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsrx/README.md: -------------------------------------------------------------------------------- 1 | # LSM6DSRX 2 | 3 | iNEMO Inertial Module with Machine Learning Core, Finite State Machine and Advanced Digital Functions for High Accuracy Applications. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/lsm6dsrx.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/lsm6dsrx/Shake detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *shake* gesture example for smartphone devices. This gesture is detected when the user is shaking the accelerometer along the X-axis. 4 | 5 | The configuration runs at 26 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *shake* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv/Flip-Down detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *flip-down* gesture example, used to stop the phone-call by placing the accelerometer Z axis downward. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *flip-down* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv/Flip-Down detection/lsm6dsv_flip_down.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI239A (LSM6DSV) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 92 34 | Ac 09 00 35 | Ac 09 16 36 | Ac 09 00 37 | Ac 09 0F 38 | Ac 09 00 39 | Ac 09 CD 40 | Ac 09 BA 41 | Ac 09 00 42 | Ac 09 00 43 | Ac 09 08 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 0B 47 | Ac 09 0F 48 | Ac 09 06 49 | Ac 09 84 50 | Ac 09 33 51 | Ac 09 53 52 | Ac 09 44 53 | Ac 09 22 54 | Ac 09 00 55 | Ac 04 00 56 | Ac 05 01 57 | Ac 17 00 58 | Ac 01 00 59 | Ac 5E 02 60 | Ac 17 03 61 | Ac 10 44 62 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv/FourD position recognition/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple example of 4D position recognition typically used in smartphone devices. The example uses the accelerometer X and Y axes to determine portrait (up or down) and landscape (left or right) orientation. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = N/A 17 | - 10h = Y-axis pointing down (portrait, down) 18 | - 20h = Y-axis pointing up (portrait, up) 19 | - 40h = X-axis pointing down (landscape, right) 20 | - 80h = X-axis pointing up (landscape, left) 21 | 22 | 23 | ## 4 - Interrupts 24 | 25 | The configuration generates an interrupt on INT1 when a change in the orientation is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new orientation. 26 | 27 | ------ 28 | 29 | **More Information: [http://www.st.com](http://st.com/MEMS)** 30 | 31 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv/FourD position recognition/lsm6dsv_four_d.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI239A (LSM6DSV) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 91 34 | Ac 09 10 35 | Ac 09 16 36 | Ac 09 00 37 | Ac 09 0F 38 | Ac 09 00 39 | Ac 09 66 40 | Ac 09 3A 41 | Ac 09 66 42 | Ac 09 32 43 | Ac 09 F0 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 0F 47 | Ac 09 00 48 | Ac 09 EF 49 | Ac 09 33 50 | Ac 09 05 51 | Ac 09 73 52 | Ac 09 99 53 | Ac 09 08 54 | Ac 09 22 55 | Ac 04 00 56 | Ac 05 01 57 | Ac 17 00 58 | Ac 01 00 59 | Ac 5E 02 60 | Ac 17 03 61 | Ac 10 44 62 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *freefall* is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv/Motion-Stationary detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *motion* and *stationary* states of the device. The example uses the accelerometer sensor. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = Stationary state detected 17 | - 01h = Motion state detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *motion* or a *stationary* event is detected. The *motion* interrupt is generated when the device is in *stationary* state and it is moved. The *stationary* interrupt is generated when the device is in *motion* state and it is still for 5 seconds. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv/Motion-Stationary detection/lsm6dsv_motion_stationary.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI239A (LSM6DSV) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 71 34 | Ac 09 00 35 | Ac 09 1A 36 | Ac 09 00 37 | Ac 09 10 38 | Ac 09 00 39 | Ac 09 66 40 | Ac 09 3C 41 | Ac 09 02 42 | Ac 09 00 43 | Ac 09 01 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 00 47 | Ac 09 00 48 | Ac 09 96 49 | Ac 09 66 50 | Ac 09 05 51 | Ac 09 77 52 | Ac 09 99 53 | Ac 09 66 54 | Ac 09 33 55 | Ac 09 53 56 | Ac 09 44 57 | Ac 09 88 58 | Ac 09 22 59 | Ac 04 00 60 | Ac 05 01 61 | Ac 17 00 62 | Ac 01 00 63 | Ac 5E 02 64 | Ac 17 03 65 | Ac 10 44 66 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv/Pick-up detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | This Finite State Machine (FSM) example implements the *pick-up* gesture typically used in mobile devices to signal the event of picking up the device from a table. It is typically used to automatically turn on some services. 4 | 5 | The FSM processes data coming from the accelerometer, configured in low-power mode 3 at 30 Hz. 6 | 7 | Configurable parameters: 8 | 9 | - On table detection threshold, default is 0.9 g 10 | - On table detection time, default is 3 s (90 samples) 11 | - Pick-up detection threshold, default is 1.1 g 12 | 13 | Overall current consumption is 16 µA. 14 | 15 | 16 | ## 2 - Device orientation 17 | 18 | ENU orientation is required. 19 | 20 | 21 | ## 3 - Finite State Machine output values 22 | 23 | None. 24 | 25 | 26 | ## 4 - Interrupts 27 | 28 | The configuration generates an interrupt on INT1 when the *pick-up* gesture is detected. 29 | 30 | ------ 31 | 32 | **More Information: [http://www.st.com](http://st.com/MEMS)** 33 | 34 | **Copyright © 2020 STMicroelectronics** 35 | 36 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv/Pick-up detection/lsm6dsv_pick_up.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI239A (LSM6DSV) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 91 34 | Ac 09 00 35 | Ac 09 14 36 | Ac 09 00 37 | Ac 09 0E 38 | Ac 09 00 39 | Ac 09 33 40 | Ac 09 3B 41 | Ac 09 66 42 | Ac 09 3C 43 | Ac 09 08 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 5A 47 | Ac 09 12 48 | Ac 09 66 49 | Ac 09 73 50 | Ac 09 06 51 | Ac 09 22 52 | Ac 09 00 53 | Ac 04 00 54 | Ac 05 01 55 | Ac 17 00 56 | Ac 01 00 57 | Ac 5E 02 58 | Ac 17 03 59 | Ac 10 44 60 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv/README.md: -------------------------------------------------------------------------------- 1 | # LSM6DSV 2 | 3 | 6-axis IMU with embedded sensor fusion and Finite State Machine for high-end applications. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/lsm6dsv.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv/Shake detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *shake* gesture example for smartphone devices. This gesture is detected when the user is shaking the accelerometer along the X-axis. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *shake* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv/Shake detection/lsm6dsv_shake.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI239A (LSM6DSV) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 51 34 | Ac 09 10 35 | Ac 09 18 36 | Ac 09 00 37 | Ac 09 0D 38 | Ac 09 00 39 | Ac 09 00 40 | Ac 09 3E 41 | Ac 09 80 42 | Ac 09 00 43 | Ac 09 00 44 | Ac 09 09 45 | Ac 09 00 46 | Ac 09 7C 47 | Ac 09 41 48 | Ac 09 5C 49 | Ac 09 12 50 | Ac 09 15 51 | Ac 09 3C 52 | Ac 09 35 53 | Ac 09 22 54 | Ac 09 35 55 | Ac 09 3C 56 | Ac 09 22 57 | Ac 04 00 58 | Ac 05 01 59 | Ac 17 00 60 | Ac 01 00 61 | Ac 5E 02 62 | Ac 17 03 63 | Ac 10 44 64 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv/Wrist-Tilt detection (accelerometer only)/lsm6dsv_wrist_tilt_xl.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI239A (LSM6DSV) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 52 34 | Ac 09 00 35 | Ac 09 14 36 | Ac 09 00 37 | Ac 09 0D 38 | Ac 09 00 39 | Ac 09 8E 40 | Ac 09 31 41 | Ac 09 20 42 | Ac 09 00 43 | Ac 09 00 44 | Ac 09 0F 45 | Ac 09 07 46 | Ac 09 23 47 | Ac 09 00 48 | Ac 09 53 49 | Ac 09 33 50 | Ac 09 74 51 | Ac 09 44 52 | Ac 09 22 53 | Ac 04 00 54 | Ac 05 01 55 | Ac 17 80 56 | Ac 01 00 57 | Ac 5E 02 58 | Ac 15 00 59 | Ac 17 03 60 | Ac 10 44 61 | Ac 11 00 62 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16b/Flip-Down detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *flip-down* gesture example, used to stop the phone-call by placing the accelerometer Z axis downward. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *flip-down* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv16b/Flip-Down detection/lsm6dsv16b_flip_down.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI241KA (LSM6DSV16B) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 92 34 | Ac 09 00 35 | Ac 09 16 36 | Ac 09 00 37 | Ac 09 0F 38 | Ac 09 00 39 | Ac 09 CD 40 | Ac 09 BA 41 | Ac 09 00 42 | Ac 09 00 43 | Ac 09 80 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 0B 47 | Ac 09 0F 48 | Ac 09 06 49 | Ac 09 84 50 | Ac 09 33 51 | Ac 09 53 52 | Ac 09 44 53 | Ac 09 22 54 | Ac 09 00 55 | Ac 04 00 56 | Ac 05 01 57 | Ac 17 00 58 | Ac 01 00 59 | Ac 5E 02 60 | Ac 17 03 61 | Ac 10 44 62 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16b/FourD position recognition/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple example of 4D position recognition typically used in smartphone devices. The example uses the accelerometer X and Y axes to determine portrait (up or down) and landscape (left or right) orientation. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = N/A 17 | - 10h = Y-axis pointing down (portrait, down) 18 | - 20h = Y-axis pointing up (portrait, up) 19 | - 04h = X-axis pointing down (landscape, right) 20 | - 08h = X-axis pointing up (landscape, left) 21 | 22 | 23 | ## 4 - Interrupts 24 | 25 | The configuration generates an interrupt on INT1 when a change in the orientation is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new orientation. 26 | 27 | ------ 28 | 29 | **More Information: [http://www.st.com](http://st.com/MEMS)** 30 | 31 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv16b/FourD position recognition/lsm6dsv16b_four_d.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI241KA (LSM6DSV16B) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 91 34 | Ac 09 10 35 | Ac 09 16 36 | Ac 09 00 37 | Ac 09 0F 38 | Ac 09 00 39 | Ac 09 66 40 | Ac 09 3A 41 | Ac 09 66 42 | Ac 09 32 43 | Ac 09 3C 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 0F 47 | Ac 09 00 48 | Ac 09 EF 49 | Ac 09 33 50 | Ac 09 05 51 | Ac 09 73 52 | Ac 09 99 53 | Ac 09 08 54 | Ac 09 22 55 | Ac 04 00 56 | Ac 05 01 57 | Ac 17 00 58 | Ac 01 00 59 | Ac 5E 02 60 | Ac 17 03 61 | Ac 10 44 62 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16b/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *freefall* is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv16b/Motion-Stationary detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *motion* and *stationary* states of the device. The example uses the accelerometer sensor. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = Stationary state detected 17 | - 01h = Motion state detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *motion* or a *stationary* event is detected. The *motion* interrupt is generated when the device is in *stationary* state and it is moved. The *stationary* interrupt is generated when the device is in *motion* state and it is still for 5 seconds. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv16b/Motion-Stationary detection/lsm6dsv16b_motion_stationary.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI241KA (LSM6DSV16B) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 71 34 | Ac 09 00 35 | Ac 09 1A 36 | Ac 09 00 37 | Ac 09 10 38 | Ac 09 00 39 | Ac 09 66 40 | Ac 09 3C 41 | Ac 09 02 42 | Ac 09 00 43 | Ac 09 01 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 00 47 | Ac 09 00 48 | Ac 09 96 49 | Ac 09 66 50 | Ac 09 05 51 | Ac 09 77 52 | Ac 09 99 53 | Ac 09 66 54 | Ac 09 33 55 | Ac 09 53 56 | Ac 09 44 57 | Ac 09 88 58 | Ac 09 22 59 | Ac 04 00 60 | Ac 05 01 61 | Ac 17 00 62 | Ac 01 00 63 | Ac 5E 02 64 | Ac 17 03 65 | Ac 10 44 66 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16b/Pick-up detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | This Finite State Machine (FSM) example implements the *pick-up* gesture typically used in mobile devices to signal the event of picking up the device from a table. It is typically used to automatically turn on some services. 4 | 5 | The FSM processes data coming from the accelerometer, configured in low-power mode 3 at 30 Hz. 6 | 7 | Configurable parameters: 8 | 9 | - On table detection threshold, default is 0.9 g 10 | - On table detection time, default is 3 s (90 samples) 11 | - Pick-up detection threshold, default is 1.1 g 12 | 13 | Overall current consumption is 16 µA. 14 | 15 | 16 | ## 2 - Device orientation 17 | 18 | ENU orientation is required. 19 | 20 | 21 | ## 3 - Finite State Machine output values 22 | 23 | None. 24 | 25 | 26 | ## 4 - Interrupts 27 | 28 | The configuration generates an interrupt on INT1 when the *pick-up* gesture is detected. 29 | 30 | ------ 31 | 32 | **More Information: [http://www.st.com](http://st.com/MEMS)** 33 | 34 | **Copyright © 2020 STMicroelectronics** 35 | 36 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16b/Pick-up detection/lsm6dsv16b_pick_up.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI241KA (LSM6DSV16B) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 91 34 | Ac 09 00 35 | Ac 09 14 36 | Ac 09 00 37 | Ac 09 0E 38 | Ac 09 00 39 | Ac 09 33 40 | Ac 09 3B 41 | Ac 09 66 42 | Ac 09 3C 43 | Ac 09 80 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 5A 47 | Ac 09 12 48 | Ac 09 66 49 | Ac 09 73 50 | Ac 09 06 51 | Ac 09 22 52 | Ac 09 00 53 | Ac 04 00 54 | Ac 05 01 55 | Ac 17 00 56 | Ac 01 00 57 | Ac 5E 02 58 | Ac 17 03 59 | Ac 10 44 60 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16b/README.md: -------------------------------------------------------------------------------- 1 | # LSM6DSV16B 2 | 3 | 6-axis IMU with sensor fusion, Qvar, hearable features for TWS. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/lsm6dsv16b.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16b/Shake detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *shake* gesture example for smartphone devices. This gesture is detected when the user is shaking the accelerometer along the X-axis. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *shake* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv16b/Shake detection/lsm6dsv16b_shake.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI241KA (LSM6DSV16B) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 51 34 | Ac 09 10 35 | Ac 09 18 36 | Ac 09 00 37 | Ac 09 0D 38 | Ac 09 00 39 | Ac 09 00 40 | Ac 09 3E 41 | Ac 09 08 42 | Ac 09 00 43 | Ac 09 00 44 | Ac 09 09 45 | Ac 09 00 46 | Ac 09 7C 47 | Ac 09 41 48 | Ac 09 5C 49 | Ac 09 12 50 | Ac 09 15 51 | Ac 09 3C 52 | Ac 09 35 53 | Ac 09 22 54 | Ac 09 35 55 | Ac 09 3C 56 | Ac 09 22 57 | Ac 04 00 58 | Ac 05 01 59 | Ac 17 00 60 | Ac 01 00 61 | Ac 5E 02 62 | Ac 17 03 63 | Ac 10 44 64 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16b/Wrist-Tilt detection (accelerometer only)/lsm6dsv16b_wrist_tilt_xl.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI241KA (LSM6DSV16B) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 52 34 | Ac 09 00 35 | Ac 09 14 36 | Ac 09 00 37 | Ac 09 0D 38 | Ac 09 00 39 | Ac 09 8E 40 | Ac 09 31 41 | Ac 09 20 42 | Ac 09 00 43 | Ac 09 00 44 | Ac 09 0F 45 | Ac 09 07 46 | Ac 09 23 47 | Ac 09 00 48 | Ac 09 53 49 | Ac 09 33 50 | Ac 09 74 51 | Ac 09 44 52 | Ac 09 22 53 | Ac 04 00 54 | Ac 05 01 55 | Ac 17 80 56 | Ac 01 00 57 | Ac 5E 02 58 | Ac 15 00 59 | Ac 17 03 60 | Ac 10 44 61 | Ac 11 00 62 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16bx/Flip-Down detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *flip-down* gesture example, used to stop the phone-call by placing the accelerometer Z axis downward. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *flip-down* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv16bx/Flip-Down detection/lsm6dsv16bx_flip_down.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI234KA (LSM6DSV16BX) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 92 34 | Ac 09 00 35 | Ac 09 16 36 | Ac 09 00 37 | Ac 09 0F 38 | Ac 09 00 39 | Ac 09 CD 40 | Ac 09 BA 41 | Ac 09 00 42 | Ac 09 00 43 | Ac 09 80 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 0B 47 | Ac 09 0F 48 | Ac 09 06 49 | Ac 09 84 50 | Ac 09 33 51 | Ac 09 53 52 | Ac 09 44 53 | Ac 09 22 54 | Ac 09 00 55 | Ac 04 00 56 | Ac 05 01 57 | Ac 17 00 58 | Ac 01 00 59 | Ac 5E 02 60 | Ac 17 03 61 | Ac 10 44 62 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16bx/FourD position recognition/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple example of 4D position recognition typically used in smartphone devices. The example uses the accelerometer X and Y axes to determine portrait (up or down) and landscape (left or right) orientation. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = N/A 17 | - 10h = Y-axis pointing down (portrait, down) 18 | - 20h = Y-axis pointing up (portrait, up) 19 | - 04h = X-axis pointing down (landscape, right) 20 | - 08h = X-axis pointing up (landscape, left) 21 | 22 | 23 | ## 4 - Interrupts 24 | 25 | The configuration generates an interrupt on INT1 when a change in the orientation is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new orientation. 26 | 27 | ------ 28 | 29 | **More Information: [http://www.st.com](http://st.com/MEMS)** 30 | 31 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv16bx/FourD position recognition/lsm6dsv16bx_four_d.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI234KA (LSM6DSV16BX) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 91 34 | Ac 09 10 35 | Ac 09 16 36 | Ac 09 00 37 | Ac 09 0F 38 | Ac 09 00 39 | Ac 09 66 40 | Ac 09 3A 41 | Ac 09 66 42 | Ac 09 32 43 | Ac 09 3C 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 0F 47 | Ac 09 00 48 | Ac 09 EF 49 | Ac 09 33 50 | Ac 09 05 51 | Ac 09 73 52 | Ac 09 99 53 | Ac 09 08 54 | Ac 09 22 55 | Ac 04 00 56 | Ac 05 01 57 | Ac 17 00 58 | Ac 01 00 59 | Ac 5E 02 60 | Ac 17 03 61 | Ac 10 44 62 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16bx/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *freefall* is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv16bx/Glance detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *glance* and *de-glance* gestures typically used in smartphone devices. The two gestures can be used to turn-on and turn-off the screen automatically. The example uses the accelerometer low-pass filtered data at 1 Hz using the *Machine Learning Core*. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 20h = Glance gesture detected 17 | - 80h = De-glance gesture detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *glance* or a *de-glance* gesture is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv16bx/Jiggle detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *jiggle* gesture (similar to a shake) example for wrist-worn devices. The gesture is detected when the accelerometer Z-axis is pointing up and the user is shaking the device along the Y-axis (accelerometer data low-pass filtered at 1 Hz using the *Machine Learning Core*). 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *jiggle* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv16bx/Motion-Stationary detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *motion* and *stationary* states of the device. The example uses the accelerometer sensor. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = Stationary state detected 17 | - 01h = Motion state detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *motion* or a *stationary* event is detected. The *motion* interrupt is generated when the device is in *stationary* state and it is moved. The *stationary* interrupt is generated when the device is in *motion* state and it is still for 5 seconds. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv16bx/Motion-Stationary detection/lsm6dsv16bx_motion_stationary.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI234KA (LSM6DSV16BX) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 71 34 | Ac 09 00 35 | Ac 09 1A 36 | Ac 09 00 37 | Ac 09 10 38 | Ac 09 00 39 | Ac 09 66 40 | Ac 09 3C 41 | Ac 09 02 42 | Ac 09 00 43 | Ac 09 01 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 00 47 | Ac 09 00 48 | Ac 09 96 49 | Ac 09 66 50 | Ac 09 05 51 | Ac 09 77 52 | Ac 09 99 53 | Ac 09 66 54 | Ac 09 33 55 | Ac 09 53 56 | Ac 09 44 57 | Ac 09 88 58 | Ac 09 22 59 | Ac 04 00 60 | Ac 05 01 61 | Ac 17 00 62 | Ac 01 00 63 | Ac 5E 02 64 | Ac 17 03 65 | Ac 10 44 66 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16bx/Pick-up detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | This Finite State Machine (FSM) example implements the *pick-up* gesture typically used in mobile devices to signal the event of picking up the device from a table. It is typically used to automatically turn on some services. 4 | 5 | The FSM processes data coming from the accelerometer, configured in low-power mode 3 at 30 Hz. 6 | 7 | Configurable parameters: 8 | 9 | - On table detection threshold, default is 0.9 g 10 | - On table detection time, default is 3 s (90 samples) 11 | - Pick-up detection threshold, default is 1.1 g 12 | 13 | Overall current consumption is 16 µA. 14 | 15 | 16 | ## 2 - Device orientation 17 | 18 | ENU orientation is required. 19 | 20 | 21 | ## 3 - Finite State Machine output values 22 | 23 | None. 24 | 25 | 26 | ## 4 - Interrupts 27 | 28 | The configuration generates an interrupt on INT1 when the *pick-up* gesture is detected. 29 | 30 | ------ 31 | 32 | **More Information: [http://www.st.com](http://st.com/MEMS)** 33 | 34 | **Copyright © 2020 STMicroelectronics** 35 | 36 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16bx/Pick-up detection/lsm6dsv16bx_pick_up.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI234KA (LSM6DSV16BX) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 91 34 | Ac 09 00 35 | Ac 09 14 36 | Ac 09 00 37 | Ac 09 0E 38 | Ac 09 00 39 | Ac 09 33 40 | Ac 09 3B 41 | Ac 09 66 42 | Ac 09 3C 43 | Ac 09 80 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 5A 47 | Ac 09 12 48 | Ac 09 66 49 | Ac 09 73 50 | Ac 09 06 51 | Ac 09 22 52 | Ac 09 00 53 | Ac 04 00 54 | Ac 05 01 55 | Ac 17 00 56 | Ac 01 00 57 | Ac 5E 02 58 | Ac 17 03 59 | Ac 10 44 60 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16bx/README.md: -------------------------------------------------------------------------------- 1 | # LSM6DSV16BX 2 | 3 | 6-axis IMU with sensor fusion, AI, Qvar, hearable features for TWS. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/lsm6dsv16bx.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16bx/Shake detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *shake* gesture example for smartphone devices. This gesture is detected when the user is shaking the accelerometer along the X-axis. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *shake* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv16bx/Shake detection/lsm6dsv16bx_shake.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI234KA (LSM6DSV16BX) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 51 34 | Ac 09 10 35 | Ac 09 18 36 | Ac 09 00 37 | Ac 09 0D 38 | Ac 09 00 39 | Ac 09 00 40 | Ac 09 3E 41 | Ac 09 08 42 | Ac 09 00 43 | Ac 09 00 44 | Ac 09 09 45 | Ac 09 00 46 | Ac 09 7C 47 | Ac 09 41 48 | Ac 09 5C 49 | Ac 09 12 50 | Ac 09 15 51 | Ac 09 3C 52 | Ac 09 35 53 | Ac 09 22 54 | Ac 09 35 55 | Ac 09 3C 56 | Ac 09 22 57 | Ac 04 00 58 | Ac 05 01 59 | Ac 17 00 60 | Ac 01 00 61 | Ac 5E 02 62 | Ac 17 03 63 | Ac 10 44 64 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16x/Flip-Down detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *flip-down* gesture example, used to stop the phone-call by placing the accelerometer Z axis downward. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *flip-down* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv16x/Flip-Down detection/lsm6dsv16x_flip_down.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI227KA (LSM6DSV16X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 92 34 | Ac 09 00 35 | Ac 09 16 36 | Ac 09 00 37 | Ac 09 0F 38 | Ac 09 00 39 | Ac 09 CD 40 | Ac 09 BA 41 | Ac 09 00 42 | Ac 09 00 43 | Ac 09 08 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 0B 47 | Ac 09 0F 48 | Ac 09 06 49 | Ac 09 84 50 | Ac 09 33 51 | Ac 09 53 52 | Ac 09 44 53 | Ac 09 22 54 | Ac 09 00 55 | Ac 04 00 56 | Ac 05 01 57 | Ac 17 00 58 | Ac 01 00 59 | Ac 5E 02 60 | Ac 17 03 61 | Ac 10 44 62 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16x/FourD position recognition/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple example of 4D position recognition typically used in smartphone devices. The example uses the accelerometer X and Y axes to determine portrait (up or down) and landscape (left or right) orientation. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = N/A 17 | - 10h = Y-axis pointing down (portrait, down) 18 | - 20h = Y-axis pointing up (portrait, up) 19 | - 40h = X-axis pointing down (landscape, right) 20 | - 80h = X-axis pointing up (landscape, left) 21 | 22 | 23 | ## 4 - Interrupts 24 | 25 | The configuration generates an interrupt on INT1 when a change in the orientation is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new orientation. 26 | 27 | ------ 28 | 29 | **More Information: [http://www.st.com](http://st.com/MEMS)** 30 | 31 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv16x/FourD position recognition/lsm6dsv16x_four_d.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI227KA (LSM6DSV16X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 91 34 | Ac 09 10 35 | Ac 09 16 36 | Ac 09 00 37 | Ac 09 0F 38 | Ac 09 00 39 | Ac 09 66 40 | Ac 09 3A 41 | Ac 09 66 42 | Ac 09 32 43 | Ac 09 F0 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 0F 47 | Ac 09 00 48 | Ac 09 EF 49 | Ac 09 33 50 | Ac 09 05 51 | Ac 09 73 52 | Ac 09 99 53 | Ac 09 08 54 | Ac 09 22 55 | Ac 04 00 56 | Ac 05 01 57 | Ac 17 00 58 | Ac 01 00 59 | Ac 5E 02 60 | Ac 17 03 61 | Ac 10 44 62 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16x/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *freefall* is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv16x/Glance detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *glance* and *de-glance* gestures typically used in smartphone devices. The two gestures can be used to turn-on and turn-off the screen automatically. The example uses the accelerometer low-pass filtered data at 1 Hz using the *Machine Learning Core*. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 20h = Glance gesture detected 17 | - 08h = De-glance gesture detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *glance* or a *de-glance* gesture is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv16x/Jiggle detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *jiggle* gesture (similar to a shake) example for wrist-worn devices. The gesture is detected when the accelerometer Z-axis is pointing up and the user is shaking the device along the Y-axis (accelerometer data low-pass filtered at 1 Hz using the *Machine Learning Core*). 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *jiggle* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv16x/Motion-Stationary detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *motion* and *stationary* states of the device. The example uses the accelerometer sensor. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = Stationary state detected 17 | - 01h = Motion state detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *motion* or a *stationary* event is detected. The *motion* interrupt is generated when the device is in *stationary* state and it is moved. The *stationary* interrupt is generated when the device is in *motion* state and it is still for 5 seconds. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv16x/Motion-Stationary detection/lsm6dsv16x_motion_stationary.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI227KA (LSM6DSV16X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 71 34 | Ac 09 00 35 | Ac 09 1A 36 | Ac 09 00 37 | Ac 09 10 38 | Ac 09 00 39 | Ac 09 66 40 | Ac 09 3C 41 | Ac 09 02 42 | Ac 09 00 43 | Ac 09 01 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 00 47 | Ac 09 00 48 | Ac 09 96 49 | Ac 09 66 50 | Ac 09 05 51 | Ac 09 77 52 | Ac 09 99 53 | Ac 09 66 54 | Ac 09 33 55 | Ac 09 53 56 | Ac 09 44 57 | Ac 09 88 58 | Ac 09 22 59 | Ac 04 00 60 | Ac 05 01 61 | Ac 17 00 62 | Ac 01 00 63 | Ac 5E 02 64 | Ac 17 03 65 | Ac 10 44 66 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16x/Pick-up detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | This Finite State Machine (FSM) example implements the *pick-up* gesture typically used in mobile devices to signal the event of picking up the device from a table. It is typically used to automatically turn on some services. 4 | 5 | The FSM processes data coming from the accelerometer, configured in low-power mode 3 at 30 Hz. 6 | 7 | Configurable parameters: 8 | 9 | - On table detection threshold, default is 0.9 g 10 | - On table detection time, default is 3 s (90 samples) 11 | - Pick-up detection threshold, default is 1.1 g 12 | 13 | Overall current consumption is 16 µA. 14 | 15 | 16 | ## 2 - Device orientation 17 | 18 | ENU orientation is required. 19 | 20 | 21 | ## 3 - Finite State Machine output values 22 | 23 | None. 24 | 25 | 26 | ## 4 - Interrupts 27 | 28 | The configuration generates an interrupt on INT1 when the *pick-up* gesture is detected. 29 | 30 | ------ 31 | 32 | **More Information: [http://www.st.com](http://st.com/MEMS)** 33 | 34 | **Copyright © 2020 STMicroelectronics** 35 | 36 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16x/Pick-up detection/lsm6dsv16x_pick_up.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI227KA (LSM6DSV16X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 91 34 | Ac 09 00 35 | Ac 09 14 36 | Ac 09 00 37 | Ac 09 0E 38 | Ac 09 00 39 | Ac 09 33 40 | Ac 09 3B 41 | Ac 09 66 42 | Ac 09 3C 43 | Ac 09 08 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 5A 47 | Ac 09 12 48 | Ac 09 66 49 | Ac 09 73 50 | Ac 09 06 51 | Ac 09 22 52 | Ac 09 00 53 | Ac 04 00 54 | Ac 05 01 55 | Ac 17 00 56 | Ac 01 00 57 | Ac 5E 02 58 | Ac 17 03 59 | Ac 10 44 60 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16x/README.md: -------------------------------------------------------------------------------- 1 | # LSM6DSV16X 2 | 3 | 6-axis IMU with embedded sensor fusion, AI, Qvar for high-end applications. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/lsm6dsv16x.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv16x/Shake detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *shake* gesture example for smartphone devices. This gesture is detected when the user is shaking the accelerometer along the X-axis. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *shake* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv16x/Shake detection/lsm6dsv16x_shake.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI227KA (LSM6DSV16X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 51 34 | Ac 09 10 35 | Ac 09 18 36 | Ac 09 00 37 | Ac 09 0D 38 | Ac 09 00 39 | Ac 09 00 40 | Ac 09 3E 41 | Ac 09 80 42 | Ac 09 00 43 | Ac 09 00 44 | Ac 09 09 45 | Ac 09 00 46 | Ac 09 7C 47 | Ac 09 41 48 | Ac 09 5C 49 | Ac 09 12 50 | Ac 09 15 51 | Ac 09 3C 52 | Ac 09 35 53 | Ac 09 22 54 | Ac 09 35 55 | Ac 09 3C 56 | Ac 09 22 57 | Ac 04 00 58 | Ac 05 01 59 | Ac 17 00 60 | Ac 01 00 61 | Ac 5E 02 62 | Ac 17 03 63 | Ac 10 44 64 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv320x/Flip-Down detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *flip-down* gesture example, used to stop the phone-call by placing the accelerometer Z axis downward. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *flip-down* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv320x/Flip-Down detection/lsm6dsv320x_flip_down.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI251A (LSM6DSV320X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 92 34 | Ac 09 00 35 | Ac 09 16 36 | Ac 09 00 37 | Ac 09 0F 38 | Ac 09 00 39 | Ac 09 CD 40 | Ac 09 BA 41 | Ac 09 00 42 | Ac 09 00 43 | Ac 09 08 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 0B 47 | Ac 09 0F 48 | Ac 09 06 49 | Ac 09 84 50 | Ac 09 33 51 | Ac 09 53 52 | Ac 09 44 53 | Ac 09 22 54 | Ac 09 00 55 | Ac 04 00 56 | Ac 05 01 57 | Ac 17 00 58 | Ac 01 00 59 | Ac 5E 02 60 | Ac 17 03 61 | Ac 10 44 62 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv320x/FourD position recognition/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple example of 4D position recognition typically used in smartphone devices. The example uses the accelerometer X and Y axes to determine portrait (up or down) and landscape (left or right) orientation. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = N/A 17 | - 10h = Y-axis pointing down (portrait, down) 18 | - 20h = Y-axis pointing up (portrait, up) 19 | - 40h = X-axis pointing down (landscape, right) 20 | - 80h = X-axis pointing up (landscape, left) 21 | 22 | 23 | ## 4 - Interrupts 24 | 25 | The configuration generates an interrupt on INT1 when a change in the orientation is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new orientation. 26 | 27 | ------ 28 | 29 | **More Information: [http://www.st.com](http://st.com/MEMS)** 30 | 31 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv320x/FourD position recognition/lsm6dsv320x_four_d.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI251A (LSM6DSV320X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 91 34 | Ac 09 10 35 | Ac 09 16 36 | Ac 09 00 37 | Ac 09 0F 38 | Ac 09 00 39 | Ac 09 66 40 | Ac 09 3A 41 | Ac 09 66 42 | Ac 09 32 43 | Ac 09 F0 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 0F 47 | Ac 09 00 48 | Ac 09 EF 49 | Ac 09 33 50 | Ac 09 05 51 | Ac 09 73 52 | Ac 09 99 53 | Ac 09 08 54 | Ac 09 22 55 | Ac 04 00 56 | Ac 05 01 57 | Ac 17 00 58 | Ac 01 00 59 | Ac 5E 02 60 | Ac 17 03 61 | Ac 10 44 62 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv320x/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *freefall* is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv320x/Glance detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *glance* and *de-glance* gestures typically used in smartphone devices. The two gestures can be used to turn-on and turn-off the screen automatically. The example uses the accelerometer low-pass filtered data at 1 Hz using the *Machine Learning Core*. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 20h = Glance gesture detected 17 | - 08h = De-glance gesture detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *glance* or a *de-glance* gesture is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv320x/Jiggle detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *jiggle* gesture (similar to a shake) example for wrist-worn devices. The gesture is detected when the accelerometer Z-axis is pointing up and the user is shaking the device along the Y-axis (accelerometer data low-pass filtered at 1 Hz using the *Machine Learning Core*). 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *jiggle* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv320x/Motion-Stationary detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *motion* and *stationary* states of the device. The example uses the accelerometer sensor. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = Stationary state detected 17 | - 01h = Motion state detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *motion* or a *stationary* event is detected. The *motion* interrupt is generated when the device is in *stationary* state and it is moved. The *stationary* interrupt is generated when the device is in *motion* state and it is still for 5 seconds. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv320x/Motion-Stationary detection/lsm6dsv320x_motion_stationary.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI251A (LSM6DSV320X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 71 34 | Ac 09 00 35 | Ac 09 1A 36 | Ac 09 00 37 | Ac 09 10 38 | Ac 09 00 39 | Ac 09 66 40 | Ac 09 3C 41 | Ac 09 02 42 | Ac 09 00 43 | Ac 09 01 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 00 47 | Ac 09 00 48 | Ac 09 96 49 | Ac 09 66 50 | Ac 09 05 51 | Ac 09 77 52 | Ac 09 99 53 | Ac 09 66 54 | Ac 09 33 55 | Ac 09 53 56 | Ac 09 44 57 | Ac 09 88 58 | Ac 09 22 59 | Ac 04 00 60 | Ac 05 01 61 | Ac 17 00 62 | Ac 01 00 63 | Ac 5E 02 64 | Ac 17 03 65 | Ac 10 44 66 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv320x/Peak Tracking/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | This Finite State Machine (FSM) example enables the *Peak Tracking* suitable for detecting high-intensity impacts. 4 | 5 | The FSM processes data coming from the high-g accelerometer, configured at 480 Hz. 6 | 7 | Configurable parameters: 8 | 9 | - Threshold 1: shock start threshold on high-g accelerometer norm signal [hg], default is 0.40 hg (that is 40 g) 10 | - Threshold 2: shock end threshold on high-g accelerometer norm signal [hg], default is 0.39 hg (that is 39 g) 11 | 12 | Overall current consumption is 260 µA. 13 | 14 | 15 | ## 2 - Device orientation 16 | 17 | Any orientation. 18 | 19 | 20 | ## 3 - Finite State Machine output values 21 | 22 | None. 23 | 24 | 25 | ## 4 - Interrupts 26 | 27 | The configuration generates an interrupt on INT1 pin when the *Peak Tracking* stores the high-g accelerometer peak value in FIFO. 28 | 29 | ------ 30 | 31 | **More Information: [http://www.st.com](http://st.com/MEMS)** 32 | 33 | **Copyright © 2025 STMicroelectronics** 34 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv320x/Pick-up detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | This Finite State Machine (FSM) example implements the *pick-up* gesture typically used in mobile devices to signal the event of picking up the device from a table. It is typically used to automatically turn on some services. 4 | 5 | The FSM processes data coming from the accelerometer, configured in low-power mode 3 at 30 Hz. 6 | 7 | Configurable parameters: 8 | 9 | - On table detection threshold, default is 0.9 g 10 | - On table detection time, default is 3 s (90 samples) 11 | - Pick-up detection threshold, default is 1.1 g 12 | 13 | Overall current consumption is 17 µA. 14 | 15 | 16 | ## 2 - Device orientation 17 | 18 | ENU orientation is required. 19 | 20 | 21 | ## 3 - Finite State Machine output values 22 | 23 | None. 24 | 25 | 26 | ## 4 - Interrupts 27 | 28 | The configuration generates an interrupt on INT1 when the *pick-up* gesture is detected. 29 | 30 | ------ 31 | 32 | **More Information: [http://www.st.com](http://st.com/MEMS)** 33 | 34 | **Copyright © 2020 STMicroelectronics** 35 | 36 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv320x/Pick-up detection/lsm6dsv320x_pick_up.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI251A (LSM6DSV320X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 91 34 | Ac 09 00 35 | Ac 09 14 36 | Ac 09 00 37 | Ac 09 0E 38 | Ac 09 00 39 | Ac 09 33 40 | Ac 09 3B 41 | Ac 09 66 42 | Ac 09 3C 43 | Ac 09 08 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 5A 47 | Ac 09 12 48 | Ac 09 66 49 | Ac 09 73 50 | Ac 09 06 51 | Ac 09 22 52 | Ac 09 00 53 | Ac 04 00 54 | Ac 05 01 55 | Ac 17 00 56 | Ac 01 00 57 | Ac 5E 02 58 | Ac 17 03 59 | Ac 10 44 60 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv320x/Shake detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *shake* gesture example for smartphone devices. This gesture is detected when the user is shaking the accelerometer along the X-axis. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *shake* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv320x/Shake detection/lsm6dsv320x_shake.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI251A (LSM6DSV320X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 51 34 | Ac 09 10 35 | Ac 09 18 36 | Ac 09 00 37 | Ac 09 0D 38 | Ac 09 00 39 | Ac 09 00 40 | Ac 09 3E 41 | Ac 09 80 42 | Ac 09 00 43 | Ac 09 00 44 | Ac 09 09 45 | Ac 09 00 46 | Ac 09 7C 47 | Ac 09 41 48 | Ac 09 5C 49 | Ac 09 12 50 | Ac 09 15 51 | Ac 09 3C 52 | Ac 09 35 53 | Ac 09 22 54 | Ac 09 35 55 | Ac 09 3C 56 | Ac 09 22 57 | Ac 04 00 58 | Ac 05 01 59 | Ac 17 00 60 | Ac 01 00 61 | Ac 5E 02 62 | Ac 17 03 63 | Ac 10 44 64 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv32x/Flip-Down detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *flip-down* gesture example, used to stop the phone-call by placing the accelerometer Z axis downward. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *flip-down* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv32x/Flip-Down detection/lsm6dsv32x_flip_down.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI240KA (LSM6DSV32X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 92 34 | Ac 09 00 35 | Ac 09 16 36 | Ac 09 00 37 | Ac 09 0F 38 | Ac 09 00 39 | Ac 09 CD 40 | Ac 09 BA 41 | Ac 09 00 42 | Ac 09 00 43 | Ac 09 08 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 0B 47 | Ac 09 0F 48 | Ac 09 06 49 | Ac 09 84 50 | Ac 09 33 51 | Ac 09 53 52 | Ac 09 44 53 | Ac 09 22 54 | Ac 09 00 55 | Ac 04 00 56 | Ac 05 01 57 | Ac 17 00 58 | Ac 01 00 59 | Ac 5E 02 60 | Ac 17 07 61 | Ac 10 44 62 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv32x/FourD position recognition/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple example of 4D position recognition typically used in smartphone devices. The example uses the accelerometer X and Y axes to determine portrait (up or down) and landscape (left or right) orientation. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = N/A 17 | - 10h = Y-axis pointing down (portrait, down) 18 | - 20h = Y-axis pointing up (portrait, up) 19 | - 40h = X-axis pointing down (landscape, right) 20 | - 80h = X-axis pointing up (landscape, left) 21 | 22 | 23 | ## 4 - Interrupts 24 | 25 | The configuration generates an interrupt on INT1 when a change in the orientation is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new orientation. 26 | 27 | ------ 28 | 29 | **More Information: [http://www.st.com](http://st.com/MEMS)** 30 | 31 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv32x/FourD position recognition/lsm6dsv32x_four_d.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI240KA (LSM6DSV32X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 91 34 | Ac 09 10 35 | Ac 09 16 36 | Ac 09 00 37 | Ac 09 0F 38 | Ac 09 00 39 | Ac 09 66 40 | Ac 09 3A 41 | Ac 09 66 42 | Ac 09 32 43 | Ac 09 F0 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 0F 47 | Ac 09 00 48 | Ac 09 EF 49 | Ac 09 33 50 | Ac 09 05 51 | Ac 09 73 52 | Ac 09 99 53 | Ac 09 08 54 | Ac 09 22 55 | Ac 04 00 56 | Ac 05 01 57 | Ac 17 00 58 | Ac 01 00 59 | Ac 5E 02 60 | Ac 17 07 61 | Ac 10 44 62 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv32x/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *freefall* is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv32x/Glance detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *glance* and *de-glance* gestures typically used in smartphone devices. The two gestures can be used to turn-on and turn-off the screen automatically. The example uses the accelerometer low-pass filtered data at 1 Hz using the *Machine Learning Core*. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 20h = Glance gesture detected 17 | - 08h = De-glance gesture detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *glance* or a *de-glance* gesture is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv32x/Jiggle detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *jiggle* gesture (similar to a shake) example for wrist-worn devices. The gesture is detected when the accelerometer Z-axis is pointing up and the user is shaking the device along the Y-axis (accelerometer data low-pass filtered at 1 Hz using the *Machine Learning Core*). 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *jiggle* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv32x/Motion-Stationary detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *motion* and *stationary* states of the device. The example uses the accelerometer sensor. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = Stationary state detected 17 | - 01h = Motion state detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *motion* or a *stationary* event is detected. The *motion* interrupt is generated when the device is in *stationary* state and it is moved. The *stationary* interrupt is generated when the device is in *motion* state and it is still for 5 seconds. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv32x/Motion-Stationary detection/lsm6dsv32x_motion_stationary.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI240KA (LSM6DSV32X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 71 34 | Ac 09 00 35 | Ac 09 1A 36 | Ac 09 00 37 | Ac 09 10 38 | Ac 09 00 39 | Ac 09 66 40 | Ac 09 3C 41 | Ac 09 02 42 | Ac 09 00 43 | Ac 09 01 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 00 47 | Ac 09 00 48 | Ac 09 96 49 | Ac 09 66 50 | Ac 09 05 51 | Ac 09 77 52 | Ac 09 99 53 | Ac 09 66 54 | Ac 09 33 55 | Ac 09 53 56 | Ac 09 44 57 | Ac 09 88 58 | Ac 09 22 59 | Ac 04 00 60 | Ac 05 01 61 | Ac 17 00 62 | Ac 01 00 63 | Ac 5E 02 64 | Ac 17 07 65 | Ac 10 44 66 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv32x/Pick-up detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | This Finite State Machine (FSM) example implements the *pick-up* gesture typically used in mobile devices to signal the event of picking up the device from a table. It is typically used to automatically turn on some services. 4 | 5 | The FSM processes data coming from the accelerometer, configured in low-power mode 3 at 30 Hz. 6 | 7 | Configurable parameters: 8 | 9 | - On table detection threshold, default is 0.9 g 10 | - On table detection time, default is 3 s (90 samples) 11 | - Pick-up detection threshold, default is 1.1 g 12 | 13 | Overall current consumption is 16 µA. 14 | 15 | 16 | ## 2 - Device orientation 17 | 18 | ENU orientation is required. 19 | 20 | 21 | ## 3 - Finite State Machine output values 22 | 23 | None. 24 | 25 | 26 | ## 4 - Interrupts 27 | 28 | The configuration generates an interrupt on INT1 when the *pick-up* gesture is detected. 29 | 30 | ------ 31 | 32 | **More Information: [http://www.st.com](http://st.com/MEMS)** 33 | 34 | **Copyright © 2020 STMicroelectronics** 35 | 36 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv32x/Pick-up detection/lsm6dsv32x_pick_up.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI240KA (LSM6DSV32X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 91 34 | Ac 09 00 35 | Ac 09 14 36 | Ac 09 00 37 | Ac 09 0E 38 | Ac 09 00 39 | Ac 09 33 40 | Ac 09 3B 41 | Ac 09 66 42 | Ac 09 3C 43 | Ac 09 08 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 5A 47 | Ac 09 12 48 | Ac 09 66 49 | Ac 09 73 50 | Ac 09 06 51 | Ac 09 22 52 | Ac 09 00 53 | Ac 04 00 54 | Ac 05 01 55 | Ac 17 00 56 | Ac 01 00 57 | Ac 5E 02 58 | Ac 17 07 59 | Ac 10 44 60 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv32x/README.md: -------------------------------------------------------------------------------- 1 | # LSM6DSV32X 2 | 3 | 6-axis IMU with embedded sensor fusion, AI, Qvar for high-end applications. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/lsm6dsv32x.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv32x/Shake detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *shake* gesture example for smartphone devices. This gesture is detected when the user is shaking the accelerometer along the X-axis. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *shake* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv32x/Shake detection/lsm6dsv32x_shake.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI240KA (LSM6DSV32X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 51 34 | Ac 09 10 35 | Ac 09 18 36 | Ac 09 00 37 | Ac 09 0D 38 | Ac 09 00 39 | Ac 09 00 40 | Ac 09 3E 41 | Ac 09 80 42 | Ac 09 00 43 | Ac 09 00 44 | Ac 09 09 45 | Ac 09 00 46 | Ac 09 7C 47 | Ac 09 41 48 | Ac 09 5C 49 | Ac 09 12 50 | Ac 09 15 51 | Ac 09 3C 52 | Ac 09 35 53 | Ac 09 22 54 | Ac 09 35 55 | Ac 09 3C 56 | Ac 09 22 57 | Ac 04 00 58 | Ac 05 01 59 | Ac 17 00 60 | Ac 01 00 61 | Ac 5E 02 62 | Ac 17 07 63 | Ac 10 44 64 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv80x/Flip-Down detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *flip-down* gesture example, used to stop the phone-call by placing the accelerometer Z axis downward. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *flip-down* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv80x/Flip-Down detection/lsm6dsv80x_flip_down.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI247A (LSM6DSV80X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 92 34 | Ac 09 00 35 | Ac 09 16 36 | Ac 09 00 37 | Ac 09 0F 38 | Ac 09 00 39 | Ac 09 CD 40 | Ac 09 BA 41 | Ac 09 00 42 | Ac 09 00 43 | Ac 09 08 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 0B 47 | Ac 09 0F 48 | Ac 09 06 49 | Ac 09 84 50 | Ac 09 33 51 | Ac 09 53 52 | Ac 09 44 53 | Ac 09 22 54 | Ac 09 00 55 | Ac 04 00 56 | Ac 05 01 57 | Ac 17 00 58 | Ac 01 00 59 | Ac 5E 02 60 | Ac 17 03 61 | Ac 10 44 62 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv80x/FourD position recognition/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple example of 4D position recognition typically used in smartphone devices. The example uses the accelerometer X and Y axes to determine portrait (up or down) and landscape (left or right) orientation. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = N/A 17 | - 10h = Y-axis pointing down (portrait, down) 18 | - 20h = Y-axis pointing up (portrait, up) 19 | - 40h = X-axis pointing down (landscape, right) 20 | - 80h = X-axis pointing up (landscape, left) 21 | 22 | 23 | ## 4 - Interrupts 24 | 25 | The configuration generates an interrupt on INT1 when a change in the orientation is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new orientation. 26 | 27 | ------ 28 | 29 | **More Information: [http://www.st.com](http://st.com/MEMS)** 30 | 31 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv80x/FourD position recognition/lsm6dsv80x_four_d.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI247A (LSM6DSV80X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 91 34 | Ac 09 10 35 | Ac 09 16 36 | Ac 09 00 37 | Ac 09 0F 38 | Ac 09 00 39 | Ac 09 66 40 | Ac 09 3A 41 | Ac 09 66 42 | Ac 09 32 43 | Ac 09 F0 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 0F 47 | Ac 09 00 48 | Ac 09 EF 49 | Ac 09 33 50 | Ac 09 05 51 | Ac 09 73 52 | Ac 09 99 53 | Ac 09 08 54 | Ac 09 22 55 | Ac 04 00 56 | Ac 05 01 57 | Ac 17 00 58 | Ac 01 00 59 | Ac 5E 02 60 | Ac 17 03 61 | Ac 10 44 62 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv80x/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *freefall* is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv80x/Glance detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *glance* and *de-glance* gestures typically used in smartphone devices. The two gestures can be used to turn-on and turn-off the screen automatically. The example uses the accelerometer low-pass filtered data at 1 Hz using the *Machine Learning Core*. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 20h = Glance gesture detected 17 | - 08h = De-glance gesture detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *glance* or a *de-glance* gesture is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv80x/Jiggle detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *jiggle* gesture (similar to a shake) example for wrist-worn devices. The gesture is detected when the accelerometer Z-axis is pointing up and the user is shaking the device along the Y-axis (accelerometer data low-pass filtered at 1 Hz using the *Machine Learning Core*). 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *jiggle* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv80x/Motion-Stationary detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *motion* and *stationary* states of the device. The example uses the accelerometer sensor. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = Stationary state detected 17 | - 01h = Motion state detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *motion* or a *stationary* event is detected. The *motion* interrupt is generated when the device is in *stationary* state and it is moved. The *stationary* interrupt is generated when the device is in *motion* state and it is still for 5 seconds. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv80x/Motion-Stationary detection/lsm6dsv80x_motion_stationary.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI247A (LSM6DSV80X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 71 34 | Ac 09 00 35 | Ac 09 1A 36 | Ac 09 00 37 | Ac 09 10 38 | Ac 09 00 39 | Ac 09 66 40 | Ac 09 3C 41 | Ac 09 02 42 | Ac 09 00 43 | Ac 09 01 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 00 47 | Ac 09 00 48 | Ac 09 96 49 | Ac 09 66 50 | Ac 09 05 51 | Ac 09 77 52 | Ac 09 99 53 | Ac 09 66 54 | Ac 09 33 55 | Ac 09 53 56 | Ac 09 44 57 | Ac 09 88 58 | Ac 09 22 59 | Ac 04 00 60 | Ac 05 01 61 | Ac 17 00 62 | Ac 01 00 63 | Ac 5E 02 64 | Ac 17 03 65 | Ac 10 44 66 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv80x/Peak Tracking/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | This Finite State Machine (FSM) example enables the *Peak Tracking* suitable for detecting high-intensity impacts. 4 | 5 | The FSM processes data coming from the high-g accelerometer, configured at 480 Hz. 6 | 7 | Configurable parameters: 8 | 9 | - Threshold 1: shock start threshold on high-g accelerometer norm signal [hg], default is 0.40 hg (that is 40 g) 10 | - Threshold 2: shock end threshold on high-g accelerometer norm signal [hg], default is 0.39 hg (that is 39 g) 11 | 12 | Overall current consumption is 260 µA. 13 | 14 | 15 | ## 2 - Device orientation 16 | 17 | Any orientation. 18 | 19 | 20 | ## 3 - Finite State Machine output values 21 | 22 | None. 23 | 24 | 25 | ## 4 - Interrupts 26 | 27 | The configuration generates an interrupt on INT1 pin when the *Peak Tracking* stores the high-g accelerometer peak value in FIFO. 28 | 29 | ------ 30 | 31 | **More Information: [http://www.st.com](http://st.com/MEMS)** 32 | 33 | **Copyright © 2025 STMicroelectronics** 34 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv80x/Pick-up detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | This Finite State Machine (FSM) example implements the *pick-up* gesture typically used in mobile devices to signal the event of picking up the device from a table. It is typically used to automatically turn on some services. 4 | 5 | The FSM processes data coming from the accelerometer, configured in low-power mode 3 at 30 Hz. 6 | 7 | Configurable parameters: 8 | 9 | - On table detection threshold, default is 0.9 g 10 | - On table detection time, default is 3 s (90 samples) 11 | - Pick-up detection threshold, default is 1.1 g 12 | 13 | Overall current consumption is 17 µA. 14 | 15 | 16 | ## 2 - Device orientation 17 | 18 | ENU orientation is required. 19 | 20 | 21 | ## 3 - Finite State Machine output values 22 | 23 | None. 24 | 25 | 26 | ## 4 - Interrupts 27 | 28 | The configuration generates an interrupt on INT1 when the *pick-up* gesture is detected. 29 | 30 | ------ 31 | 32 | **More Information: [http://www.st.com](http://st.com/MEMS)** 33 | 34 | **Copyright © 2020 STMicroelectronics** 35 | 36 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv80x/Pick-up detection/lsm6dsv80x_pick_up.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI247A (LSM6DSV80X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 91 34 | Ac 09 00 35 | Ac 09 14 36 | Ac 09 00 37 | Ac 09 0E 38 | Ac 09 00 39 | Ac 09 33 40 | Ac 09 3B 41 | Ac 09 66 42 | Ac 09 3C 43 | Ac 09 08 44 | Ac 09 00 45 | Ac 09 00 46 | Ac 09 5A 47 | Ac 09 12 48 | Ac 09 66 49 | Ac 09 73 50 | Ac 09 06 51 | Ac 09 22 52 | Ac 09 00 53 | Ac 04 00 54 | Ac 05 01 55 | Ac 17 00 56 | Ac 01 00 57 | Ac 5E 02 58 | Ac 17 03 59 | Ac 10 44 60 | -------------------------------------------------------------------------------- /application_examples/lsm6dsv80x/Shake detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *shake* gesture example for smartphone devices. This gesture is detected when the user is shaking the accelerometer along the X-axis. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *shake* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2019 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/lsm6dsv80x/Shake detection/lsm6dsv80x_shake.ucf: -------------------------------------------------------------------------------- 1 | -- Finite State Machine Tool v9.14.6.0, STEVAL-MKI247A (LSM6DSV80X) 2 | -- FSM1 3 | -- FSM2 4 | -- FSM3 5 | -- FSM4 6 | -- FSM5 7 | -- FSM6 8 | -- FSM7 9 | -- FSM8 10 | 11 | Ac 10 00 12 | Ac 11 00 13 | Ac 01 80 14 | Ac 04 00 15 | Ac 05 00 16 | Ac 5F 4B 17 | Ac 46 01 18 | Ac 0A 00 19 | Ac 0B 01 20 | Ac 0E 00 21 | Ac 0F 00 22 | Ac 17 40 23 | Ac 02 11 24 | Ac 08 7A 25 | Ac 09 00 26 | Ac 09 00 27 | Ac 09 01 28 | Ac 09 01 29 | Ac 09 00 30 | Ac 09 04 31 | Ac 02 41 32 | Ac 08 00 33 | Ac 09 51 34 | Ac 09 10 35 | Ac 09 18 36 | Ac 09 00 37 | Ac 09 0D 38 | Ac 09 00 39 | Ac 09 00 40 | Ac 09 3E 41 | Ac 09 80 42 | Ac 09 00 43 | Ac 09 00 44 | Ac 09 09 45 | Ac 09 00 46 | Ac 09 7C 47 | Ac 09 41 48 | Ac 09 5C 49 | Ac 09 12 50 | Ac 09 15 51 | Ac 09 3C 52 | Ac 09 35 53 | Ac 09 22 54 | Ac 09 35 55 | Ac 09 3C 56 | Ac 09 22 57 | Ac 04 00 58 | Ac 05 01 59 | Ac 17 00 60 | Ac 01 00 61 | Ac 5E 02 62 | Ac 17 03 63 | Ac 10 44 64 | -------------------------------------------------------------------------------- /application_examples/st1vafe3bx/Flip-Down detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *flip-down* gesture example, used to stop the phone-call by placing the accelerometer Z axis downward. 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 10.5 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | ENU, SEU, WSU or NWU orientation is required. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT when the *flip-down* gesture is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2024 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/st1vafe3bx/Flip-Down detection/st1vafe3bx_flip_down.ucf: -------------------------------------------------------------------------------- 1 | Ac 14 00 2 | Ac 13 10 3 | WAIT 5 4 | Ac 3F 80 5 | Ac 04 00 6 | Ac 05 00 7 | Ac 39 4B 8 | Ac 1A 01 9 | Ac 0A 00 10 | Ac 0B 01 11 | Ac 0E 00 12 | Ac 0F 00 13 | Ac 17 40 14 | Ac 02 01 15 | Ac 08 54 16 | Ac 09 00 17 | Ac 09 00 18 | Ac 09 01 19 | Ac 09 01 20 | Ac 09 00 21 | Ac 09 02 22 | Ac 02 21 23 | Ac 08 00 24 | Ac 09 92 25 | Ac 09 00 26 | Ac 09 16 27 | Ac 09 00 28 | Ac 09 0F 29 | Ac 09 00 30 | Ac 09 CD 31 | Ac 09 BA 32 | Ac 09 00 33 | Ac 09 00 34 | Ac 09 08 35 | Ac 09 00 36 | Ac 09 00 37 | Ac 09 09 38 | Ac 09 0D 39 | Ac 09 06 40 | Ac 09 84 41 | Ac 09 33 42 | Ac 09 53 43 | Ac 09 44 44 | Ac 09 22 45 | Ac 09 00 46 | Ac 04 00 47 | Ac 05 01 48 | Ac 17 00 49 | Ac 3F 00 50 | Ac 1F 01 51 | Ac 10 50 52 | Ac 14 33 53 | -------------------------------------------------------------------------------- /application_examples/st1vafe3bx/Flip-up detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | This Finite State Machine (FSM) example implements the *flip-up* gesture typically used in mobile devices to signal the event of flipping the device up when it is facing down on a table. It is typically used to automatically turn on the device screen. 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 10.8 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | ENU orientation is required. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT when the *flip-up* gesture is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2024 STMicroelectronics** 29 | 30 | -------------------------------------------------------------------------------- /application_examples/st1vafe3bx/Flip-up detection/st1vafe3bx_flip_up.ucf: -------------------------------------------------------------------------------- 1 | Ac 14 00 2 | Ac 13 10 3 | WAIT 5 4 | Ac 3F 80 5 | Ac 04 00 6 | Ac 05 00 7 | Ac 39 4B 8 | Ac 1A 01 9 | Ac 0A 00 10 | Ac 0B 01 11 | Ac 0E 00 12 | Ac 0F 00 13 | Ac 17 40 14 | Ac 02 01 15 | Ac 08 54 16 | Ac 09 00 17 | Ac 09 00 18 | Ac 09 01 19 | Ac 09 01 20 | Ac 09 00 21 | Ac 09 02 22 | Ac 02 21 23 | Ac 08 00 24 | Ac 09 E2 25 | Ac 09 00 26 | Ac 09 28 27 | Ac 09 00 28 | Ac 09 13 29 | Ac 09 00 30 | Ac 09 33 31 | Ac 09 BB 32 | Ac 09 CD 33 | Ac 09 34 34 | Ac 09 66 35 | Ac 09 3A 36 | Ac 09 08 37 | Ac 09 00 38 | Ac 09 80 39 | Ac 09 00 40 | Ac 09 00 41 | Ac 09 14 42 | Ac 09 64 43 | Ac 09 13 44 | Ac 09 66 45 | Ac 09 CC 46 | Ac 09 53 47 | Ac 09 DD 48 | Ac 09 13 49 | Ac 09 66 50 | Ac 09 41 51 | Ac 09 68 52 | Ac 09 13 53 | Ac 09 1E 54 | Ac 09 12 55 | Ac 09 77 56 | Ac 09 41 57 | Ac 09 75 58 | Ac 09 18 59 | Ac 09 24 60 | Ac 09 13 61 | Ac 09 66 62 | Ac 09 46 63 | Ac 09 22 64 | Ac 04 00 65 | Ac 05 01 66 | Ac 17 00 67 | Ac 3F 00 68 | Ac 1F 01 69 | Ac 10 50 70 | Ac 14 33 71 | -------------------------------------------------------------------------------- /application_examples/st1vafe3bx/FourD position recognition/st1vafe3bx_four_d.ucf: -------------------------------------------------------------------------------- 1 | Ac 14 00 2 | Ac 13 10 3 | WAIT 5 4 | Ac 3F 80 5 | Ac 04 00 6 | Ac 05 00 7 | Ac 39 4B 8 | Ac 1A 01 9 | Ac 0A 00 10 | Ac 0B 01 11 | Ac 0E 00 12 | Ac 0F 00 13 | Ac 17 40 14 | Ac 02 01 15 | Ac 08 54 16 | Ac 09 00 17 | Ac 09 00 18 | Ac 09 01 19 | Ac 09 01 20 | Ac 09 00 21 | Ac 09 02 22 | Ac 02 21 23 | Ac 08 00 24 | Ac 09 91 25 | Ac 09 10 26 | Ac 09 16 27 | Ac 09 00 28 | Ac 09 0F 29 | Ac 09 00 30 | Ac 09 66 31 | Ac 09 3A 32 | Ac 09 66 33 | Ac 09 32 34 | Ac 09 F0 35 | Ac 09 00 36 | Ac 09 00 37 | Ac 09 0D 38 | Ac 09 00 39 | Ac 09 EF 40 | Ac 09 33 41 | Ac 09 05 42 | Ac 09 73 43 | Ac 09 99 44 | Ac 09 08 45 | Ac 09 22 46 | Ac 04 00 47 | Ac 05 01 48 | Ac 17 00 49 | Ac 3F 00 50 | Ac 1F 01 51 | Ac 10 50 52 | Ac 14 33 53 | -------------------------------------------------------------------------------- /application_examples/st1vafe3bx/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 11.2 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | Any orientation. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT when the *freefall* is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2024 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/st1vafe3bx/Freefall detection/st1vafe3bx_free_fall.ucf: -------------------------------------------------------------------------------- 1 | Ac 14 00 2 | Ac 13 10 3 | WAIT 5 4 | Ac 3F 80 5 | Ac 04 00 6 | Ac 05 00 7 | Ac 39 4B 8 | Ac 1A 01 9 | Ac 0A 00 10 | Ac 0B 01 11 | Ac 0E 00 12 | Ac 0F 00 13 | Ac 17 40 14 | Ac 02 01 15 | Ac 08 54 16 | Ac 09 00 17 | Ac 09 00 18 | Ac 09 01 19 | Ac 09 01 20 | Ac 09 00 21 | Ac 09 02 22 | Ac 02 21 23 | Ac 08 00 24 | Ac 09 71 25 | Ac 09 10 26 | Ac 09 1C 27 | Ac 09 00 28 | Ac 09 11 29 | Ac 09 00 30 | Ac 09 CD 31 | Ac 09 34 32 | Ac 09 A8 33 | Ac 09 00 34 | Ac 09 00 35 | Ac 09 00 36 | Ac 09 01 37 | Ac 09 00 38 | Ac 09 00 39 | Ac 09 02 40 | Ac 09 00 41 | Ac 09 F5 42 | Ac 09 77 43 | Ac 09 99 44 | Ac 09 12 45 | Ac 09 66 46 | Ac 09 53 47 | Ac 09 C7 48 | Ac 09 88 49 | Ac 09 99 50 | Ac 09 50 51 | Ac 09 00 52 | Ac 04 00 53 | Ac 05 01 54 | Ac 17 00 55 | Ac 3F 00 56 | Ac 1F 01 57 | Ac 10 50 58 | Ac 14 33 59 | -------------------------------------------------------------------------------- /application_examples/st1vafe3bx/Glance detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *glance* and *de-glance* gestures typically used in smartphone devices. The two gestures can be used to turn-on and turn-off the screen automatically. The example uses the accelerometer low-pass filtered data at 1 Hz using the *Machine Learning Core*. 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 11.4 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | ENU orientation is required. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | - FSM_OUTS1 register values 18 | - 20h = Glance gesture detected 19 | - 08h = De-glance gesture detected 20 | 21 | 22 | ## 4 - Interrupts 23 | 24 | The configuration generates an interrupt on INT when a *glance* or a *de-glance* gesture is detected. Reading the FSM_OUTS1 register allows to determine the new state. 25 | 26 | ------ 27 | 28 | **More Information: [http://www.st.com](http://st.com/MEMS)** 29 | 30 | **Copyright © 2024 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/st1vafe3bx/Jiggle detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *jiggle* gesture (similar to a shake) example for wrist-worn devices. The gesture is detected when the accelerometer Z-axis is pointing up and the user is shaking the device along the Y-axis (accelerometer data low-pass filtered at 1 Hz using the *Machine Learning Core*). 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 11.5 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | ENU orientation is required. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT when the *jiggle* gesture is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2024 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/st1vafe3bx/Lift detection/st1vafe3bx_lift_detection.ucf: -------------------------------------------------------------------------------- 1 | Ac 14 00 2 | Ac 13 10 3 | WAIT 5 4 | Ac 3F 80 5 | Ac 04 00 6 | Ac 05 00 7 | Ac 39 4B 8 | Ac 1A 01 9 | Ac 0A 00 10 | Ac 0B 01 11 | Ac 0E 00 12 | Ac 0F 00 13 | Ac 17 40 14 | Ac 02 01 15 | Ac 08 54 16 | Ac 09 00 17 | Ac 09 00 18 | Ac 09 01 19 | Ac 09 01 20 | Ac 09 00 21 | Ac 09 02 22 | Ac 02 21 23 | Ac 08 00 24 | Ac 09 A2 25 | Ac 09 00 26 | Ac 09 26 27 | Ac 09 00 28 | Ac 09 11 29 | Ac 09 00 30 | Ac 09 9A 31 | Ac 09 35 32 | Ac 09 CD 33 | Ac 09 3A 34 | Ac 09 F0 35 | Ac 09 00 36 | Ac 09 08 37 | Ac 09 00 38 | Ac 09 00 39 | Ac 09 19 40 | Ac 09 0D 41 | Ac 09 12 42 | Ac 09 66 43 | Ac 09 53 44 | Ac 09 13 45 | Ac 09 77 46 | Ac 09 86 47 | Ac 09 99 48 | Ac 09 12 49 | Ac 09 66 50 | Ac 09 33 51 | Ac 09 A4 52 | Ac 09 13 53 | Ac 09 41 54 | Ac 09 C5 55 | Ac 09 21 56 | Ac 09 23 57 | Ac 09 44 58 | Ac 09 22 59 | Ac 09 44 60 | Ac 09 22 61 | Ac 09 00 62 | Ac 04 00 63 | Ac 05 01 64 | Ac 17 80 65 | Ac 3F 00 66 | Ac 3F 00 67 | Ac 1F 01 68 | Ac 10 50 69 | Ac 14 33 70 | -------------------------------------------------------------------------------- /application_examples/st1vafe3bx/Motion-Stationary detection/st1vafe3bx_motion_stationary.ucf: -------------------------------------------------------------------------------- 1 | Ac 14 00 2 | Ac 13 10 3 | WAIT 5 4 | Ac 3F 80 5 | Ac 04 00 6 | Ac 05 00 7 | Ac 39 4B 8 | Ac 1A 01 9 | Ac 0A 00 10 | Ac 0B 01 11 | Ac 0E 00 12 | Ac 0F 00 13 | Ac 17 40 14 | Ac 02 01 15 | Ac 08 54 16 | Ac 09 00 17 | Ac 09 00 18 | Ac 09 01 19 | Ac 09 01 20 | Ac 09 00 21 | Ac 09 02 22 | Ac 02 21 23 | Ac 08 00 24 | Ac 09 71 25 | Ac 09 00 26 | Ac 09 1A 27 | Ac 09 00 28 | Ac 09 10 29 | Ac 09 00 30 | Ac 09 9A 31 | Ac 09 3C 32 | Ac 09 02 33 | Ac 09 00 34 | Ac 09 01 35 | Ac 09 00 36 | Ac 09 00 37 | Ac 09 00 38 | Ac 09 00 39 | Ac 09 7D 40 | Ac 09 66 41 | Ac 09 05 42 | Ac 09 77 43 | Ac 09 99 44 | Ac 09 66 45 | Ac 09 33 46 | Ac 09 53 47 | Ac 09 44 48 | Ac 09 88 49 | Ac 09 22 50 | Ac 04 00 51 | Ac 05 01 52 | Ac 17 00 53 | Ac 3F 00 54 | Ac 1F 01 55 | Ac 10 50 56 | Ac 14 33 57 | -------------------------------------------------------------------------------- /application_examples/st1vafe3bx/Pick-up detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | This Finite State Machine (FSM) example implements the *pick-up* gesture typically used in mobile devices to signal the event of picking up the device from a table. It is typically used to automatically turn on some services. 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 10.5 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | ENU, SEU, WSU or NWU orientation is required. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT when the *pick-up* gesture is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2024 STMicroelectronics** 29 | 30 | -------------------------------------------------------------------------------- /application_examples/st1vafe3bx/Pick-up detection/st1vafe3bx_pickup.ucf: -------------------------------------------------------------------------------- 1 | Ac 14 00 2 | Ac 13 10 3 | WAIT 5 4 | Ac 3F 80 5 | Ac 04 00 6 | Ac 05 00 7 | Ac 39 4B 8 | Ac 1A 01 9 | Ac 0A 00 10 | Ac 0B 01 11 | Ac 0E 00 12 | Ac 0F 00 13 | Ac 17 40 14 | Ac 02 01 15 | Ac 08 54 16 | Ac 09 00 17 | Ac 09 00 18 | Ac 09 01 19 | Ac 09 01 20 | Ac 09 00 21 | Ac 09 02 22 | Ac 02 21 23 | Ac 08 00 24 | Ac 09 91 25 | Ac 09 00 26 | Ac 09 14 27 | Ac 09 00 28 | Ac 09 0E 29 | Ac 09 00 30 | Ac 09 CD 31 | Ac 09 3A 32 | Ac 09 9A 33 | Ac 09 3C 34 | Ac 09 08 35 | Ac 09 00 36 | Ac 09 00 37 | Ac 09 4B 38 | Ac 09 12 39 | Ac 09 66 40 | Ac 09 73 41 | Ac 09 06 42 | Ac 09 22 43 | Ac 09 00 44 | Ac 04 00 45 | Ac 05 01 46 | Ac 17 00 47 | Ac 3F 00 48 | Ac 1F 01 49 | Ac 10 50 50 | Ac 14 33 51 | -------------------------------------------------------------------------------- /application_examples/st1vafe3bx/README.md: -------------------------------------------------------------------------------- 1 | # ST1VAFE3BX 2 | 3 | Ultralow-power 3-axis smart accelerometer with vertical analog front-end (vAFE), AI, antialiasing filter, and advanced digital features. 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/st1vafe3bx.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/st1vafe3bx/Shake detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *shake* gesture example for smartphone devices. This gesture is detected when the user is shaking the accelerometer along the X-axis. 4 | 5 | The FSM processes data coming from the accelerometer, configured in ultra low-power mode at 25 Hz. 6 | 7 | Overall current consumption is 10.7 µA. 8 | 9 | 10 | ## 2 - Device orientation 11 | 12 | ENU orientation is required. 13 | 14 | 15 | ## 3 - Finite State Machine output values 16 | 17 | None. 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT when the *shake* gesture is detected. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2024 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/st1vafe3bx/Shake detection/st1vafe3bx_shake.ucf: -------------------------------------------------------------------------------- 1 | Ac 14 00 2 | Ac 13 10 3 | WAIT 5 4 | Ac 3F 80 5 | Ac 04 00 6 | Ac 05 00 7 | Ac 39 4B 8 | Ac 1A 01 9 | Ac 0A 00 10 | Ac 0B 01 11 | Ac 0E 00 12 | Ac 0F 00 13 | Ac 17 40 14 | Ac 02 01 15 | Ac 08 54 16 | Ac 09 00 17 | Ac 09 00 18 | Ac 09 01 19 | Ac 09 01 20 | Ac 09 00 21 | Ac 09 02 22 | Ac 02 21 23 | Ac 08 00 24 | Ac 09 51 25 | Ac 09 10 26 | Ac 09 18 27 | Ac 09 00 28 | Ac 09 0D 29 | Ac 09 00 30 | Ac 09 00 31 | Ac 09 3E 32 | Ac 09 80 33 | Ac 09 00 34 | Ac 09 00 35 | Ac 09 08 36 | Ac 09 00 37 | Ac 09 7C 38 | Ac 09 41 39 | Ac 09 5C 40 | Ac 09 12 41 | Ac 09 15 42 | Ac 09 3C 43 | Ac 09 35 44 | Ac 09 22 45 | Ac 09 35 46 | Ac 09 3C 47 | Ac 09 22 48 | Ac 04 00 49 | Ac 05 01 50 | Ac 17 00 51 | Ac 3F 00 52 | Ac 1F 01 53 | Ac 10 50 54 | Ac 14 33 55 | -------------------------------------------------------------------------------- /application_examples/st1vafe6ax/Flip-Down detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *flip-down* gesture example, used to stop the phone-call by placing the accelerometer Z axis downward. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *flip-down* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2024 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/st1vafe6ax/Flip-Down detection/st1vafe6ax_flip_down.ucf: -------------------------------------------------------------------------------- 1 | Ac 10 00 2 | Ac 11 00 3 | Ac 01 80 4 | Ac 04 00 5 | Ac 05 00 6 | Ac 5F 4B 7 | Ac 46 01 8 | Ac 0A 00 9 | Ac 0B 01 10 | Ac 0E 00 11 | Ac 0F 00 12 | Ac 17 40 13 | Ac 02 11 14 | Ac 08 7A 15 | Ac 09 00 16 | Ac 09 00 17 | Ac 09 01 18 | Ac 09 01 19 | Ac 09 00 20 | Ac 09 04 21 | Ac 02 41 22 | Ac 08 00 23 | Ac 09 92 24 | Ac 09 00 25 | Ac 09 16 26 | Ac 09 00 27 | Ac 09 0F 28 | Ac 09 00 29 | Ac 09 CD 30 | Ac 09 BA 31 | Ac 09 00 32 | Ac 09 00 33 | Ac 09 80 34 | Ac 09 00 35 | Ac 09 00 36 | Ac 09 0B 37 | Ac 09 0F 38 | Ac 09 06 39 | Ac 09 84 40 | Ac 09 33 41 | Ac 09 53 42 | Ac 09 44 43 | Ac 09 22 44 | Ac 09 00 45 | Ac 04 00 46 | Ac 05 01 47 | Ac 17 00 48 | Ac 01 00 49 | Ac 5E 02 50 | Ac 17 03 51 | Ac 10 44 52 | -------------------------------------------------------------------------------- /application_examples/st1vafe6ax/Flip-up detection/st1vafe6ax_flip_up.ucf: -------------------------------------------------------------------------------- 1 | Ac 10 00 2 | Ac 11 00 3 | Ac 01 80 4 | Ac 04 00 5 | Ac 05 00 6 | Ac 5F 4B 7 | Ac 46 01 8 | Ac 0A 00 9 | Ac 0B 01 10 | Ac 0E 00 11 | Ac 0F 00 12 | Ac 17 40 13 | Ac 02 11 14 | Ac 08 7A 15 | Ac 09 00 16 | Ac 09 00 17 | Ac 09 01 18 | Ac 09 01 19 | Ac 09 00 20 | Ac 09 04 21 | Ac 02 41 22 | Ac 08 00 23 | Ac 09 E2 24 | Ac 09 00 25 | Ac 09 28 26 | Ac 09 00 27 | Ac 09 13 28 | Ac 09 00 29 | Ac 09 33 30 | Ac 09 BB 31 | Ac 09 CD 32 | Ac 09 34 33 | Ac 09 66 34 | Ac 09 3A 35 | Ac 09 80 36 | Ac 09 00 37 | Ac 09 08 38 | Ac 09 00 39 | Ac 09 00 40 | Ac 09 18 41 | Ac 09 78 42 | Ac 09 13 43 | Ac 09 66 44 | Ac 09 CC 45 | Ac 09 53 46 | Ac 09 DD 47 | Ac 09 13 48 | Ac 09 66 49 | Ac 09 41 50 | Ac 09 68 51 | Ac 09 13 52 | Ac 09 1E 53 | Ac 09 12 54 | Ac 09 77 55 | Ac 09 41 56 | Ac 09 75 57 | Ac 09 18 58 | Ac 09 24 59 | Ac 09 13 60 | Ac 09 66 61 | Ac 09 46 62 | Ac 09 22 63 | Ac 04 00 64 | Ac 05 01 65 | Ac 17 00 66 | Ac 01 00 67 | Ac 5E 02 68 | Ac 17 03 69 | Ac 10 44 70 | -------------------------------------------------------------------------------- /application_examples/st1vafe6ax/FourD position recognition/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple example of 4D position recognition typically used in smartphone devices. The example uses the accelerometer X and Y axes to determine portrait (up or down) and landscape (left or right) orientation. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = N/A 17 | - 10h = Y-axis pointing down (portrait, down) 18 | - 20h = Y-axis pointing up (portrait, up) 19 | - 04h = X-axis pointing down (landscape, right) 20 | - 08h = X-axis pointing up (landscape, left) 21 | 22 | 23 | ## 4 - Interrupts 24 | 25 | The configuration generates an interrupt on INT1 when a change in the orientation is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new orientation. 26 | 27 | ------ 28 | 29 | **More Information: [http://www.st.com](http://st.com/MEMS)** 30 | 31 | **Copyright © 2024 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/st1vafe6ax/FourD position recognition/st1vafe6ax_four_d.ucf: -------------------------------------------------------------------------------- 1 | Ac 10 00 2 | Ac 11 00 3 | Ac 01 80 4 | Ac 04 00 5 | Ac 05 00 6 | Ac 5F 4B 7 | Ac 46 01 8 | Ac 0A 00 9 | Ac 0B 01 10 | Ac 0E 00 11 | Ac 0F 00 12 | Ac 17 40 13 | Ac 02 11 14 | Ac 08 7A 15 | Ac 09 00 16 | Ac 09 00 17 | Ac 09 01 18 | Ac 09 01 19 | Ac 09 00 20 | Ac 09 04 21 | Ac 02 41 22 | Ac 08 00 23 | Ac 09 91 24 | Ac 09 10 25 | Ac 09 16 26 | Ac 09 00 27 | Ac 09 0F 28 | Ac 09 00 29 | Ac 09 66 30 | Ac 09 3A 31 | Ac 09 66 32 | Ac 09 32 33 | Ac 09 3C 34 | Ac 09 00 35 | Ac 09 00 36 | Ac 09 0F 37 | Ac 09 00 38 | Ac 09 EF 39 | Ac 09 33 40 | Ac 09 05 41 | Ac 09 73 42 | Ac 09 99 43 | Ac 09 08 44 | Ac 09 22 45 | Ac 04 00 46 | Ac 05 01 47 | Ac 17 00 48 | Ac 01 00 49 | Ac 5E 02 50 | Ac 17 03 51 | Ac 10 44 52 | -------------------------------------------------------------------------------- /application_examples/st1vafe6ax/Freefall detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *freefall* detection example, used to determine when the device is falling down. The examples uses the accelerometer sensor. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *freefall* is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2024 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/st1vafe6ax/Freefall detection/st1vafe6ax_freefall_detection.ucf: -------------------------------------------------------------------------------- 1 | Ac 10 00 2 | Ac 11 00 3 | Ac 01 80 4 | Ac 04 00 5 | Ac 05 00 6 | Ac 5F 4B 7 | Ac 46 01 8 | Ac 0A 00 9 | Ac 0B 01 10 | Ac 0E 00 11 | Ac 0F 00 12 | Ac 17 40 13 | Ac 02 11 14 | Ac 08 7A 15 | Ac 09 00 16 | Ac 09 00 17 | Ac 09 01 18 | Ac 09 01 19 | Ac 09 00 20 | Ac 09 04 21 | Ac 02 41 22 | Ac 08 00 23 | Ac 09 71 24 | Ac 09 10 25 | Ac 09 1C 26 | Ac 09 00 27 | Ac 09 11 28 | Ac 09 00 29 | Ac 09 CD 30 | Ac 09 34 31 | Ac 09 A8 32 | Ac 09 00 33 | Ac 09 00 34 | Ac 09 00 35 | Ac 09 01 36 | Ac 09 00 37 | Ac 09 00 38 | Ac 09 04 39 | Ac 09 00 40 | Ac 09 F5 41 | Ac 09 77 42 | Ac 09 99 43 | Ac 09 12 44 | Ac 09 66 45 | Ac 09 53 46 | Ac 09 C7 47 | Ac 09 88 48 | Ac 09 99 49 | Ac 09 50 50 | Ac 09 00 51 | Ac 04 00 52 | Ac 05 01 53 | Ac 17 00 54 | Ac 01 00 55 | Ac 5E 02 56 | Ac 17 03 57 | Ac 10 44 58 | -------------------------------------------------------------------------------- /application_examples/st1vafe6ax/Glance detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *glance* and *de-glance* gestures typically used in smartphone devices. The two gestures can be used to turn-on and turn-off the screen automatically. The example uses the accelerometer low-pass filtered data at 1 Hz using the *Machine Learning Core*. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 20h = Glance gesture detected 17 | - 80h = De-glance gesture detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *glance* or a *de-glance* gesture is detected. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2024 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/st1vafe6ax/Jiggle detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *jiggle* gesture (similar to a shake) example for wrist-worn devices. The gesture is detected when the accelerometer Z-axis is pointing up and the user is shaking the device along the Y-axis (accelerometer data low-pass filtered at 1 Hz using the *Machine Learning Core*). 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *jiggle* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2024 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/st1vafe6ax/Lift detection/st1vafe6ax_lift_detection.ucf: -------------------------------------------------------------------------------- 1 | Ac 10 00 2 | Ac 11 00 3 | Ac 01 80 4 | Ac 04 00 5 | Ac 05 00 6 | Ac 5F 4B 7 | Ac 46 01 8 | Ac 0A 00 9 | Ac 0B 01 10 | Ac 0E 00 11 | Ac 0F 00 12 | Ac 17 40 13 | Ac 02 11 14 | Ac 08 7A 15 | Ac 09 00 16 | Ac 09 00 17 | Ac 09 01 18 | Ac 09 01 19 | Ac 09 00 20 | Ac 09 04 21 | Ac 02 41 22 | Ac 08 00 23 | Ac 09 A2 24 | Ac 09 00 25 | Ac 09 26 26 | Ac 09 00 27 | Ac 09 11 28 | Ac 09 00 29 | Ac 09 79 30 | Ac 09 35 31 | Ac 09 83 32 | Ac 09 3B 33 | Ac 09 3C 34 | Ac 09 00 35 | Ac 09 80 36 | Ac 09 00 37 | Ac 09 00 38 | Ac 09 1E 39 | Ac 09 0F 40 | Ac 09 12 41 | Ac 09 66 42 | Ac 09 53 43 | Ac 09 13 44 | Ac 09 77 45 | Ac 09 86 46 | Ac 09 99 47 | Ac 09 12 48 | Ac 09 66 49 | Ac 09 33 50 | Ac 09 A4 51 | Ac 09 13 52 | Ac 09 41 53 | Ac 09 C5 54 | Ac 09 21 55 | Ac 09 23 56 | Ac 09 44 57 | Ac 09 22 58 | Ac 09 44 59 | Ac 09 22 60 | Ac 09 00 61 | Ac 04 00 62 | Ac 05 01 63 | Ac 17 00 64 | Ac 01 00 65 | Ac 5E 02 66 | Ac 17 03 67 | Ac 10 44 68 | -------------------------------------------------------------------------------- /application_examples/st1vafe6ax/Motion-Stationary detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Detect *motion* and *stationary* states of the device. The example uses the accelerometer sensor. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | Any orientation. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | - FSM_OUTS1 register values 16 | - 00h = Stationary state detected 17 | - 01h = Motion state detected 18 | 19 | 20 | ## 4 - Interrupts 21 | 22 | The configuration generates an interrupt on INT1 when a *motion* or a *stationary* event is detected. The *motion* interrupt is generated when the device is in *stationary* state and it is moved. The *stationary* interrupt is generated when the device is in *motion* state and it is still for 5 seconds. Reading the FSM_OUTS1 (4Ch) register allows to determine the new state. 23 | 24 | ------ 25 | 26 | **More Information: [http://www.st.com](http://st.com/MEMS)** 27 | 28 | **Copyright © 2024 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/st1vafe6ax/Motion-Stationary detection/st1vafe6ax_motion_stationary.ucf: -------------------------------------------------------------------------------- 1 | Ac 10 00 2 | Ac 11 00 3 | Ac 01 80 4 | Ac 04 00 5 | Ac 05 00 6 | Ac 5F 4B 7 | Ac 46 01 8 | Ac 0A 00 9 | Ac 0B 01 10 | Ac 0E 00 11 | Ac 0F 00 12 | Ac 17 40 13 | Ac 02 11 14 | Ac 08 7A 15 | Ac 09 00 16 | Ac 09 00 17 | Ac 09 01 18 | Ac 09 01 19 | Ac 09 00 20 | Ac 09 04 21 | Ac 02 41 22 | Ac 08 00 23 | Ac 09 71 24 | Ac 09 00 25 | Ac 09 1A 26 | Ac 09 00 27 | Ac 09 10 28 | Ac 09 00 29 | Ac 09 66 30 | Ac 09 3C 31 | Ac 09 02 32 | Ac 09 00 33 | Ac 09 01 34 | Ac 09 00 35 | Ac 09 00 36 | Ac 09 00 37 | Ac 09 00 38 | Ac 09 96 39 | Ac 09 66 40 | Ac 09 05 41 | Ac 09 77 42 | Ac 09 99 43 | Ac 09 66 44 | Ac 09 33 45 | Ac 09 53 46 | Ac 09 44 47 | Ac 09 88 48 | Ac 09 22 49 | Ac 04 00 50 | Ac 05 01 51 | Ac 17 00 52 | Ac 01 00 53 | Ac 5E 02 54 | Ac 17 03 55 | Ac 10 44 56 | -------------------------------------------------------------------------------- /application_examples/st1vafe6ax/Pick-up detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | This Finite State Machine (FSM) example implements the *pick-up* gesture typically used in mobile devices to signal the event of picking up the device from a table. It is typically used to automatically turn on some services. 4 | 5 | The FSM processes data coming from the accelerometer, configured in low-power mode 3 at 30 Hz. 6 | 7 | Configurable parameters: 8 | 9 | - On table detection threshold, default is 0.9 g 10 | - On table detection time, default is 3 s (90 samples) 11 | - Pick-up detection threshold, default is 1.1 g 12 | 13 | Overall current consumption is 16 µA. 14 | 15 | 16 | ## 2 - Device orientation 17 | 18 | ENU orientation is required. 19 | 20 | 21 | ## 3 - Finite State Machine output values 22 | 23 | None. 24 | 25 | 26 | ## 4 - Interrupts 27 | 28 | The configuration generates an interrupt on INT1 when the *pick-up* gesture is detected. 29 | 30 | ------ 31 | 32 | **More Information: [http://www.st.com](http://st.com/MEMS)** 33 | 34 | **Copyright © 2024 STMicroelectronics** 35 | 36 | -------------------------------------------------------------------------------- /application_examples/st1vafe6ax/Pick-up detection/st1vafe6ax_pick_up.ucf: -------------------------------------------------------------------------------- 1 | Ac 10 00 2 | Ac 11 00 3 | Ac 01 80 4 | Ac 04 00 5 | Ac 05 00 6 | Ac 5F 4B 7 | Ac 46 01 8 | Ac 0A 00 9 | Ac 0B 01 10 | Ac 0E 00 11 | Ac 0F 00 12 | Ac 17 40 13 | Ac 02 11 14 | Ac 08 7A 15 | Ac 09 00 16 | Ac 09 00 17 | Ac 09 01 18 | Ac 09 01 19 | Ac 09 00 20 | Ac 09 04 21 | Ac 02 41 22 | Ac 08 00 23 | Ac 09 91 24 | Ac 09 00 25 | Ac 09 14 26 | Ac 09 00 27 | Ac 09 0E 28 | Ac 09 00 29 | Ac 09 33 30 | Ac 09 3B 31 | Ac 09 66 32 | Ac 09 3C 33 | Ac 09 80 34 | Ac 09 00 35 | Ac 09 00 36 | Ac 09 5A 37 | Ac 09 12 38 | Ac 09 66 39 | Ac 09 73 40 | Ac 09 06 41 | Ac 09 22 42 | Ac 09 00 43 | Ac 04 00 44 | Ac 05 01 45 | Ac 17 00 46 | Ac 01 00 47 | Ac 5E 02 48 | Ac 17 03 49 | Ac 10 44 50 | -------------------------------------------------------------------------------- /application_examples/st1vafe6ax/README.md: -------------------------------------------------------------------------------- 1 | # ST1VAFE6AX 2 | 3 | 6-axis IMU with sensor fusion, AI, vertical analog front-end (vAFE) for biosensing 4 | 5 | For more info, please visit the device page at https://www.st.com/en/mems-and-sensors/st1vafe6ax.html 6 | 7 | 8 | -------------------------------------------------------------------------------- /application_examples/st1vafe6ax/Shake detection/README.md: -------------------------------------------------------------------------------- 1 | ## 1 - Introduction 2 | 3 | Simple *shake* gesture example for smartphone devices. This gesture is detected when the user is shaking the accelerometer along the X-axis. 4 | 5 | The configuration runs at 30 Hz. 6 | 7 | 8 | ## 2 - Device orientation 9 | 10 | ENU orientation is required. 11 | 12 | 13 | ## 3 - Finite State Machine output values 14 | 15 | None. 16 | 17 | 18 | ## 4 - Interrupts 19 | 20 | The configuration generates an interrupt on INT1 when the *shake* gesture is detected. 21 | 22 | ------ 23 | 24 | **More Information: [http://www.st.com](http://st.com/MEMS)** 25 | 26 | **Copyright © 2024 STMicroelectronics** -------------------------------------------------------------------------------- /application_examples/st1vafe6ax/Shake detection/st1vafe6ax_shake.ucf: -------------------------------------------------------------------------------- 1 | Ac 10 00 2 | Ac 11 00 3 | Ac 01 80 4 | Ac 04 00 5 | Ac 05 00 6 | Ac 5F 4B 7 | Ac 46 01 8 | Ac 0A 00 9 | Ac 0B 01 10 | Ac 0E 00 11 | Ac 0F 00 12 | Ac 17 40 13 | Ac 02 11 14 | Ac 08 7A 15 | Ac 09 00 16 | Ac 09 00 17 | Ac 09 01 18 | Ac 09 01 19 | Ac 09 00 20 | Ac 09 04 21 | Ac 02 41 22 | Ac 08 00 23 | Ac 09 51 24 | Ac 09 10 25 | Ac 09 18 26 | Ac 09 00 27 | Ac 09 0D 28 | Ac 09 00 29 | Ac 09 00 30 | Ac 09 3E 31 | Ac 09 08 32 | Ac 09 00 33 | Ac 09 00 34 | Ac 09 09 35 | Ac 09 00 36 | Ac 09 7C 37 | Ac 09 41 38 | Ac 09 5C 39 | Ac 09 12 40 | Ac 09 15 41 | Ac 09 3C 42 | Ac 09 35 43 | Ac 09 22 44 | Ac 09 35 45 | Ac 09 3C 46 | Ac 09 22 47 | Ac 04 00 48 | Ac 05 01 49 | Ac 17 00 50 | Ac 01 00 51 | Ac 5E 02 52 | Ac 17 03 53 | Ac 10 44 54 | -------------------------------------------------------------------------------- /configuration_examples/README.md: -------------------------------------------------------------------------------- 1 | # Configuration examples 2 | 3 | The *configuration_examples* section of the **Finite State Machine** repository contains examples showing how to configure the FSM using different tools provided by ST. 4 | 5 | The purpose of these examples is not the final application (dedicated [application examples](../application_examples/) are provided for final applications). The focus is on the process to configure the FSM, following all the FSM configuration steps. 6 | 7 | ------ 8 | 9 | 10 | 11 | ------ 12 | 13 | **More information: [http://www.st.com](http://st.com/MEMS)** 14 | 15 | **Copyright © 2020 STMicroelectronics** -------------------------------------------------------------------------------- /configuration_examples/example_0_fsm/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_0_fsm/README.md -------------------------------------------------------------------------------- /configuration_examples/example_0_fsm/utils/fig_01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_0_fsm/utils/fig_01.png -------------------------------------------------------------------------------- /configuration_examples/example_0_fsm/utils/fig_02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_0_fsm/utils/fig_02.png -------------------------------------------------------------------------------- /configuration_examples/example_0_fsm/utils/fig_03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_0_fsm/utils/fig_03.png -------------------------------------------------------------------------------- /configuration_examples/example_0_fsm/utils/fig_04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_0_fsm/utils/fig_04.png -------------------------------------------------------------------------------- /configuration_examples/example_0_fsm/utils/fig_05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_0_fsm/utils/fig_05.png -------------------------------------------------------------------------------- /configuration_examples/example_0_fsm/utils/fig_06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_0_fsm/utils/fig_06.png -------------------------------------------------------------------------------- /configuration_examples/example_1_fsm_mlc_filter/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_1_fsm_mlc_filter/README.md -------------------------------------------------------------------------------- /configuration_examples/example_1_fsm_mlc_filter/utils/fig_01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_1_fsm_mlc_filter/utils/fig_01.png -------------------------------------------------------------------------------- /configuration_examples/example_1_fsm_mlc_filter/utils/fig_02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_1_fsm_mlc_filter/utils/fig_02.png -------------------------------------------------------------------------------- /configuration_examples/example_1_fsm_mlc_filter/utils/fig_03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_1_fsm_mlc_filter/utils/fig_03.png -------------------------------------------------------------------------------- /configuration_examples/example_1_fsm_mlc_filter/utils/fig_04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_1_fsm_mlc_filter/utils/fig_04.png -------------------------------------------------------------------------------- /configuration_examples/example_1_fsm_mlc_filter/utils/fig_05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_1_fsm_mlc_filter/utils/fig_05.png -------------------------------------------------------------------------------- /configuration_examples/example_1_fsm_mlc_filter/utils/fig_06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_1_fsm_mlc_filter/utils/fig_06.png -------------------------------------------------------------------------------- /configuration_examples/example_1_fsm_mlc_filter/utils/fig_07.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_1_fsm_mlc_filter/utils/fig_07.png -------------------------------------------------------------------------------- /configuration_examples/example_1_fsm_mlc_filter/utils/fig_08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_1_fsm_mlc_filter/utils/fig_08.png -------------------------------------------------------------------------------- /configuration_examples/example_1_fsm_mlc_filter/utils/fig_09.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_1_fsm_mlc_filter/utils/fig_09.png -------------------------------------------------------------------------------- /configuration_examples/example_1_fsm_mlc_filter/utils/fig_10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_1_fsm_mlc_filter/utils/fig_10.png -------------------------------------------------------------------------------- /configuration_examples/example_2_fsm_mlc_decision_tree/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_2_fsm_mlc_decision_tree/README.md -------------------------------------------------------------------------------- /configuration_examples/example_2_fsm_mlc_decision_tree/utils/fig_01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_2_fsm_mlc_decision_tree/utils/fig_01.png -------------------------------------------------------------------------------- /configuration_examples/example_2_fsm_mlc_decision_tree/utils/fig_02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_2_fsm_mlc_decision_tree/utils/fig_02.png -------------------------------------------------------------------------------- /configuration_examples/example_2_fsm_mlc_decision_tree/utils/fig_03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_2_fsm_mlc_decision_tree/utils/fig_03.png -------------------------------------------------------------------------------- /configuration_examples/example_2_fsm_mlc_decision_tree/utils/fig_04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_2_fsm_mlc_decision_tree/utils/fig_04.png -------------------------------------------------------------------------------- /configuration_examples/example_2_fsm_mlc_decision_tree/utils/fig_05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_2_fsm_mlc_decision_tree/utils/fig_05.png -------------------------------------------------------------------------------- /configuration_examples/example_2_fsm_mlc_decision_tree/utils/fig_06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_2_fsm_mlc_decision_tree/utils/fig_06.png -------------------------------------------------------------------------------- /configuration_examples/example_2_fsm_mlc_decision_tree/utils/fig_07.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_2_fsm_mlc_decision_tree/utils/fig_07.png -------------------------------------------------------------------------------- /configuration_examples/example_2_fsm_mlc_decision_tree/utils/fig_08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_2_fsm_mlc_decision_tree/utils/fig_08.png -------------------------------------------------------------------------------- /configuration_examples/example_2_fsm_mlc_decision_tree/utils/fig_09.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_2_fsm_mlc_decision_tree/utils/fig_09.png -------------------------------------------------------------------------------- /configuration_examples/example_3_fsm_ext_sensor/utils/fig_01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_3_fsm_ext_sensor/utils/fig_01.png -------------------------------------------------------------------------------- /configuration_examples/example_3_fsm_ext_sensor/utils/fig_02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_3_fsm_ext_sensor/utils/fig_02.png -------------------------------------------------------------------------------- /configuration_examples/example_3_fsm_ext_sensor/utils/fig_03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_3_fsm_ext_sensor/utils/fig_03.png -------------------------------------------------------------------------------- /configuration_examples/example_3_fsm_ext_sensor/utils/fig_04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_3_fsm_ext_sensor/utils/fig_04.png -------------------------------------------------------------------------------- /configuration_examples/example_3_fsm_ext_sensor/utils/fig_05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_3_fsm_ext_sensor/utils/fig_05.png -------------------------------------------------------------------------------- /configuration_examples/example_3_fsm_ext_sensor/utils/fig_06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_3_fsm_ext_sensor/utils/fig_06.png -------------------------------------------------------------------------------- /configuration_examples/example_4_fsm_sflp_asc/utils/fig_01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_4_fsm_sflp_asc/utils/fig_01.png -------------------------------------------------------------------------------- /configuration_examples/example_4_fsm_sflp_asc/utils/fig_02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_4_fsm_sflp_asc/utils/fig_02.png -------------------------------------------------------------------------------- /configuration_examples/example_4_fsm_sflp_asc/utils/fig_03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_4_fsm_sflp_asc/utils/fig_03.png -------------------------------------------------------------------------------- /configuration_examples/example_4_fsm_sflp_asc/utils/fig_04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_4_fsm_sflp_asc/utils/fig_04.png -------------------------------------------------------------------------------- /configuration_examples/example_4_fsm_sflp_asc/utils/fig_05.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_4_fsm_sflp_asc/utils/fig_05.png -------------------------------------------------------------------------------- /configuration_examples/example_4_fsm_sflp_asc/utils/fig_06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_4_fsm_sflp_asc/utils/fig_06.png -------------------------------------------------------------------------------- /configuration_examples/example_4_fsm_sflp_asc/utils/fig_07.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/STMicroelectronics/STMems_Finite_State_Machine/5045f77aee239be7ccb21f411f429b00c58ceebb/configuration_examples/example_4_fsm_sflp_asc/utils/fig_07.png --------------------------------------------------------------------------------