33

Desde móviles hasta consolas portátiles, pasando por tabletas y muchos ordenadores… lo táctil está de moda. Pero como siempre, somos muchos los que queremos llevar la contraria. En el caso que nos va a ocupar, queremos conectar nuestro flamante mando de PS3 a un dispositivo Android.

Sé que hay muchos tutoriales en Internet tratando este tema. También sé que hay unos cuantos métodos, cada uno con sus pegas. Y también sé que buena parte de esa información está en perfecto (o no tan perfecto) inglés.

Los métodos básicamente se diferencian en el método de conexión (USB OTG o Bluetooth) y en el caso de este último, en el método de emparejamiento del mando, desde el propio móvil, desde un ordenador con Windows o con Linux. Y mi intención es explicarlos todos y que cada uno haga lo que más le convenga.

Empezamos.

1. Conexión vía USB OTG

SAMSUNG

Es el sistema más simple de todos, no es necesario tener acceso root al móvil ni instalar ningún programa. Este método es soportado por cualquier móvil o tablet con soporte para USB Host o USB OTG, se pueden encontrar listas de compatibilidad en Internet, aunque es más fácil que busqueis si vuestro terminal en concreto lo soporta. Sabiendo eso solo teneis que lanzaros al chino más cercano a buscar un cable USB OTG, que por un lado tendrá un MicroUSB macho como el del cargador de vuestro móvil/tablet y por el otro un USB hembra, donde podreis conectar desde pinchos USB hasta teclados y ratones. Y en este caso, el DualShock 😛

Teniendo el terminal compatible con OTG, el DualShock 3 y el cable USB OTG solo necesitamos un cable USB Mini B-USB A (el de cargar el mando de la PS3) para montarlo todo. Conectamos el USB OTG al terminal, el cable de carga del mando al OTG y el mando al cable de carga. En la pantalla puede (o no) aparecer «Dispositivo USB conectado» y pulsamos el boton PS del mando. Tras esto, el mando ya estará activo para las aplicaciones que permitan ser controladas con un gamepad. Solo quedaría mapear los controles en las aplicaciones que queramos usar con el DS3 y listo.

Ventajas de este método? No es necesario root ni instalar ninguna aplicación. El único coste es el cable USB OTG que es muy útil aparte de para esto, y que se puede encontrar por menos de 2€

Desventajas? Es un método engorroso al necesitar del cable para funcionar, impide que carguemos el terminal a la vez que jugamos (y considerando que los emuladores y juegos chupan bastante bateria eso es un buen problema) e impide también aprovechar el USB del móvil como salida de vídeo para jugar enchufados a un televisor.

2. Conexión vía Bluetooth

Como ya sabreis, el Sixaxis y el DualShock 3 utilizan una conexión inalambrica Bluetooth para comunicarse con la PS3… el problema es que no usan un Bluetooth estándar ya que necesitan un tipo de emparejamiento especial. En el caso de la conexión con la PS3, ese emparejamiento se realiza automáticamente al encender el mando conectado a la PS3 a traves del cable USB, pero a la hora de emparejar el mando a un dispositivo Android tendremos que enredar un poco más.

Screenshot_2014-01-26-18-48-24

