What is the recommended approach to  sensitivity calibration of the Z-axis?

In our application we consider that the device holding the sensor may change orientation and we discount gravity from our acceleration measurements to enable us to use an activity threshold of less that 1g, and for this reason we do a modified offset calibration often during the normal operation of the application. Our offset calibration includes discounting gravity.

We are calibrating ADXL343 for acceleration measurements. When stimulating ADXL343 in the direction of the Z-axis together with a reference measurement of the acceleration, we find the sensitivity, i.e. the value that according to the data sheet is typically 256 LSB/g in full resolution, but may vary between individual ADXL343 parts. We store this calibration sensitivity value in our application to present an accurate acceleration measurement. For our calibration experiments we use an acceleration rigg that produces 7-9g.

In the Z-axis we see that the sensitivity is of a certain value in the positive direction and another in the negative direction. For us this means that good calibration in the positive direction leads to erroneous acceleration measurements in the negative direction. What is the recommended approach to  sensitivity calibration of the Z-axis?

Should we use the average? Z_calibration_sensitivity = (Z_sensitivity_positive + Z_sensitivity_negative) / 2

Should we account for 0g offset of the Z axis? Z_calibration_sensitivity = Z_sensitiivty_positive adjusted for Z_0g

Should we treat positive and negative direction  separately? This would mean to use Z_sensitivity_positive for positive acceleration samples and Z_sensitivity_negative for negative acceleration samples.

Any other approach that we are yet to consider?

Best regards

Urban Ingelson

• Thank you for posting your question in this forum.

Have you tried this on the x and y axes, as well?

If so, have you observed different results?

In general, our accelerometers do not typically have different scale factors, in the positive and negative direction, but please allow me to tag a colleague, to ask for validation of the expectation.

- Any thoughts on this? I am not as familiar with the ADXL343 as you are.  Thank you!

Generally speaking, we have observed bi-directional calibration of accelerometers, which enables observation of both scale and offset.

If we were using gravity, as our stimulus, the formulas would look like this:

Scale = (A_+1g - A_-1g) / 2g

Offset = (A_+1g + A_-1g) / 2

In your case, it would look like this

Scale = (A_+8g - A_-8g) / 16g

Offset = (A_+1g + A_-1g) / 2

I hope that this helps.

We have since posting understood that we might be able to use AC-mode to discount gravity from the activity threshold and because of this we could do offset calibration according to the recommendations in the data sheet.

We have seen differences in sensitivity on all axes but predominantly on the Z-axis. However, with proper offset calibration, the issue might be tolerable.

Your advice regarding updated formulas for calibrating with other accelerations than gravity is good. Since it is difficult to get the exact same acceleration repeatedly, we do like this

Scale = (A_measured_positive / A_reference_positive - A_measured_negative / A_reference_negative) / 2

Where A_measured_positive and A_measured_negative are the measurements with the device under calibration, and A_reference_positive and A_reference_negative are measurements from an already calibrated device.

• Thank you for sharing this update with us! I am glad that the insights were helpful.  Since you said that you may experience some asymmetry in your acceleration (positive vs negative), please note that 1/2 of the difference will show up as an error, in the offset formulas, but will not impact the sensitivity.

• With respect to the dissimilarity in scale, I am wondering if we are seeing a combination of nonlinear error and mechanical offset, which I would imagine, could have some impact on this. If you have a chance, it might be interesting to quantify the difference on part part.  Can't promise anything, but we might be able to run this by a technologist to see if the theory holds water.