Self test Gyro and Accel is fail
Closed this issue · 6 comments
Hi, Kris.
I bought IC MPU9250 30 pieces,
I soldered them into the board,
Оnly 5 chips passed the self test. Mainly gyroscope test is failed, but accel test sometimes is fail too.
Result of test:
1.
Compass = 0x71 // whoami
Accel test: 2.113, -5.867, 6.430 // x, y, z respectively
Gyro test: 35.538, -1.239, -3.729 // x, y, z respectively
2.
Compass = 0x71
Accel test: 3.196, -1.056, 4.287
Gyro test: 54.333, 7.460, 0.413
3.
Compass = 0x71
Accel test: 10.754, -1.104, 0.790
Gyro test: 46.511, 1.630, -2.275
4.
Compass = 0x71
Accel test: -90.022, -92.128, -90.965
Gyro test: 64.147, 38.558, -11.374
5.
Compass = 0x71
Accel test: 16.004, 52.897, 63.220
Gyro test: 912.197, 17.676, -96.470
6.
Compass = 0x71
Accel test: 9.040, 3.397, -1.560
Gyro test: 85.267, 9.598, -99.190
Soldering temperature did not exceed 270 degrees Celsius.
My init algorithm is:
` resetMPU9250(); // Reset registers to default in preparation for device calibration
Delay_us(20000);
MPU9250SelfTest(selfTestResult);
printf("Accel test: %.3f, %.3f, %.3f\r\n", selfTestResult[0], selfTestResult[1], selfTestResult[2]);
printf("Gyro test: %.3f, %.3f, %.3f\r\n", selfTestResult[3], selfTestResult[4], selfTestResult[5]);
Delay_us(20000);
calibrateMPU9250(NULL, NULL);
Delay_us(3000);
initMPU9250();
Delay_us(20000);
res = initAK8963(magCalibration);`
What is the problem, any considering?
Thank you for your answer.
My selftest function was copyed from this project:
MPU9250/Dual_MPU9250/MPU9250.cpp
Line 463 in 72038b0
I worry about the self test results because this have direct correlation with bechaviour of MPU9250.
If gyroscope test is fail i have slow change yaw at fast rotate of device.
if accelerometer test is fail then i have errors yaw at tilt of device.
this is my error.
that is selftest function what i use.
MPU9250/Dual_MPU9250/MPU9250.cpp
Line 610 in 72038b0
Thank, Kris.
This is bad ICs,
I think my issue can be close.