Tell me more ×
Electrical Engineering Stack Exchange is a question and answer site for electronics and electrical engineering professionals, students, and enthusiasts. It's 100% free, no registration required.

I'd like to use a MPU-6000 chip for an AR app on an Android device. However I have no clue where to begin, which parts I need or whatsoever. I'm familiar a bit with Arduino, but only as a newbie.

Which parts do I need to purchase? InvenSense sells some evaluation board, is it enough to connect it to my PC? Do I need some additional board? Which one? Are there any other parts that may help me? I also want to connect an additional magnetometer sensor to get full 9-axis motion tracking - which board will support both of them? Which software development environment should I use?

One more thing - I'm going to glue the board to an Android device (on the outside, with batteries as a power source), but how should I connect it? Do you thing Bluetooth is fast enough to transmit high-frequency real-time feedback from the chip? Any other options you can think of?

Thanks!

share|improve this question
This is many questions all in one and too broad to reasonably answer. – Olin Lathrop Oct 4 '11 at 17:13
A simple "sopping list" of all components needed to jumpstart would be enough - this is basically the main point in my post. – Max Oct 4 '11 at 18:04

1 Answer

You will need a microcontroller capable of talking SPI or I2C to that sensor chip, and also capable of communicating with the android device.

Using a bluetooth serial connection is certainly a possibility - you can check the supported baud rates and figure out what kind of update rate of packets of however many bytes that can give you, and decide for yourself if that is acceptable. Obviously a nice thing about bluetooth is you can wave the sensor around within a 30 or so foot area while your PC sits quietly on your desk processing the data.

Another idea is you could buy an embedded USB host designed to work with android devices, either an official ADK solution for Android 2.3+ or something community driven like the IOIO board that can use the ADB protocol with older android devices. Either of these should be able to be configured to talk SPI to the sensor.

Since you have an arduino background, an ADK or bluetooth solution based on that, while not the cheapest hardware platform (those shields add up) would give you the option of first building something that connects the sensor to your pc over the arduino's serial / usb-serial (requiring only the arduino and the carrier module for the sensor plus some wire and maybe resistors), and then later add the bluetooth or usb host shield to talk to an android device.

Lastly, they seem to offer their own ARM board with what I assume is a USB device interface designed to plug into the USB host port of a PC. There are some android phones which can be unofficially hacked to be USB hosts (though it's a pain) and some tablets which do it right out of the box. In the latest versions there's an official java api for talking to USB devices from android apps, in the older approaches you would build a linux kernel module just as you would on a desktop linux machine and then hook that up to an application using something like a device file with permissions set appropriately... PROVIDED that they give you the necessary low-level information to talk to their USB device from your own software without going through their (windows?) driver.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.