# LSM6DS33 => problem with self test

Question asked by Maciek Zawistowski on Nov 13, 2017
Latest reply on Nov 14, 2017 by Petr S

Hello,
I recently bought two Pololu IMU03a systems, and both of them gives me negative self test (both accel and gyro). To communication I use I2c protocol.  During the test the device is stationary

Calibration:

Rej. 0x10h => Value: 0x30h;

Rej. 0x11h => Value: 0x5Ch;

Rej. 0x12h => Value: 0x44h;

Rej. 0x13h => Value: 0x00h;

Rej. 0x14h => Value: 0x00h;

Rej. 0x15h => Value: 0x00h;

Rej. 0x16h => Value: 0x00h;

Rej. 0x17h => Value: 0x00h;

Rej. 0x18h => Value: 0x38h;

Rej. 0x19h => Value: 0x38h;

After calibration i wait 200ms for stable output, then i erase first five values (by reading registers from 0x22h to 0x2Dh).

Then I read these five registers, I combine them (0x22h with 0x23h ...) and average them in each axis (OUT_NOST).

Then I write 0x01h into registry 0x14h to enable self-test, wait for about 200ms, and discarded next five values (from registers from 0x22h to 0x2Dh).

Then I read five times values for each axis (OUT_ST), calculate average those values, and find min and max value for each axis.

For each axis I make a compare as below:

abs(min_ST_x)<=abs(OUTX_ST - OUTX_NOSTD)<=abs(max_ST_x)

Values I recive:

XGyro without self test [8, 14, 6, 9, 7], with self test [ 2994, 4491, 4499, 4492, 4494]

YGyro without self test [-66, -74, -66, -62, -73], with self test [ 2649, 4020, 4020, 4014, 4015]

ZGyro without self test [-1, -1-1, -1, -1], with self test [ 3207, 4848, 4843, 4845, 4845]

XAkcel without self test [575, 505, 455, 502, 564], with self test [ 8114, 7962, 8036, 8056, 8098]

YAkcel without self test [434, 445, 529, 480, 449], with self test [ 9674, 9734, 9681, 9732, 9668]

ZAkcel without self test [ -16131, -16276, -16273, -16260, -16154], with self test [ -10374, -10543, -10510, -10446, -10412]

Am I doing something wrong, or should I return those IMU's ??

Thanks for any answer or clue