Accelerometer not reporting gravity accurately

Hi there,

upon having some problems with reliably detecting resting phases using the accelerometer readings from MetaMotion R, we discovered that they do not report a consistent reading for the gravity vector depending on their current orientation.

We were able to reproduce this (using 2 different sensors) by placing them on a flat surface, rotating them from face to face. We collected data using the MetaWear app from the Android Play Store.

Based on these readings, we plotted the norm of the acceleration vector (sqrt(x*x+y*y*+z*z)), that should read 1 on resting phases, or at least a consistent value. 

Instead we got the following plots:


You can see, that the baseline changes from face to face, with the most prominent deviations happening on the side with the usb port and the side opposite to it.

Is this expected behavior with the sensor on the board, or some kind of firmware/software problem?


  • Can you post the raw xyz data as well?
  • edited February 2017
    Sure, you can find them here and here
  • Just a fyi, I haven't forgotten about this thread.  Other tasks have been occupying the time.
  • Did a few tests, sample #1 and #2, and nothing looks out of the ordinary compared with your data and what I would expect.  The IMU itself is not 100% accurate so you should consider "at rest" to be 1g +/- X% where X is best suited for your application.
This discussion has been closed.