Jump to content
I2Cdevlib Forums


  • Posts

  • Joined

  • Last visited

  • Days Won


MattE last won the day on July 29 2015

MattE had the most liked content!

MattE's Achievements


Newbie (1/14)



  1. Oh! I just thought of one more possibility: Make sure you're interpreting those values as SIGNED numbers. If you treat them as unsigned, you'll see values of 4,294,967,295 "jump" to 0... the last bit is reserved for positive/negative, so the 2 values are actually -1 and 0.
  2. I think you may need to activate some of the more advanced functionality of the MPU or the DMP. Off the top of my head, here's what I'd recommend trying: First, try enabling the low-pass filter. I'm not 100% sure this is the trick, but LPFs are used to reduce noise, so it sounds plausible. PS: I've heard that this function MUST be called last, due to a bug in the API, but Im not sure. If that doesn't help, try retrieving the data from the DMP FIFO, after it's been processed by the DMP. This is not the most straightforward process, but it can be done, and once it's working, you'll get useable data without burning up your microcontroller's CPU. Another note, there are lots of undocumented bugs and typos scattered across all the revisions of Invensense's drivers. I've had the best luck with 6.12, but that's not saying much, and luck is a key word. Good luck! -Matt
  3. I did find some helpful threads there, but after reading through a bunch of posts, I noticed posts asking about DMP gesture detection go unanswered... after a while, I concluded that a lot of questions were left unanswered. Heh, then I found this one: http://www.invensense.com/forum/viewtopic.php?f=3&t=1305 Meanwhile, you guys here at I2CDev forums love this stuff, and want to learn more about it too... and it shows! I'm gonna keep digging on this for sure, as I think these chips may hide some pretty cool easter-eggs. If anyone else has worked/played with the undocumented DMP features, let me know - what did you figure out? Thanks again, -Matt PS: This is a great resource if anyone's looking for a little 'light reading' https://android.googlesource.com/kernel/msm.git/+/eaf36994a3992b8f918c18e4f7411e8b2320a35f/drivers/misc/mpu6050/mldl_cfg.c
  4. Hey all - I've been lurking on this forum for over a year as I worked through the various learning curves on the road to getting advanced DMP data from my 6050 and interpreting it with my Arduino Pro Minis. Yesterday, I finally had a breakthrough. The breakthrough came when I found the Invensense-original source code published for the android OS - an implementation of the 6.12 DMP, I think. After scouring that code and several other non-arduino implementations (for the Wii, QuadCopters, Robots and others), I bashed away at the 6.12 drivers from Invensense until I had something functional. After a lot of fiddling, I'm now able to retrieve DMP FIFO updates at various rates, and the DMP FIFO data *contains Tap Count, Tap Direction, and Orientation*! This is exactly what I've been looking for! (what I expected from a DMP, really) But, now that I've seen the Android implementation, it's apparent that the DMP is actually interpreting several *other* types of gestures in addition to Tap and Orientation. I see comments and methods for Flicks and Shakes, and I suspect there may be more. So, does anyone know of any available source code that's actually making use of these additional advanced DMP gesture algorithms? Are there any other resources that may contain clues as to how the DMP can be made to detect these gestures, and how I can interpret bthe resulting data? Any information will be much appreciated, and thanks to everyone for helping make this forum such a great resource! -Matt
  • Create New...