Skip to main content
Visitor II
February 9, 2021
Question

H3LIS331DL: Unexpected High level detected on negative very low magnitude acceleration

  • February 9, 2021
  • 2 replies
  • 1257 views

My configuration is:

  • FS: 200g,
  • Threshold interrupt activated for hieZ,hieY,hieZ,
  • Threshold value 1 (ie about 1,6G at FS 200G)
  • High pass filter set on OUTPUT and INT1

Then I loop, reading int1 src register and 3 axes acceleration

they varie on each channel from -0,5 to 0,5 G (assuming it's "noise" at FS 200G with a static device)

But each time the acceleration on a channel is negative each time the IA bit in INT1 SRC is set with the corresponding X,Y or Z High bit set ?

Here is a typical exemple:

RAW accs value read are: 48,48,-48 (about 293 mG in absolute value for each channel)

and int1 src says: XL, YL, ZH and of course IA

Why ? The values are the sames in absolute they should all say either all High or all Low (here it should be low)

The High bit and IA bits should be set ONLY when value on a channel is either > 1,6 or <-1,6 G. Isn't it ?

    This topic has been closed for replies.

    2 replies

    ST Employee
    February 10, 2021

    Hi @PGoud​ ,

    the configurations you described looks ok

    I'm wondering if the comparator is wrongly considering the negative sign as a high positive value... but that's would be very strange.

    I suppose that the same behavior occurs on the 3 axis...

    could you please increase the threshold to e.g. 0x02 and see what happens?

    -Eleon

    PGoudAuthor
    Visitor II
    February 10, 2021

    Hello,

    Yes I saw the same behavior on other axes with Threshold 0x01.

    Increasing the threshold to 0x02, seems to make the things works ... ie, the INT1 interrutp does not appear unexpectively...

    That's very strange because my raw values since the filter is on do not overpass 70 / - 70

    Pierre-emmanuel

    ST Employee
    February 11, 2021

    Hi @PGoud​ ,

    it might be a sort of little nonlinearity at the boundaries of the threshold, although this is strange... do you have the possibility to test it on other parts?

    By the way, would it possible for you to work with a little higher threshold?

    -Eleon

    PGoudAuthor
    Visitor II
    February 12, 2021

    Hi Eleon,

    It seems that using 2 in Threshold Byte, does NOTproduce the problem.

    We've received yesterday our new boards using this sensor, and I've got the same behavior "always trigs on negative "noise" when the Threshold is 1".

    By the way, could you confirm me that seting 0 in Threshold wil never trig ?