cancel
Showing results for 
Search instead for 
Did you mean: 

L3G4200D random spikes

wolfgang2
Associate II
Posted on April 11, 2014 at 14:58

Hi all,

i'm currently working on an inclination sensor using a.m. gyroscope. I encounter random spikes in the digital values - @ still device.

The spikes generally are either +255 above signal or -255 below average signal.

It basically happens on all 3 axis. Especially when the average signal is around 0!

In my opinion - there is a problem in the chip like NOT LOCKING the Hi byte when reading the Lo Byte of a particular 16 bit value to keep Hi and Lo Byte consistent. So i'm ending up reading the Lo Byte of the ''old'' value and the Hi Byte of the ''new'' value.

This might look like: 

old value: 0xFFFF (-1)

new value: 0x0002 (+2)

combined wrong Reading: 00FF (+255) - making a difference of about 255 as stated above

The data sheet won't help, as it doesn't say anything about a locking mechanism or a special order in reading Hi and lo Bytes - or a dependency on status bits.

I tried many different setups - like single and multi byte reading - Hi byte first, Lo byte first....

The official ST drivers are Lo byte first, and the increment mode when reading multiple bytes reads Lo byte and then Hi byte too.

Above behaviour is to be expected for all values neighbouring a 100hex border, but of course is most noticable in the no rotation condition.

I searched the web for similar problems and found a few with exactly the same behaviour.

I'll try to get a direct access to an ST product specialist and will update this post once there is news.

Any ideas or experiences?

Greetings WOLF
3 REPLIES 3
leosavio
Associate
Posted on May 15, 2014 at 18:38

I have the same problem with A3G4250D gyroscope.

The datasheet is terrible. I'm studying another one with much more doc on the web.

wislatiiskander
Associate
Posted on July 14, 2014 at 19:51

hi i got the same problem about receaving a constant 255 value ,,,,,,if u got a solution please help me

ericw
Associate
Posted on November 06, 2015 at 13:50

Setting the ''BDU'' bit (Block Data Update) in CTRL_REG4 should stop this occuring.