Arduino on Android

There are many different ways to connect an Android phone/tablet to Arduino. It depends on what you want to do, whether you are going to do custom programming on the Android system and/or program the Arduino from the phone. At present, I haven't done this myself, but I'm starting to look at my options (I have a Galaxy S-II). Some of the ways to communicate include:

  • USB -- you can get a USB adapter that plugs into the mini-USB charging port that provides a full USB host connection on the phone (but you won't be able to power your Arduino with it, so you would need to use the 2.1mm power jack). I just bought this adapter on ebay, and I'm awaiting delivery (http://www.ebay.com/itm/330776357336?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1497.l2649). It probably depends on whether the Arduino can be programmed to act like a particular USB device. I pay for tethering on my phone, and I hope to use the cable to allow my phone and my Raspberry Pi to do full USB networking, but that is probably too complex for the Arduino
  • Wifi -- you would need a wireless shield to connect to the phone via wifi. However, unless you pay for the mobile hot-spot mode, I'm not sure whether wifi would work in an area that doesn't have a wifi infrastructure setup
  • Bluetooth -- you would need a bluetooth adapter on your Arduino. I suspect this is may be the simplest approach.
  • Headphone jack -- The phone has a 3.5mm headphone jack for music, and some programs use that to talk to a device. I have an app called triggertrap, and evidently they needed to engineer a special dongle so they could use 3.5mm jack.