Drift in the sensor fusion data streamed


We are using the MetaMotionR sensors to sample body movements. The data that we are collecting is the sensor fusion with linear-acceleration with IMUPlus settings at a rate of 80Hz.

We are using the sensors to get specific data from the MetaWear app to identify patterns of movements and then we integrate the streaming of data within our app to show the information that we need from the patterns identified.

We have noticed that if we use certain sensors (we have 10 boards) for the same movements, sometimes the different axis "drift." At the beginning of testing it was because we did not wait for what we call "calibration," 5 seconds of not moving in the beginning position to bring all the axis (x, y, and z) to zero, however we are now getting this problem with the different trackers from no apparent reason that we can identify.

I am attaching the data logged with the MetaWear app from two different trackers at the same time, attached the same way, and not moving during testing doing a simple movement. One of them has clearly the axis drifting.

What can we do to stabilise the data while doing the movement?

Best regards,


  • What kind of movements are you doing in your tests?

    Do you get cleaner data if you use NDoF mode instead?

    You'll also want to calibrate the accelerometer and magnetometer (if using NDoF). See the YouTube video linked in the documentation.

  • Hello Eric,

    Thank you for your reply.

    To answer yours questions, we are doing all kind of movements done in a gym, such as functional training, free weights, and machines.

    This means that the NDoF mode get us more "troubled" data. This is the reason why we decided on the IMUPlus mode, without the magnetometer, that data is cleaner.

    I understand that the video from Bosch is only for the NDoF mode, if we were to apply it anyway how can we do it to the MetaMotionR sensor? Can we do it by bluetooth or do we have to connect it by cable to the program that they are using?

    Also, are you sure that the calibration will prevent what happens in the excel "#6.TrackerAdria?" Are there any other steps that we can take to ensure that it will not happen or at least get notified when it does?

    Best regards,

  • The Bosch video is about calibrating the IMUs for the algorithm; it does not matter what the mode is. You calibrate them by doign the motions shown in the video.

    I never stated that it will. All I said is the IMUs should be calibrated, which in turn should correct for things like drift.

  • Hello Eric,

    Just to make sure that I understand correctly, I just need to connect the tracker to the MetaWear app, stream the data with sensor fusion in IMUPlus mode and linear acceleration, and do the movements in the video that will calibrate the sensor.
    I do not need to download the Bosch program neither connect the sensor via cable to a computer?

    I understand what you are saying about the calibration which makes me ask my original question: Are there any other steps that we can take to ensure that it will not happen or at least get notified when it does?

    Thank you in advance.

    Best regards,

  • Start the sensor fusion algorithm, do the movements in the video, check the calibration state.

    No and no.

  • Hello Eric,

    How can I check the calibration state more accurately than redoing the test that I have shared at the beginning of this topic?

    Thank you!

    Best regards,

  • This is explained in documentation I linked to in my first post.

This discussion has been closed.