Our application requires responding to a transient motion (i.e. shake). There are a number of parameters that can be set: ODR, Full Scale range, HPF, Sample Rate, Transient Threshold, Transient Count. I have implemented all of these and our application is working but the reliability is not optimum. Are there any guidelines to help setting these parameters to improve reliability?
I have been triggering my application whenever the threshold is exceeded at various ODR, HPF, Sample Rate settings. Is this approach sufficient or must there be further processing after the interrupt to improve reliability? What further processing might be required?
Hello Tom,
Thank you for writing.
In order to improve your design using the Transient Detection on the MMA8452Q, I recommend referring to the Application Note AN4071.
High-Pass Filtered Data and Transient Detection Using the MMA8452Q
Besides, you may find attached a sample project that can be used as a reference for your design.
Please let me know if this material is useful for you.
Best regards,
David
Thank you for responding David.
I used AN4071 as part of my basic design development. It defines the various modes and functions very well and helped me get my code running and responding to shakes. But sometimes a shake is missed, sometimes it is sensed in the wrong direction and sometimes multiple shakes are detected when there should be only one (a debounce problem).
Now I need to fine tune the parameters (ODR, Full Scale Range, Sample Rate, HPF, Transient Threshold, Ttransient Count) to increase reliability. Full Scale Range is easy because I know the maximum G's expected. But some guidance in setting the other parameters would be helpful.
Tom