Para usar un dispositivo USB conectado, necesitas tener:
- Un cable USB OTG (USB On-The-Go)
- Controladores de modo de host USB cargados en tu dispositivo
- Una versión del sistema operativo Android cargada en ese dispositivo que admita el Modo de host USB
- Un dispositivo Android (por ejemplo, un teléfono o una tableta) con soporte de hardware incorporado para USB Host Mode
- Y finalmente, deben haber controladores en tu dispositivo para cualquier dispositivo USB que conectes.
Sistema operativo
El soporte de Host Mode USB se introdujo en la versión de Android 3.1 (Honeycomb), por lo que si tienes Android 3.1, o una versión más nueva instalada en tu dispositivo, entonces deberías tener el soporte necesario para ello en tu SO, Android 4 también agrega soporte adicional para USB y OTG. Además, muchas ROM de terceros agregan soporte para USB Host Mode a teléfonos que tienen el soporte de hardware, pero no tienen el soporte necesario del SO o de controladores en la versión oficial del sistema operativo.
Controladores de Modo de host
La mayoría de los dispositivos que tienen tanto soporte de hardware como un SO lo suficientemente nuevo tendrán los controladores necesarios cargados para habilitar el Modo de host USB, pero algunos no. Puedes encontrar aplicaciones de controladores en la Play Store para algunos modelos que no tienen controladores integrados. Algunos modelos con instrucciones y controladores de terceros disponibles son:
Cable
No puedes simplemente usar un cable USB normal. Como estos dispositivos pueden actuar tanto como un dispositivo USB "esclavo" (por ejemplo, para que puedas conectarlos a una PC y copiar música en tu teléfono, o copiar fotos del teléfono) y como un USB "host" (por ejemplo, para que puedas conectar una memoria USB a tu tableta y copiar archivos hacia adentro o hacia afuera) necesitan alguna forma de saber cuál deberían actuar en un momento dado.
Un cable USB OTG (USB On-The-Go) es lo que se utiliza para indicarle a tu dispositivo que actúe como un host, es como un cable USB normal pero tiene uno de los pines internos conectados a tierra en un extremo para que ese dispositivo sepa que debería actuar como el host (técnicamente los pines 4 y 5 están conectados a tierra en un cable OTG).
Además, como la mayoría de los teléfonos tienen tomas micro-USB, pero la mayoría de los dongles USB tienen conectores USB "de tamaño completo", como se muestra a continuación, muchos cables OTG tienen un conector macho micro-B USB en un extremo, y un conector hembra USB-A en el otro para convertir entre los diferentes tamaños de conectores.
El kit de conexión de cámara de Motorola, que es un cable USB OTG
Los cables USB OTG se pueden comprar bastante baratos en lugares como eBay o el mercado de Amazon, así como en muchas tiendas de electrónica pequeñas. Es posible que también encuentres que el fabricante de tu dispositivo vende uno oficial y de marca, a menudo llamado algo como "Kit de conexión de cámara" o "Cable de conexión de memoria USB". Si eres valiente, también puedes encontrar varios tutoriales en la web sobre cómo hacer tu propio cable OTG a partir de un cable USB estándar.
Controladores de dispositivos USB
Cuando conectas tu dispositivo USB a tu teléfono o tableta Android, necesita saber qué es ese dispositivo USB y qué hacer con él. Para dispositivos comunes, como memorias USB, o cámaras que admiten PPTP o almacenamiento masivo USB, estos a menudo ya están integrados en el SO. Para otros dispositivos USB, como dongles de Wifi, 3G o Bluetooth, es posible que no haya controladores preinstalados en el SO, o solo controladores para dispositivos específicos.
Cómo probar todo junto
Existen algunas aplicaciones que pueden ayudarte a probar si tienes todo el hardware y software necesario para hacer esto, como USB Host Diagnostics. Usarlo para probar las capacidades de tu dispositivo es muy simple
- Instala USB Host Diagnostics desde la Play Store
- Ejecútalo
- Toca el enlace Iniciar diagnósticos, y siguiendo las instrucciones primero asegúrate de que no tengas nada conectado a USB en tu dispositivo y luego conecta un dispositivo (como una memoria USB) cuando se te indique
Si todo funciona, deberías terminar con una pantalla de resumen como esta, mostrando en primer lugar algunos detalles sobre tu dispositivo y el SO en ejecución, luego informándote si tu dispositivo dice que admite el Modo de host USB, y luego el veredicto final tan importante que te informa si la prueba de acceso al Modo de host funcionó o no:
Si todo está funcionando y la aplicación detectó con éxito tu dispositivo USB (mostrando que tu Modo de host USB está funcionando) deberías tener "Sí" en las secciones marcadas, y algunos detalles mostrando cuánto acceso tienen las aplicaciones de terceros (es decir, aplicaciones no integradas) al dispositivo. Si no, debería haber detalles para ayudarte a localizar dónde está el problema.
Alternativamente, Chainfire, el autor de USB Host Diagnostics, tiene una (larga) lista de todos los informes que las personas han enviado después de ejecutar la prueba en sus dispositivos. Puedes buscar tu dispositivo en la lista y ver si las personas con tu dispositivo y versión del sistema operativo han aprobado todas las pruebas, o no. Busca tu dispositivo aquí: http://usbhost.chainfire.eu/