mma8652fc self test

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

mma8652fc self test

1,401 次查看
mfrech
Contributor II

We having some issues using the self test of the mma8652. During our production we we have three consecutive steps, where we perform the self test of the mma8652 and in all three steps the self test sometimes fails.

Self test is performed the following way:

  1. Read XYZ in 8-bit mode without ST bit set
  2. Read XYZ in 8-bit mode with ST bit set
  3. if deltaZ = abs(z2 - z1) > 24 ==> SUCCESS, otherwise FAILED

according to datasheet on the Z axis a delta of 48 LSB (782 LSB for 12bit mode) should be detected. For many devices this test succeeded.

But we also have some devices, that fail in one of the 3 production steps. Even if they passed the first production step, they fail in the second one. Or sometimes they pass the 1st and 2nd step and fail in the final 3rd step.

I just checked 3 devices, that failed in the first step and they show a change in Z Axis of ~9 LSB, the other axis show almost no change. Although, all three axes show correct absolute values.

Could you give me any feedback on the self-test?

Am I doing something wrong?

Will these devices still work as intended?

Do we have to adopt the limit for the deltaZ?

Regards,

Manuel

标签 (1)
标记 (2)
0 项奖励
4 回复数

927 次查看
mfrech
Contributor II

Alright, I know read 12bit values and check the Z axis results

if((Z_st - Z_no_st) > 50)

     return true;

else

     return false;

Thanks for your help.

Maybe its worth adding the 50 LSB limit for the self test change in Z axis to the datasheet.

Regards,

Manuel

0 项奖励

927 次查看
mfrech
Contributor II

Okay, could not find that 50 LSB in the datasheet. So the 50 LSB in 12bit should then be 3 LSB in 8 bit mode.

I think I will also change the resolution during self test to 12bit...

In other posts regarding other accelerometers I read, that change in all axes should be considered. Is that correct?

So deltaX + deltaY + deltaZ > 50 (in 12bit mode) ==> test passed?

0 项奖励

927 次查看
TomasVaverka
NXP TechSupport
NXP TechSupport

Hi Manuel,

Deflections in the X and Y axis are just artifacts of the self-test control and can be ignored.

Regards,

Tomas

927 次查看
TomasVaverka
NXP TechSupport
NXP TechSupport

Hi Manuel,

The way you are performing the self-test is correct. The reason why the Z axis self-test output does not correspond to the typical value specified in the datasheet is that the self-test is not factory trimmed. The internal min spec is 50 LSBs at ±2g and 12-bit mode. So the change of ~9 LSB in 8-bit mode means a successful self-test.

Regards,

Tomas

PS: If my answer helps to solve your question, please mark it as "Correct". Thank you.