on 2022-02-28 10:50 PM
Table of the contents
The SensorTile.Box can fit the needs of this application, since its form factor enables the positioning on the asset to be tracked, and the data can be stored locally on the onboard SD card.
This example combines Machine Learning Core (MLC) and Finite State Machine (FSM) capabilities to implement a Smart Asset Tracking algorithm able to detect and track the various states of a package (Stationary - Upright, Stationary - Not upright, In motion, Shaken) and detect some possible events (Impact, Free-fall).Both the MLC and FSM are configured to process the accelerometer data at 26 Hz in low-power mode:
The MLC processes the accelerometer data in order to detect the package state by using three features (peak-to-peak and mean on the accelerometer norm, mean on the accelerometer Z-axis), computed every 13 samples (corresponding to 0.5 seconds). One decision tree with three nodes has been configured to detect the different classes. A meta-classifier has been set to reduce false positives.
The output of the MLC can be read from the MLC0_SRC (70h) register:
The MLC also applies a high-pass filter on the accelerometer data which is used by the FSM. The configuration generates an interrupt (pulsed and active high) on the INT1 pin every time the register MLC0_SRC (70h) is updated with a new value (when the state detected by the MLC changes). The duration of the interrupt pulse is 38.5 ms in this configuration.
The FSMs process both the raw and filtered accelerometer data in order to detect the following states:
In this example, the threshold for impact detection is set to 0.5 g, and the angle for upright is set to 26°. The configuration generates an interrupt (pulsed and active high) on the INT2 pin when either a free-fall or an impact event is detected by the FSM. The free-fall interrupt remains active as long as the package is airborne. The FSM_STATUS_A (13h) register allows determining which FSM has generated the interrupt in order to distinguish between impact and free-fall events.
The overall current consumption is about 22 µA.
*credits to: https://qeexo.com/video/
Greetings to all!
I'm currently working with NUCLEO-F429ZI + IKS01A3 and I can't seem to connect them to see the data in the Unicleo-GUI.
I do everything as in the ST video (the 476 controller is used there) I copy the bin file to the folder of my 429 controller, but the Uncleo-GUI does not see my board. What am I doing wrong ? How can I build IKS01A3 support for my controller and view the data through the Unicleo-GUI.
Same problem with IKS4A1 unicleo-GUI does not connect.
Hello @MRaff.1,
I'm not sure what is you HW configuration except you are using X-NUCLEO-IKS4A1. You need to program your STM32 NUCLEO board with DatalogExtended firmware for particular STM32. The DatalogExtended is available in X-CUBE-MEMS1 package.
Thank you Miroslav, now I can connect, I had to set the Uart speed at 961600 as suggested by Federica Bossi despite the IKS4A1 "Getting started guide", and the CubeMX+X-CUBE_MEMS affirms to set the UART at 115200.
It is good that you make it functional. Indeed 921600 baud rate is need for communication with Unicleo-GUI.
Could you please send me a link where you have find the information about 115200? Thank you.
Hello Miroslav, I followed the instructions provided on the document "Getting started with the STMicroelectronics X-CUBE-MEMS1 software package for STM32MX". It is inside the directory \en.x-cube-mems1\Documentation. At page 53 and 60 it is said to set the UART at 115200.
On the contrary I have not found a document in which it said to set 921600, maybe I am missing some documentation. In particular I am not able to use the IKS4A1 compass, the unicleo-gui highlight the sensor on a further expansion board I don't have.
This item has been closed, please refer to https://community.st.com/t5/mems-sensors/iks4a1-ecompass-application-with-unicleo-gui/m-p/634070#M22461 if you want to see the solution.