Para conectar el mando vía Bluetooth necesitaremos la aplicación Sixaxis Controller, disponible en Play Store por menos de 2€ (https://play.google.com/store/apps/details?id=com.dancingpixelstudios.sixaxiscontroller&hl=es). Esta aplicación necesita disponer de acceso root al sistema y necesita de unos drivers específicos que no tienen todos los dispositivos, para lo que la propia desarrolladora tiene una aplicación para comprobar si los terminales son compatibles (https://play.google.com/store/apps/details?id=com.dancingpixelstudios.sixaxiscompatibilitychecker). No se tarda nada en hacer la comprobación y te ahorras quebraderos de cabeza.

Llegando a este punto, tenemos que emparejar el mando con nuestro terminal, para eso tenemos distintos métodos:

2.1. Emparejamiento desde el propio terminal

Lo más práctico es, obviamente, hacerlo desde nuestro propio terminal, sin necesidad de más cachivaches. Para esto necesitamos disponer de un móvil o tablet con soporte para USB OTG, el cable USB OTG y creo que una versión de Android superior a 3.1.

El procedimiento es fácil, no asustarse. Con el mando apagado, conectamos todo como en el primer método: Mando -> Cable de carga del mando -> USB OTG -> Terminal Android. Las 4 luces del mando parpadearán, no os preocupeis por ello.

Abrimos la aplicación Sixaxis Controller, arrancamos el driver pulsando Start

Screenshot_2014-01-26-18-48-43

Damos permiso de root a la aplicación y pulsamos en Pair.

Screenshot_2014-01-26-18-49-35

Aparecerá la dirección MAC de nuestro terminal, aunque con este método de emparejamiento no la necesitamos, y pulsamos en Pair. Android avisará de que Sixaxis Controller intenta acceder al dispositivo USB, le damos permiso.

Screenshot_2014-01-26-18-49-44

En la pantalla principal del programa saldrá «Master address updated», eso significa que todo parece haber ido bien.

Screenshot_2014-01-26-18-49-58

Hecho esto, podemos desconectar todos los cables. En ese momento, el programa ya está preparado para la conexión Bluetooth con el DualShock, pulsamos el botón PS de éste y debería aparecer en pantalla algo como «Client 1 connected [Battery status: tralarí]» a la vez que se enciende una de las luces del mando. Y ya está. Let’s celebrate.

SAMSUNG

2.2. Emparejamiento desde Linux

Para emparejar el mando mediante un sistema Linux sólo necesitamos compilar un pequeño código en c que nos permitirá cambiar la MAC del DualShock3/Sixaxis. Podeis descargarlo de aqui → https://dl.dropboxusercontent.com/u/58306562/sixpairtraducido.c

Para compilarlo necesitais los paquetes libusb, libusb-dev y obviamente gcc. Solo teneis que navegar en una ventana de terminal hasta donde hayais descargado el archivo (con «cd /carpetalaquelohayaismetido») y compilarlo con «gcc -o nombredelprogramacompilado nombredelcodigo.c -lusb». Una vez hecho, cogemos nuestro móvil o tablet, ejecutamos el Sixaxis Controller y apuntamos la dirección MAC que aparece abajo, en Local Bluetooth Address. Paso de poner captura porque lo podeis ver en todas las anteriores xD

Ahora enchufamos el DualShock al USB del ordenador y ejecutamos el programa que hemos compilado con «./nombredelprograma xx:xx:xx:xx:xx:xx», cambiando las xx por la MAC que habíamos apuntado.

Sin nombre

Con esto el mando ya está emparejado con nuestro terminal, solo nos queda arrancar el controlador de Android pinchando en Start en el Sixaxis Controller y pulsar el botón PS del mando. Cuando aparezca el «Client 1: Connected» estaremos listos para la acción 😉

2.3. Emparejamiento desde Windows

Para los que los términos Linux, consola de comandos y compilar código les suene a chino, existe una herramienta muy interesante para Windows, MotioninJoy.

MotioninJoy no solo nos permite emparejar el Dualshock con nuestro Android, si no que también puede actuar como driver para usarlo bajo Windows, cosa igualmente útil pero que escapa a lo que buscamos en este tutorial 😉

Una vez descargado ( http://www.motioninjoy.com/download ) e instalado el programa, con el mando conectado por USB, abrimos MotioninJoy y nos encontramos este panorama.

Sin títuloAunque no es necesario para el emparejamiento, si marcamos las dos casillas y pinchamos en Load Driver, cargaremos los controladores para usar el Dualshock en Windows, cosa recomendable.

Sin título1

Windows, gracias a su sólida seguridad contra malware, nos advertirá de que los controladores están sin firmar, pasad de ello, no hay problema.

Tras este paso accesorio, pinchad en BluetoothPair

Sin título2

La opción superior muestra los datos del adaptador Bluetooth del ordenador, si la dejais marcada al pinchar en Pair Now, el mando se emparejará con vuestro PC. Si éste no tiene un adaptador Bluetooth supongo que la opción saldrá en gris o desmarcada.

Pero ahora la que nos interesa es la opción de Custom MAC. Si os habeis leido las otras técnicas de emparejamiento sabreis que abriendo la aplicación Sixaxis Controller podemos ver la MAC del adaptador Bluetooth de vuestro androide abajo, en el apartado Local Bluetooth Address.

Por tanto, solo teneis que copiar esa dirección en el cuadro de texto de Custom MAC y pulsar en Pair Now.

Una vez hecho esto, solo hay que pulsar Start en el Sixaxis Controller y después encender el mando. Client 1: Connected y a jugar 😉

——————

P.D. Obviamente, si emparejais el Dualshock con otro dispositivo que no sea vuestra PS3, cuando queraís jugar con la Playstation tendreis que emparejarlo con ella, enchufándolo con la consola y encendiéndolo. Hecho esto, si quereis usarlo de nuevo en vuestro móvil o tablet, hay que seguir el tutorial otra vez. Pero no es tan dificil, no? 😛