Arduino Computers & Mobile
Adventures in Android ADK Development

As you may have heard, Google made happy waves recently when they announced the Android Open Accessory Development Kit platform. This allows Arduino-compatible and PIC based boards to “…interact with an Android-powered device in a special ‘accessory’ mode.” Unlike Apple’s frustratingly closed iPhone platform, this board (and the associated SDK and Arduino libraries) shows a company embracing the idea of ubiquitous, mobile physical computing as a user-defined extension of their OS. If we want to turn our phones into an army of miniature squeegee-wielding, filth-sensing, automated window-washing robots that Tweet, we should have that right!

I received one of the official ADK kits from Google last weekend. It consists of the ADK USB micro-controller board (a kind of souped-up Arduino Mega2560/USB Host Shield that plugs into an Android device as well as your computer), and the very snazzy Accessory Demo Shield (lights, buttons, relays, servo controllers, temp sensor, light sensor, capacative touch sensor, and analog two-axis joystick), along with a couple of micro servos and a power adapter.

Now it’s on me to do some development on the platform. I’m new to Android development, so I’ve fired up the Eclipse IDE and will start working my way through some Android books and tutorials to see how quickly I can go from zero to working Android app that can read the Arduino sensor data and operate the servos. (After that come the window-washer robots.)

I plan to write about the experience here, and would love to hear your tips and suggestions on Android and ADK resources. I’m already planning to bug our own Brian Jepson (who posted his first hands-on with the board here) for advice!

26 thoughts on “Adventures in Android ADK Development

  1. Hey John — I’m right there with you.  I just got the ADK board and I’m new to Android programing.  Last night I got the the ADk woking with the demo code (http://bit.ly/m2lR8I)  and I’m writing my first Android app right now.  Here are some of the resources I’ve found so far:

    A nice walk though of the demokit.pde Android app: http://bit.ly/jmciJ9
    A quick and dirty way of building Android interfaces directly from arduino: http://bit.ly/j6cbk5

    Looking forward to seeing what people come up with.

  2. Hey John — I’m right there with you.  I just got the ADK board and I’m new to Android programing.  Last night I got the the ADk woking with the demo code (http://bit.ly/m2lR8I)  and I’m writing my first Android app right now.  Here are some of the resources I’ve found so far:

    A nice walk though of the demokit.pde Android app: http://bit.ly/jmciJ9
    A quick and dirty way of building Android interfaces directly from arduino: http://bit.ly/j6cbk5

    Looking forward to seeing what people come up with.

  3. John, since you’re new to the Android development platform it would be great to get a frequent update on how you’re doing with it.  I don’t know anything about Android or Arduino and actually I feel a bit intimidated by it, but if you can show us your steps, to let’s say, make an LED blink in time to La Cucaracha, then that would be great.  

    1. That’s exactly what I’m planning to do — I’ve got a post in progress right now about my first steps into the Eclipse IDE and getting it set up for Android. The really short version: it was pretty simple and I’ve gotten the Android emulator running just fine.

  4. John, since you’re new to the Android development platform it would be great to get a frequent update on how you’re doing with it.  I don’t know anything about Android or Arduino and actually I feel a bit intimidated by it, but if you can show us your steps, to let’s say, make an LED blink in time to La Cucaracha, then that would be great.  

  5. I’m looking forward to the follow up.  I’m on the other end of the spectrum — fairly familiar with Android SDK, but still a bit of novice when it comes to Arduino.  Haven’t had time to toy with the ADK yet — I’m doing some development on the Galaxy Tab instead.

    Fortunately, it’s easy to find information on Android Development.  I find the official resources extremely useful and the online reference is a great place to start.  Sample code is provided with the SDK (and online) that is very good material to look through for examples on how to use different APIs.  This should be enough to get you started, and there are plenty of great books to supplement the official tutorials.  StackOverflow is a great site for the problems you just can’t solve, and Google is a great way to search for tutorials on information that isn’t covered by the official documentation.

  6. I’m looking forward to the follow up.  I’m on the other end of the spectrum — fairly familiar with Android SDK, but still a bit of novice when it comes to Arduino.  Haven’t had time to toy with the ADK yet — I’m doing some development on the Galaxy Tab instead.

    Fortunately, it’s easy to find information on Android Development.  I find the official resources extremely useful and the online reference is a great place to start.  Sample code is provided with the SDK (and online) that is very good material to look through for examples on how to use different APIs.  This should be enough to get you started, and there are plenty of great books to supplement the official tutorials.  StackOverflow is a great site for the problems you just can’t solve, and Google is a great way to search for tutorials on information that isn’t covered by the official documentation.

  7. I’m looking forward to the follow up.  I’m on the other end of the spectrum — fairly familiar with Android SDK, but still a bit of novice when it comes to Arduino.  Haven’t had time to toy with the ADK yet — I’m doing some development on the Galaxy Tab instead.

    Fortunately, it’s easy to find information on Android Development.  I find the official resources extremely useful and the online reference is a great place to start.  Sample code is provided with the SDK (and online) that is very good material to look through for examples on how to use different APIs.  This should be enough to get you started, and there are plenty of great books to supplement the official tutorials.  StackOverflow is a great site for the problems you just can’t solve, and Google is a great way to search for tutorials on information that isn’t covered by the official documentation.

Comments are closed.

Tagged

John Edgar Park likes to make things and tell people about it. He builds project for Adafruit Industries. You can find him at jpixl.net and twitter/IG @johnedgarpark

View more articles by John Edgar Park