Состоявшееся на прошлой неделе мероприятие Google I/O стало местом премьеры стандарта Android Open Accessory. Предполагается, что соответствующие ему устройства и аксессуары будут гарантированно совместимы со смартфонами и планшетами, работающими под управлением ОС Android. Поддержка Android Open Accessory добавлена в ОС Android 3.1 (и портирована в Android 2.3.4).
Речь идет о взаимодействии внешнего аппаратного обеспечения, подключенного с помощью интерфейса USB, с устройством под управлением ОС Android, в специальном вспомогательном режиме (accessory mode). В этом режиме подключенное устройство выступает в роли хоста (питает шину и перечисляет устройства), а само устройство с ОС Android выступает в роли периферийного.
Продукты, спроектированные в соответствии со стандартом, будут поддерживать простой протокол (Android accessory protocol), который позволит им определять, поддерживает ли устройство с ОС Android указанный режим. Периферийные устройства должны быть в состоянии обеспечить ток силой 500 мА и напряжение 5 В для зарядки устройства с ОС Android.
Чтобы разработчикам было проще приступить к созданию продуктов, соответствующих новому стандарту, одновременно с ним был представлен соответствующий набор разработчика: Android Open Accessory Development Kit (ADK). Набор включает все необходимое для начала проектирования. Интересно, что он основан на открытой платформе для быстрого создания прототипов электронных устройств Arduino.

В набор входит плата с микроконтроллером и интерфейсом USB (на базе Arduino Mega2560 и Circuits@Home USB Host Shield) и встроенное ПО, написанное на C++. К плате подключается демонстрационный модуль Android Demo Shield, реализующий различные варианты использования возможностей ввода-вывода, включая джойстик, светодиодные индикаторы, датчики температуры и освещенности. Важным элементом набора является библиотека, основанная на библиотеке Arduino USB Host Shield, с помощью которой реализуется логика работы платы с микроконтроллером в роли хоста USB.
Источник: Google