Creative Commons images are CC BY-NC-SA 3.0

12.95

added to your
shopping cart

quantity
In stock 229 in stock
12.95 1+ units
11.66 10+ units
10.36 100+ units

Description: The MPU-6050 is a serious little piece of motion processing tech! By combining a MEMS 3-axis gyroscope and a 3-axis accelerometer on the same silicon die together with an onboard Digital Motion Processor™ (DMP™) capable of processing complex 9-axis MotionFusion algorithms, the MPU-6050 does away with the cross-axis alignment problems that can creep up on discrete parts. The parts’ integrated 9-axis MotionFusion algorithms can even access external magnetometers or other sensors through an auxiliary master I2C bus, allowing the devices to gather a full set of sensor data without intervention from the system processor.

For precision tracking of both fast and slow motions, the MPU-6050 features a user-programmable gyro full-scale range of ±250, ±500, ±1000, and ±2000°/sec (dps) and a user-programmable accelerometer full-scale range of ±2g, ±4g, ±8g, and ±16g.

Dimensions: 4x4x0.9mm QFN

Features:

  • Digital-output of 6 or 9-axis MotionFusion data in rotation matrix, quaternion, Euler Angle, or raw data format
  • Tri-Axis angular rate sensor (gyro) with a sensitivity up to 131 LSBs/dps and a full-scale range of ±250, ±500, ±1000, and ±2000dps
  • Tri-Axis accelerometer with a programmable full scale range of ±2g, ±4g, ±8g and ±16g
  • Reduced settling effects and sensor drift by elimination of board-level cross-axis alignment errors between accelerometers and gyroscopes
  • Digital Motion Processing™ (DMP™) engine offloads complex MotionFusion, sensor timing synchronization and gesture detection
  • Embedded algorithms for run-time bias and compass calibration. No user intervention required
  • Digital-output temperature sensor
  • Digital input on FSYNC pin to support video Electronic Image Stabilization and GPS
  • Programmable interrupt supports gesture recognition, panning, zooming, scrolling, free fall interrupt, high-G interrupt, zero-motion detection, tap detection, and shake detection
  • VDD Supply voltage range of 2.375V–3.46V; VLOGIC at 1.8V±5% or VDD
  • On-chip timing generator with ±1% frequency variation over full temperature range
  • 10,000g shock tolerant

Documents:

