Hi. The LIS3DHTR. I want to use the Stream-to-FIFO mode and interrupt on 'high' events to capture the 32 samples leading up to the trigger.
Am I right in saying that to make this work consistently, after each interrupt and reading out the data, you have to select Bypass mode in FIFO_CTRL_REG, and then put it back into 'Stream-to-FIFO' mode? This seems to make it work, but there's no mention of it in text, maybe a hint in Figure 30 of the app note. Can you confirm?
Also, the description of Stream-to-FIFO mode in the app note (9.3.4), says that FIFO content after the trigger will be 30 samples before the trigger, the sample when the trigger was generated and one sample after. That's not what I see: I get the very last sample having the only acceleration higher than the threshold. IS this because something is wrong in device setup, or a feature of using the DURATION of zero,... or just a typo in the docs?
Finally, I saw on another manufacturers forum, that the part can interpret certain states of SPC and SDI as I2C activity, when you want SPI mode. We use SPI mode, and there are multiple slaves on the bus. When we are not accessing the LIS3DHTR, its CS will be high, but the SPC and SDI lines WILL be active when accessing other devices. If what I've read is true, there's a danger of the LIS3DHTR driving the SDI line and contending an SPI access to another slave. Can you confirm, one way or the other please? Is there a fix? This one could be a show-stopper, .... the part really shouldn't be 'demanding' that it has a dedicated SPI bus all to itself!
Cheers for now.
