2017-10-06 07:09 AM
Hi all,
I am trying to implement the self-test function of the LIS3DSH, but the results I am getting do not agree with the numbers in the device datasheet. Here is my procedure:
1) Set -/+2g range and 400 HZ ODR.
2) Capture 20 samples in normal mode (ie ST2:1 = 00 in CTRL_REG5)
3) Capture 20 samples with positive sign self test enabled (ie ST2:1=01)
4) Compute the average difference between the 2 sets of samples
According to the datasheet the difference should be 140 mg for the X and Y axes and 590 mg for the Z-axes. However, I have run the self-test on 10 different boards with an LIS3DSH and for X and Y I get values between 175 and 220, while for the Z axis values between 500 and 620.
The results look pretty consistent when the test is repeated on the same device, but there is quite a big variability from one device to the other. The datasheet does not specify any error margins for deciding whether the test has 'passed' or 'failed'. That makes it difficult from the results that I am getting to decide if a device is not working properly.
I wonder if the output I am getting is expected or there is something wrong with the way I carry out the test.
#lis3dshSolved! Go to Solution.
2017-10-13 09:11 AM
Hello Stathis,
unfortunately I didn't get any exact value, but saying: T
he self-test mechanism is intended to be used to check if the movable part of the sensor is able to move. Once the self-test is enabled, every sensor output variation (higher than few LSB) confirms the goodness of the device.
2017-10-06 07:41 AM
The datasheet specifies only the typical values. Your values are quite close to the typical ones and your sensor are OK.
2017-10-06 10:19 AM
Thank you for your reply.
How far out from the typical values in the datasheet should we be before rejecting a sensor?
For the X and Y axes especially I get values between 175 and 220 which do not look very close to the typical value of 140 mentioned in the datasheet.
We were hoping to integrate this self-test in our production testing software to try to detect malfunctioning sensors.
2017-10-10 03:09 AM
I'm trying to get some limits for the self-test from our sensor specialist. I hope I will come back to you soon.
2017-10-10 03:30 AM
Thank you very much.
That would be really useful.
2017-10-13 09:11 AM
Hello Stathis,
unfortunately I didn't get any exact value, but saying: T
he self-test mechanism is intended to be used to check if the movable part of the sensor is able to move. Once the self-test is enabled, every sensor output variation (higher than few LSB) confirms the goodness of the device.
2017-10-13 09:20 AM
Hi Miroslav,
That is useful enough for me.
It seems to mean that the difference between normal and self test mode should only be compared against a low threshold. If it is above the threshold the sensor works OK.
That threshold should probably be set somewhat lower than the typical values in the datasheet.
2018-01-12 05:28 AM
Hi Miroslav,
This is Aritz from Reactec. I work with Stathis, the guy that originally raised this ticket.
We are including LIS3DSH Self-Test function into our Manufacturing Test process and I would need to set a Threshold to discard faulty units.
According to your previous response, any value higher than few LSB should be enough. We are executing LIS3DSH Self-Test on +/-2g range, a few LSB would correspond to tenths of a mg.
That value seems quite uncommon/low to me.
Could you please ask again to your sensor specialist whether 70 mg for X-Y axis and 295 for Z axis (half of the values mentioned in Datasheet) would be safe enough to use as a threshold to discard faulty sensors?
Many thanks in advance.
Aritz M.
2018-01-16 06:14 AM
Hi Aritz,
I asked our sensor specialists, I'm waiting for a response.
2018-01-16 07:01 AM
So the replay from sensor specialist is to use 70 mg as min self-test limit for all (X, Y, Z) axis.