H3LIS331DL Accelerometer Inaccurate Values

Hi guys,

I’m not particularly experienced with arduino and pretty new to the world of accelerometers so please bear with me and let me know if I’ve left something out/it doesn’t make sense.

I’m currently using a H3LIS331DL accelerometer from sparkfun with an Arduino 3.3V Pro Mini connected up via I2C, to measure a weighted mass dropping from a height. https://learn.sparkfun.com/tutorials/h3 … okup-guide

I’ve read elsewhere that an issue can arise with the accelerometer data being output in 12 bit so it has to be shifted to a 16 bit output.

I’m using the Sparkfun LIS331 library and as far as I can tell they take care of this in the readAxes function within that library.

https://github.com/sparkfun/SparkFun_LI … n_LIS331.h

My issue is when my accelerometer is lying still, the z-axis values are jumping from ~20 to ~50 in the 100g and 200g range and going even noisier at the 400g range all of these at 100/400/1000Hz data rates.

I was wondering if anyone had any experience with the LIS331 accelerometers and could tell me if I’m doing something wrong or there is something I’m missing. My only idea is that it could be something to do with the library but I feel like that’s unlikely?

Thanks

All accelerometers produce noise. The question is: is the noise you are seeing significant? What “g” values do those numbers represent?

It is very difficult to properly test a 100 g to 400 g accelerometer, so if the noise values do not exceed the maximum given in the data sheet, then the answer is no.

Check the sensitivity, as described in the data sheet. Best to use the 100 g range for that.

Note: to convert the stated noise figure in mg/sqrt(Hz) you have to know the bandwidth, which depends on what you have set as the output data rate.