cancel
Showing results for 
Search instead for 
Did you mean: 

ST tile box pro heading drift issue

DavidThomas
Associate III

Hi all,

I am using ST tile box pro and logging IMU orientation data for my testI did place that module in a robotic arm and then calibrate the accel sensorI observed 20 degree drift in the  heading value  after the calibration .

Before calibration almost 0. I did ensure the origin. Kindly explain what's happening after the calibration. Thank you.

1 ACCEPTED SOLUTION

Accepted Solutions
Miroslav BATEK
ST Employee

Hello @DavidThomas,

Recommended sampling rate for MotionFX is 100Hz.

Atime represents weighting on Kalman filter’s measurement noise matrix, increasing this will reduce the trust on the accelerometer sensor measurements.

Atime = 100 was just an example, you can try different values to fine tune the algorithm for your use case.

View solution in original post

12 REPLIES 12
Federica Bossi
ST Employee

Hi @DavidThomas ,

Welcome to ST Community!

That sounds strange. Which is the firmware installed? Are you using the entry/expert mode?

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

Hi @Federica Bossi I am using algo builder to generate the bin file.

Miroslav BATEK
ST Employee

Hello @DavidThomas,

Would you please share with me the AlgoBuilder project file and datalog with sensor data (accelerometer, gyroscope and magnetometer) so I can analyze the issue?

Hi @Miroslav BATEK ,

I have added data log for your reference. That data stored into the SD card with 100 Hz rate. Sample data also not logged in 100Hz. Thank you

DavidThomas_0-1705079674088.pngDavidThomas_1-1705079839648.png

 

Miroslav BATEK
ST Employee

Hello @DavidThomas,

I have analyzed your data and did a few trials. The drift in yaw (heading) can be solved by increasing the ATime knob. You can increase it significantly up to couple of hundreds. Increasing this will reduce the weight on the accelerometer measurements.

I'm aware about timing inconsistency when logging to SD card, we are working on that but it will take use some time to fix it.

Hello, @Miroslav BATEK  Thank you so much for your analyze. Kindly let me know, How to change  ATime knob in algo builder?

Miroslav BATEK
ST Employee

You can modify the AlgoBuilder firmware template in your AlgoBuilder installation folder. Usually it is in c:\Program Files (x86)\STMicroelectronics\AlgoBuilder\ProjectTemplate\Project\Src\. There is MotionFX_6X_Init(void) function in ab_sensor_hub.c file. Here you ca modify the knobs i.e. add line ipKnobs->ATime = 100;. You can play with the settings.

After firmware modification you have click on Firmware->Re-Initialize Firmware to apply the changes in your project folder and then build the project.

Hi @Miroslav BATEK,  Thank you so much for your clarification. I have added ipKnobs->ATime = 100 , then collected the data. I have collected the data two times with the same movement. One data doesn't have any drift in the heading, but another log has 18 degree drift. How to get data without drift constantly?

What's happening in sensor input and  MotionFx algo , when I am changing the ATime value?

Will it affect the configured 100Hz sensor ODR and MotionFx ODR 100Hz ?

Should I change any other parameter's value ?

Hi @Miroslav BATEK , I hope you have seen my query. Could you clarify my doubts?