Raspberry Pi, cómo configurar el mando de PS3 por bluetooth en RetroPie

Raspberry Pi, cómo configurar el mando de PS3 por bluetooth en RetroPie

RetroPie da mucho juego, en el más amplio sentido de la palabra, y para continuar con la serie de tutoriales sobre esta distribución, hoy vamos a ver cómo configurar el mando de PS3 por bluetooth en RetroPie.

¿Qué necesito?

  • Mando inalámbrico de PS3
  • Dongle Bluetooth.
  • Cable de conexión USB-mini USB.
  • Teclado, si vas a hacerlo directamente desde el televisor. Aunque te recomiendo hacerlo mediante una conexión SSH en remoto desde tu equipo. Si no sabes cómo conectarte en remoto a tu Raspberry, echa un vistazo a esta entrada: Raspberry Pi, una consola de juegos con RetroPie.

Los pasos para configurar el mando son:

Paso 1.- Activa el dongle Bluetooth

Conecta el dongle bluetooth a la Raspberry Pi y comprueba que el sistema lo detecta en uno de los puertos USB:

lsusb
Comando lsusb
Comprobamos que el dongle BT está conectado con el comando lsusb

A continuación, actívalo con el siguiente comando:

sudo hciconfig hci0 up

Comprueba que el sistema lo reconoce como dispositivo bluetooth:

hcitool dev
Comando hcitool dev
Comando hcitool dev

Paso 2.- Lanza el script de instalación

Desde la carpeta RetroPie-Setup, ejecuta el script retropie_setup.sh:

cd /home/pi/RetroPie-Setup
sudo ./retropie_setup.sh

Paso 3.- Instala los controladores

El script anterior te mostrará una serie de menús. En el primero de ellos, selecciona la opción (4) Setup/Configuration (to be used post install).

Configurar Mando PS3 - Paso 01
(4) Setup/Configuration (to be used post install)

En la siguiente ventana, selecciona (310) Install/Pair PS3 controller.

Configurar Mando PS3 - Paso 03
(310) Install/Pair PS3 controller

Aparecerán dos opciones. El objetivo es emparejar el mando de la PS3 con la RPi, así que elige la primera de ellas: (1) Install/Pair PS3 controller. La segunda opción, elimina las opciones de configuración en caso de una instalación previa.

Configurar Mando PS3 - Paso 03
(1) Install/Pair PS3 controller

Comenzará un proceso de instalación de controladores que tardará en finalizar unos 2 o 3 minutos.

Configurar Mando PS3 - Paso 04
Proceso de instalación de controladores

Paso 4.- Empareja el mando con la Raspberry

Empieza la parte más interesante, ya sabes, emoción, intriga, dolor de barriga. Finalizada la instalación de los controladores verás un mensaje que pedirá que te asegures de haber conectado correctamente el dongle BT. Esto ya lo has hecho en el paso 1, así que continúa.

Configurar Mando PS3 - Paso 05
Asegúrate de haber conectado el dongle BT

En este momento, conecta el mando de PS3 mediante el cable USB y pulsa ENTER.

Configurar Mando PS3 - Paso 06
Conecta el mando de PS3 mediante el cable USB

Finalmente, desconecta el cable USB y pulsa el botón PS para emparejarlo por bluetooth.

Configurar Mando PS3 - Paso 07
Desconecta el cable USB y pulsa el botón PS del mando para emparejarlo por BT

Si quieres utilizar otro mando de PS3, repite el proceso con este segundo mando.

¡Conseguido! En estos momentos una inmensa alegría recorre todo tu cuerpo pero aún queda algo más por hacer. ¿Has probado a reiniciar? Si eres el afortunado poseedor de un dongle BT que arranque a la primera sin problemas durante cada reinicio, el paso siguiente puede que no lo necesites. Si por el contrario te pasa como a mi, y a otros muchos usuarios de RetroPie, que unas veces funciona al arrancar y otras no, y por tanto, no puedes conectar el mando por BT después de cada reinicio, el siguiente paso es la solución definitiva a tus problemas.

Paso 5.- Solución para detectar el mando de PS3 después de reiniciar

Durante un par de tardes he estado probando varias soluciones propuestas en diferentes foros. La que te paso a contar es la única que realmente funciona.

Abre el fichero /etc/rc.local:

sudo nano /etc/rc.local

Y añade estas dos líneas antes del comando exit 0.

hciconfig hci0 up
hciconfig hci0 piscan
exit 0

Abre el fichero /usr/bin/emulationstation:

sudo nano /usr/bin/emulationstation

Y añade un sleep después de la primera línea #!/bin/bash. También puedes añadir una línea que muestre un mensaje informativo. El inicio del fichero quedaría así:

#!/bin/bash

echo "Pulsa ahora el botón PS para sincronizar los mandos de Sony PlayStation 3"
sleep 10

El script rc.local ejecutará las instrucciones para activar el dongle y permitir el emparejamiento con el mando. Debe realizarse en un momento concreto. Puedes empezar unos pocos segundos antes de desaparecer la pantalla con el Splashscreen y antes de ver la pantalla con el logo Emulation Station. Con el sleep de 10 segundos en el script emulationstation, ganamos algo de tiempo para realizar el proceso. Si necesitas más, solo tienes que aumentar el valor del sleep.

Pulsar-el-botón-PS
Emparejamiento del mando de PS3 por bluetooth al iniciar RetroPie

¡Ahora si! Reinicia y comprueba que funciona. Recuerda que debes pulsar el botón PS entre el Splashscreen y la pantalla con el logo de Emulation Station. Si tienes la RPi cerca y el dongle visible, puedes iniciar el proceso cuando el led del dongle empiece a parpadear.

Emparejamiento del mando de PS3 cuando el dongle BT parpadea
Emparejamiento del mando de PS3 cuando el dongle BT parpadea

Por último, configura los botones del mando desde el menú que aparece al iniciar. También puedes acceder a este menú, una vez arrancado Emulation Station, desde: Menu (Start) – Configure Input.

Configuración de botones para el mando de PS3
Configuración de botones para el mando de PS3

Y si quieres realizar alguna configuración especial, como añadir Hotkeys, que son combinaciones de botones para ejecutar acciones como salvar o cargar partida, salir del juego, entre otras, puedes hacerlo editando el fichero correspondiente a tu mando. En este caso, la ruta completa del fichero es la siguiente:

/opt/retropie/configs/all/retroarch-joypads/PLAYSTATION(R)3Controller.cfg

Por cierto, si ya tienes operativo el mando para el jugador 1 y quieres activar un segundo mando por bluetooth para el jugador 2, puedes hacerlo en cualquier momento: arranque de RetroPie (si lo has emparejado anteriormente con el proceso descrito), pantalla de Emulation Station, o incluso dentro de un juego ya lanzado.

Para cualquier duda o problema, deja tu comentario en esta entrada o contacta conmigo a través de Twitter en mi cuenta personal o en la cuenta de Babuleando.

¡Nos leemos!

Más información | RetroArch Configuration | Setting Up a Bluetooth Controller