RAM Electronics's Description
The IOIO (pronounced "yo-yo") is a board specially designed to work with your
Android 1.5 and later device. The board provides robust connectivity to an
Android device via a USB or Bluetooth connection and is fully controllable from
within an Android application using a simple and intuitive Java API - no
embedded programming or external programmer will ever be needed!
The IOIO board contains a single MCU that acts as a USB host and interprets
commands from an Android app. In addition, the IOIO can interact with
peripheral devices in the same way as most MCUs. Digital Input/Output, PWM,
Analog Input, I2C, SPI, and UART control can all be used with the IOIO. Code to
control these interfaces is written in the same way as you write an Android app
with the help of a simple to use app-level library. In other words, you can
combine the awesome computing power, Internet/Bluetooth connectivity, touch
screen, and a variety of sensors from your Android device with the ability to
easily add peripheral devices to interact with the outside world. Also, using
the IOIO does not require any hardware or software modifications to your
Android device, thus preserving the warranty as well as making the
functionality available to non-hackers.
The IOIO acts as a USB host and connects to most Android devices that have
USB slave (device) capability. So far, the devices proven to work with this
board are: G1, Nexus One, Nexus S, Motorola Droid X (among many others now). If
you get the IOIO working on your Android device, please let us know in the
comments below, thanks!
We're now have the IOIO board loaded with the V3.04 bootloader so that it's
ready to go with the latest application update, which adds Open-Accessory
support. Open Accessory will provide improved latency, throughput and jitter.
If ADB is enabled on the Android, ADB will take precedence over Open Accessory.
Disable ADB to have IOIO working over Open Accessory.