I was some day wondering how to connect IO to Android smartphone or tablet. One well known option is to use IOIO or IOIO-OTG board connected to Android device USB port. The IOIO (pronounced “yo-yo”) is a board specially designed to work with Android devices and robust connectivity to an Android device via a USB or Bluetooth connection and is fully controllable from within an Android application.
I did not want to rush to shop to buy hew hardware, so I was wondering if there were any to use some of my existing Arduino boards for the task. I knew that quite many new Android devices have support for USB_On-The-Go, so I should be able to plug normal USB devices to them with suitable USB-ORG adapter cable. If there would be suitable drivers in Android that supports communicating with Arduino boards, and suitable controlling app, I could do IO with Arduino board.
ArduinoCommander app uses Firmata protocol to communicate with Arduino board, so should work well with supported Arduino board models that are loaded with StandardFirmata sketch you can find on Arduino IDE examples.
I first needed to get USB-OTG cable so I could connect Arduino to Android smart phone or tablet. Those are easily available from shops. The next thing was to get the application and connect Arduino. I did not have success with my Samsung S4 mini smartphone, the Arduino board did not seem to start up. It turned out that Samsung S4 mini smartphone does not seem to support USB-OTG unless hacked in a ways I did not want to do to my phone.
Fortunately I had other Andoid hardware to test. First I tried an older 7″ Android Tablet from Denver (runs Android 4.0.x). Arduino board powered up nicely. I installed the ArduinoCommander app successfully, but that app did not seem to find the Arduino UNO board connected to USB.
The next task maybe is to try how the communications works with Bluetooth and Ethernet, so can place the Arduino board where it is needed, and freely carry around the tablet. And maybe work well with a wider selection of devices.