We at my company, has a very strange issue regarding til MMA8451. We are experincing that our accelerometers data can be suddenly wrong over time.

We have approximately 250 devices out, running in the field, and we have about 10 devices which got this problem. What happens is that the sensor data:

  • Suddenly has a completely wrong offset (out of the min/max values, that the MMA should even be capable of).
  • Or has it's z-axis locked in a "fixed" value or fluctuating.

We see that a mechanical bump of the PCB/sensor can make it suddenly work again. That makes us think that the MMA chip has been damaged.

If we take a brand new MMA and solder onto a PCB which had the problem ealier, no problems exists. So it's happening over time. And when it has happend, it can recover or come back to normal again.

We do of course have a lot of software, checking that all communication is alright on the I2C etc. We interface with a STM32 microcontroller. When the problem occurs, all power offs, resetting the chip etc, has no influence of the wrong data.

Here I have some visualizations of how the data looks. First an all normal functioning MMA measurement: (x-axis = red, y-axis = green and z-axis = blue). All measurement are done with the device fixed horizontal in the z direction, and then turned around the z-axis. Working MMA measurement

The x axis of this graph is samples (100 hz sample rate). The y axis is the raw sensor value.

The following pictures shows malfunctioning MMA measurements: Malfunctioning 1

And another: Malfunctioning 2

As you see, the sensor works in some sense, as the x and y axis changes. But has an unrealistic offset. If we hit the device mechanically, the axis happens to be normal afterwards.

The z-axis can act like this, just fluctuating, or it can be locked in either 8192 (max) or -8191 (min).

We have done various ESD tests to debunk that as a reason for the malfunctioning devices. But that do not seems to be the problem.

We hope that NXP or some of you people, have some clever ideas about this issue, or have heard about this before?

NB. Same question is posted on the NXP closed forum without answers yet.


We have talked to NXP. They had issues regarding the MMA8451 ealier. Back in 2012 they implemented more quality testing at their factories to help with the issue of a "sticky z-axis".

We have checked our components, which are of newer dates (2016 / 2017). But we are still convinced that we see issues related to this.

NXP also says that this can happen if the forces are too big on the accelerometer.

We are going to change the accelerometer on our product.

Thanks for your suggestions.


There are two basic possibilities- that the chip is failing within its normal operation range, or that your application is exceeding some limit so damage is occurring.

In the first case, I think the best option is to talk to NXP. But, I think it is much more likely that the chips are being abused in some manner.

If the latter, then broadly there are electrical limits (including ESD), temperature limits and mechanical limits. Accelerometers are inherently sensitive to shock at some level or another. Maybe try to break samples mechanically. Perhaps your users are doing something you did not anticipate- users are notorious for finding innovative ways to break a product.

I somewhat doubt the external solder connections could cause the observed symptoms but it's worth eliminating that as a possibility.

The change with banging may well point to something mechanical related but does not completely rule out electrical damage, depending on how they measure displacement and apply force feedback to the test masses.

If you are running wires directly from a external connector or cable to the chip without appropriate protection then ESD or other electrical-related causes (eg. EMI from other devices or lightning) should be examined closely.

Under some conditions temperature related partial or total failures can occur as a side effect of ESD or EMI triggering latch up.


I'd suggest you have a combination of solder flow and physical board mount issues.

These devices are very sensitive to any stress, and the fact that you can bump the device and have it come good again seems to support that. There is a warning in the datasheet:

enter image description here

It is always wise to surface mount a device such as this on a relieved island on your PCB, or at least mount on a corner where the PCB holding the device is not subject to stress from multiple screws or PCB mounts.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.