AnsweredAssumed Answered

ADXL372 weird Y and Z initial readings

Question asked by dla1996 on Mar 27, 2018
Latest reply on Mar 28, 2018 by jwang

Hi I am getting weird readings from my ADXL372 evaluation board.

I am using it in I2C.

I initialize my board by reseting it first and then perform these I2C communications:
In power control register I send 0x0F to Enable I2C highspeed, Low Pass, High pass and full bandwidth measurement mode.

In the High-pass filter settings register I send 0x01 to enable the high pass filter corner 1.

In the Measurement control register I send 0x44 to enable AUTOSLEEP and LOW_NOISE.

 

When I am reading the X, Y, Z registers with the board laying flat I get values like these:

All readings were taken 5 seconds apart so there are some variations. I tried to keep them as steady as possible as I don't have an actual lab to test it.

FLAT facing up:

X: 00 E0    Y: FF 50   Z: FE 00

X: 00 D0    Y: FF 40   Z: FE 60

X: 00 50     Y: FF 90   Z: FE 30

 

X = 1G: as close as I can

X: 01 70    Y: FF 60   Z: FD 40

X: 01 50    Y: FF 30   Z: FD 70

X: 01 A0    Y: FF 50   Z: FD 80

 

X = -1G:

X: FF C0   Y: FF B0   Z: FD A0

X: 00 20    Y: FF 50   Z: FD 60

X: 00 20    Y: FF 40   Z: FD 50

 

Y = 1G:

X: 00 B0    Y: 00 10   Z: FD D0

X: 00 B0    Y: 00 30   Z: FD B0

X: 00 D0    Y: FF D0  Z: FD 90

 

Y = -1G:

X: 00 D0   Y: FE B0   Z: FD 70

X: 00 B0    Y: FF 10   Z: FD 70

X: 00 E0    Y: FE A0   Z: FD 70

 

I thought my problem was that they were in twos complement so I passed my data into a function to perform twos complement if the highest bit was 1 and then I get these values which, hindsight doesn't seem like a good thing to do to check if my data is correct:

FLAT facing up:

X: 00 09    Y: 00 0A   Z: 00 1E

X: 00 0C    Y: 00 0A   Z: 00 1D

X: 00 0B     Y: 00 0E   Z: 00 21

 

X = 1G: as close as I can

X: 00 15    Y: 00 0B   Z: 00 27

X: 00 15    Y: 00 09   Z: 00 29

X: 00 14     Y: 00 09   Z: 00 29

 

X = -1G:

X: 00 01    Y: 00 08   Z: 00 29

X: 00 01    Y: 00 0A   Z: 00 26

X: 00 05     Y: 00 0A   Z: 00 2B

 

Y = 1G:

X: 00 0E    Y: 00 03   Z: 00 27

X: 00 0D    Y: 00 05   Z: 00 25

X: 00 0D    Y: 00 01   Z: 00 25

 

Y = -1G:

X: 00 09    Y: 00 16   Z: 00 2B

X: 00 0B    Y: 00 11   Z: 00 29

X: 00 0B    Y: 00 16   Z: 00 26

 

I don't know why my Y and Z Data start out at negative values even though the board is on a flat surface. Also, does my data look correct? 

Outcomes