The Arduino ADK is a microcontroller board based on the ATmega2560 (datasheet). It has a USB host interface to connect with Android based phones.It is compatible with Android's Accessory Development Kit examples. It has 54 digital input/output pins (of which 14 can be used as PWM outputs), 16 analog inputs, 4 UARTs (hardware serial ports), a 16 MHz crystal oscillator, a USB connection, a power jack, an ICSP header, and a reset button.
The ADK is based on the Mega 2560.
Similar to the Mega 2560 and Uno, it features an Atmega8U2 programmed as a USB-to-serial converter.
The Android 3.1 platform (also backported to Android 2.3.4) introduces Android Open Accessory support, which allows external USB hardware (an Android USB accessory) to interact with an Android-powered device in a special “accessory” mode. When an Android-powered powered device is in accessory mode, the connected accessory acts as the USB host (powers the bus and enumerates devices) and the Android-powered device acts as the USB device.
Revision 3 of the board has the following new features:
1.0 pinout: added SDA and SCL pins that are near to the AREF pin and two other new pins placed near to the RESET pin, the IOREF that allow the shields to adapt to the voltage provided from the board. In future, shields will be compatible both with the board that use the AVR, which operate with 5V and with the Arduino Due that operate with 3.3V. The second one is a not connected pin, that is reserved for future purposes.
Stronger RESET circuit.
Develop accessories for Android (v2.3.4 and above) devices using ADK.
For Android devices not supporting ADK, use MicroBridge to develop accessories.
Make Android devices interact with the physical world as an Arduino compatible platform with 256K Flash.
On board USB host makes it easy to interact with USB devices like pen drivers, keyboard, mouse, Bluetooth dongles, etc...