Frequently Asked Questions
Mon-Fri, 9am to 5pm
U.S. Mountain Time:
Chat With Us
January 16, 2011
about 2 years ago
I’m not sure what kind of documentation I could give you, as you will agree their documentation about this has not been the best. However, I can provide the contact info for the Invensense team members that I spoke with. The topic of the DMP has been causing confusion for everyone. Like I said, several of the fellow attendees I spoke with had the exact same question, and we all got the same answers from the team.
The DMP code itself is proprietary and encrypted, but if you look on the developer’s corner you can find the libraries I spoke of. Examining them, there is mention that they are for 6 axis sensor fusion - with the exception of the MSP 430 libraries. But, it is not so simple for a lot of hobbyists to drop $300 on the development tools and another $450 on the compiler. So that is not much help for most of us.
The MPU-9150 does contain all 3 sensors of course, but the magnetometer is separate silicon within the chip and on a separate bus. I would venture a guess that the DMP processor does not have direct access to the magnetometer and that complicates things. However from talking to some of the Invensense guys there is also the issue that the mag calibration is rather involved and not something they’re comfortable doing internally with no user input. That was the gist of it.
So I can offer the contact info for those I spoke with. I’d rather not post it publicly. Everyone I spoke with told the same story, and that’s information that I wish Invensense had given long ago to save us all the trouble. I do understand your position however, and it’s a shame Invensense hasn’t been forthright in their docs and marketing.
Yep that’s true. I felt slightly bad about this because there is a lot of stuff on here that’s reasonably priced. But also a lot of stuff that is inexplicably way overpriced. I guess they have to make money somehow. Though I don’t think that Sparkfun has any special difficulties that other such suppliers don’t have that account for the price. So it’s still confusing. Unless they assemble each board by hand for some reason.
I think it’s time to inject some much needed information into this discussion.
I recently attended the Invensense Developer’s Conference in San Francisco. While there I met a surprising number of fellow engineers with similar questions as I (and you) are asking. Namely, does the DMP function actually exist? I spoke directly with some of the Invensense technical team members and asked them this question.
So, can this IMU perform 9 axis sensor fusion? The short and final answer is NO. The IMU and breakout board here cannot do 9 axis sensor fusion. The hardware is not capable of doing it. And it’s about time SparkFun finally corrects the information here and stops misleading its customers. I understand that the blame here largely rests with Invensense, who have been very cagey about releasing this information. But, it is out now, so the description should be fixed.
This IMU is identical to the 6150, in fact it IS the 6150 with the addition of a magnetometer. The DMP function on this IMU can do 6 axis sensor fusion if you can manage to initialize it properly and load the DMP code onto the chip. It can ONLY do 6 axis fusion. If you want 9 axis, it must be done on another MCU. Here you have a few options:
1) Get an MSP430 like the one on the MotionFit Wireless development board (out of stock on Invensense), log into the Invensense Developer’s Corner, and download the MotionApps driver. Modify from there. This is more or less the only sure way to get 9 axis sensor fusion from Invensense directly. However, the TI development tool chain requires you use Code Composer, and if you want to use the Invensense library you will have to buy it as the free version has a code size limitation. It’s about $400-500.
2) Port the code yourself to the MCU of your choice and integrate the magnetometer data yourself. They have, I believe, 3 versions in the aforementioned developer’s corner. There is a version for the MSP430, a version for the Atmel UC3 development board, and a “general” version that is intended to be ported to various platforms. However, the only one that has full 9 axis sensor fusion is the one for the MSP430. The UC3 and general libraries are 6 axis only. You have to build the 9 axis functionality on top of this yourself, if you want it. This was confirmed by a developer at the conference. To get 9 axis you pretty much have to either use the TI toolchain with the MSP430 and Invensense code, or roll it yourself.
3) Code the sensor fusion algorithms yourself. Or find an open source version and adapt it to your application.
That’s it! This breakout board, as it contains only the IMU and supporting circuitry, IS NOT PHYSICALLY CAPABLE of doing 9 axis sensor fusion. That can ONLY be done onboard an MCU. If you want 9 axis, it has to run on an external MCU. If you don’t want to pay for the MSP430 toolchain, you can either find open source libraries or do it yourself. This is information coming directly from the Invensense team and exhibitors at the conference using the 9150 in their applications.
There is a 9250 planned, which will also not be capable of onboard 9 axis fusion. There is then a 9350 planned, with the same story. Only after the 9350 is there a possibility of the IMU performing full 9 axis sensor fusion onboard. But that is going to arrive late 2014, at the earliest.
Sparkfun, is this enough yet? Surely the text on this site is not carved into stone somewhere. The very first feature listed here is NOT a function that the 9150 can offer.
about 2 years ago
Good luck. Sparkfun will reply in the comments “We know! It’s awful! They should really release that documentation!”
But fix their description to make it clear that that functionality is NOT built in? Never! Why, if people knew that, they might not buy this board! Much better to buy it and be frustrated by a misleading description, as long as Sparkfun gets paid.
about 2 years ago
Sure, you just need to take care to set the resistor correctly before charging a battery. I prefer to just have two, one set up (and labeled) for large batteries, the other for small.
Of course it’s twice as expensive, but we’re on Sparkfun. Finding something here that only costs you twice as much is a relative bargain compared to their usual way of business.
Maybe, but the maximum charging current listed is 2.5 Amps.
I’m pretty shocked that you don’t take more care to clear that up for your customers. Whether it’s dangerous or not (and assumptions like the ones in this comment thread are how people get hurt) don’t just throw out datasheets without even bothering to specify what they are for.
This is a nice sensor, but…
Sparkfun: Holy hell, are you ever going to do anything about your abso-ludicrous prices? This chip costs $17 straight from the manufacturer in single-unit quantities. That means that this tiny, 2-layer, simple breakout board (minus chip) costs $33!!! Even with (extremely minor) assembly THAT IS ABSOLUTELY INSANE. That is how much it costs per unit to pop over to Advanced Circuits and order several 2 layer boards with silkscreen and soldermask.
I really am having a hard time even comprehending the psychotic prices that you charge for breakout boards, especially this one. You seem to trying to demonstrate that the more expensive/complex the IC, the more expensive the breakout board must be? I hope you change your ways before people start to realize how ridiculous that is and leave you for your competitors.
about 3 years ago
If you plan to buy this take note…the distance between the 3 pin header and the 5 pin header is NOT a multiple of 0.1". So this won’t quite fit in a standard breadboard. You’ll have to either squeeze the pins together or pull them apart but you won’t be able to get it to sit flush.
Honestly this is a bit baffling. Sparkfun, this isn’t the first product I’ve ordered that has off-grid headers that could have easily been made standard 0.1". What gives? I can’t think of a possible reason for it on this product.
Tutorial - Reinstalling your Arduino bootloader
about 3 years ago
Thank you so much! I was getting errors following the procedure on here and adding the -vvvv did the trick! Everything loaded perfectly and it works great now. I was using a 3.3V Arduino Pro to program a 3.3V Arduino Pro Mini, though I just connected the jumpers to the same pins shown in the left column on both boards.
about 3 years ago
To answer my own question, I’ve received these and they do a fine job on the XH connectors.
$60 is STILL far more than it could possibly cost to make these, but that is the world of crimpers, these work, and they’re among the cheapest. So take it with a smile I suppose!
Forgot your password?
No account? Register one!