Comments 56 comments

  • I really like the fact that you include a photo with X and Y scales for most of your products, but lately it seems like a number of products (this one included) have been posted without.

    Can we talk you into making that a standard feature for all new products?

  • When are you expecting this product to be back in stock?

  • For those interested, InvenSense just published the official updated Register Map on their website this morning:

    RM-MPU-6000A.pdf

    It doesn’t have DMP info, so I’m still trying to figure that part out by hand, but it’s a big step forward for them to finally release this. SparkFun guys, feel free to add the link to the product description!

  • Here’s an Arduino sketch to get precomputed quaternions out of the MPU6050. It just reproduces the behavior of the Invensense example firmware for the Atmel UC3 Xplained board. I still haven’t gotten calibration saving and loading working, so it still drifts for a bit, but stabilizes if you leave the sensor in a no-motion state for a little bit. You can use it with the Invensense Teapot/Mouse Demo app (here’s a video), or modify the packet structure for your own app like Fabio did here.

    Jeff Rowberg’s i2cdevlib is by far the best way to configure the chip and get raw data at the moment. With his code, at least you’ve got a nice 6-axis solution in a tiny footprint, and there’s a lot to be said for that.

    I’ve heard from Invensense that they are at least talking to Honeywell about getting their help on implementing HMC5883L support for the 9-axis DMP.

    I don’t like how Invensense is handling things any more than the next guy, but I think that until a developer-friendly competitor releases some comparable silicon, this is the best inertial sensor you can buy.

    • I see a lot of frustration here! Why not use the iNemo solution from ST micro? Then you can have real source code running on a real processor. Better company, better support, better documentation, and a better product.

    • Still waiting on info and documentation about WHY this works, but I just finished a DMP example with lots of comments and debug output built around the I2Cdevlib class library (and based heavily on the procedural structure of Noah’s code). This mimics the 6-axis DMP-based traffic from the InvenSense eval board. It really does use the DMP though, no doubt about it. I’m sure the example does a lot more than it needs to, but it does get the job done.

      MPU-6050 6-axis DMP-based Arduino sketch

      Feedback and code contributions welcome.

  • All the info I’ve been able to ask for, find, or reverse-engineer on this (rather awesome) chip is available here:

    http://www.i2cdevlib.com/devices/mpu6050

    Example Arduino sketch for raw reads, and some DMP stuff as well, though I’m still working on that. I really, really wish InvenSense was more forthcoming with documentation.

    • Jeff, I’m sure that if we would have an email address with @nintendo.com or @sony.com you woudn’t have any problems getting 1st class documentation and support from Invensense.

      The truth so far with this sensor is that it’s really badly documented. Product specification it’s really just useful to design a PCB. No publicly available register or DMP documentations are currently available. In order to access register infos (no DMP) you have to sign an NDA.. WTF???

      So far, I’ve been quite disappointed by the sensor. Awesome on paper but without good docs available to anyone.. its more cool features are simply unaccessible.

      • All the info I have so far, including the Register Map PDF straight from an InvenSense employee, was provided without an NDA or even so much as a “don’t spread this around” caution. I still hesitate to post that particular PDF because it says “proprietary” on it though. Despite repeatedly asking them why they are so secretive with information that would only boost interest and sales, I still have no real answers. The hobbyist community would think much more highly of them even if all they did was give out the docs without any promise of support. We’re fine with figuring stuff out on our own. The whole “no public info at all” thing is really annoying.

        Incidentally, on the linked i2cdevlib.com page, you can pretty much work out the entire register map and behavior from the table and Doxygen comments in the MPU6050.cpp source file. The I2C analyzer results combined with the released InvenSense developer code has provided all the DMP structure info in place, which is not insignificant. The only missing piece is how to compile code for the DMP memory banks. Directly programming the captured dump from the logic analyzer does provide working quaternion output at this time, at least.

        • Are you able to use the 9DOM sensor fusion internal algorithm? Are you able to setup the chip to fuse data from a 3rd party magnetometer of your choice? No. No.

          I don’t know how you value your time but spending hours reverse enginering a device I paid for looks like a big no sense to me.

          • This is true. They could be way, way better about this than they are. I’m hoping we’ll eventually be able to beat them at their own game if they don’t start being more helpful though. A $15 device that can really do full motion computations onboard is worth the effort to me–though I admit I don’t know everything that “effort” might entail yet.

            • Hey Guys, I shot Invensense an e-mail letting them know about some of your frustrations, since I wanted to use this chip myself, and the issues you were having concerned me. The response was good and it seems like they may just be a bit slow to provide documentation, but it doesn’t look like they’re purposefully witholding anything from the hobby community. And more specifically they do seem to care, so even if they are bad at providing documentation, maybe they will be receptive to questions on their developer portal? Here’s what they said:

              Hi Taylor,

              Thank you for bringing this to our attention. As announced, MPU-60X0 is now in full production and the Register Map will be finalized and post on the website by the end of this week. I hope this will reduce the hassle and frustration.

              And to prove you that we appreciate not only our big name customers, but the hobbyist communities out there, we put together for some time now a developers’ corner. We have a lot of students, professionals, researchers, etc that are registered and have access to a discussion forum, support center also live web seminars, etc. Please see below the link:

              http://invensense.com/developers/index.php?_r=default

              I will appreciate if you can let us know if you find this useful and what recommendation you may have regarding our developers’ corner. I will pass all of these to the department in charge.

              Let me know if I can be of any help and thank you again for your feedback. By the way, Sparkfun is one of our oldest customer and it is a pleasure working with them.

              Best regards, Camelia Bobic Inside Sales Sr.Manager

              • This is good news, if they follow through as promised. The Developer’s Corner area is definitely helpful, but there are a remarkable number of posts where someone asks a very good question, and then one of the InvenSense employee users posts a “We have responded to you in an email” message. Kind of defeats the purpose of the forums. Even so, I’m glad to see them promising to release the register map.

            • Heh… I guess I’m a little late the this party. I think you know where I stand on whether or not it’s worth the effort. We’ll get there.

      • Hey Fabio, while I’m sure Nintendo, LG, etc are getting much better support than we are, I really don’t think that Invensense has a working 9-axis solution using any magnetometer other than the AK8975. Why they chose to develop the one solution that they have using that chip, I can’t fathom, though it may have had to do with that being the magnetometer in the iPhone 4. I share all of your complaints, am deeply frustrated, and have sunk dozens of hours into this, but there simply isn’t anything comparable from anyone else.

    • So the motion fusion processor functionality is proprietary then? That baggage sure makes the chip a lot less attractive. Particularly for a $20 chip.

      Nonetheless, thanks for the reverse engineering efforts!

    • MPU-6050 info temporarily removed due to InvenSense request

      i was too late (???)

  • Is there a way to zero calibrate the MPU6050? I’ve been storing a quaternion at calibration time and subtracting it from the readings. That takes a bit of CPU time. I noticed that Jeff Rowberg’s code shows 6 bit offsets in the registers in the 6050 for all 6 axes but no information on how to use them. Invensense seems to skip these registers in their register map. Is there some way to zero the readings using these registers?

  • Does anyone know how to use two MPU-6050 simultaneously using the same Arduino board. I want to use multiple IMUs for my project to get minimal error for getting position. It seems impossible to change anything in the header files without messing it up! Any help would be much appreciated. Thanks. :)

  • Eagle Library for MPU-9150 ( i draw to component and thats my first draw , if posible please test first ) http://web.deu.edu.tr/sbt/files/mpu9150.lbr

    • Ehh, you do know that it is pin-by-pin compatible (verified) with the ITG-3200? (e.g. use the ITG-3200 part), i just soldered the MPU on that footprint and works fine.

  • I’m having a trouble finding this part in your Eagle library despite it is marked as available in library. Could you please point where it could be found? Thanks.

  • Hi! Is thit suitable for a quadrocopter?

  • If you’re comfortable with SMD work, a breakout board PCB is available at: http://www.batchpcb.com/index.php/Products/79722

  • hi, any idea when these will be available on a breakout board?

  • any idea when these will be back in stock? a breakout board would be neat :)

  • any idea when these will be back in stock? a breakout board would be neat :)

  • Are we getting this anytime soon??

  • People out there looking for a breakout board for this chip. See LibreBB MPU6050 open hardware designs http://www.varesano.net/blog/fabio/libre-breakout-board-invensense-mpu6050 Schematics of recent FreeIMU v0.4 may be of help when sorting out connections: http://www.varesano.net/projects/hardware/FreeIMU#v0.4

  • Hi

    I have a PCB that uses the ITG3200 and an ADXL345 and would like to change the ITG3200 by this one. First they were not available, now they are available, but there is no register description….

    Can Sparkfun help us, and post the registers documented mentioned in the datasheet?

    I would like to point out that ST electronics have a similar product and the register information is in the datasheet. But I would like to use this one because of the sensor fusion support.

  • This seems like it’s probably a great chip, but is there more information on it available? The PS-MPU-6000A.pdf spends pages and pages describing I2C timing but says nothing about what settings, modes, data the chip might send, what its registers are, etc… do I really need to go through the whole request-information-from-Invensense dance to get some basic datasheets?

  • First step: Virtual reality headgear Second step: ???? Third Step: PROFIT!!!

  • Datasheet is out of date - Product Specification 3.1 can be found here:

    http://invensense.com/mems/gyro/documents/PS-MPU-6000A.pdf


Related Products