Outils pour utilisateurs

Outils du site


ludique:retrogaming:retropie:installation-manette-xbox

Ceci est une ancienne révision du document !


Installer une manette XBox One sans fil

Procédure testée sur le modèle 1708.

Le pilote recommandé à partir d' avril 2024 avec Retropie est xpad. Il existe également un pilote en espace utilisateur xboxdrv mais certaines incompatibilités on été relevées avec les versions récentes du noyau Linux.

A partir de l'image RetroPie 4.1, le pilote xpad et installé par défaut : l'installation manuelle n'est donc pas nécessaire.

A propos du module ERTM

Sur Raspberry Pi, le module noyau ERTM Enhanced Re-Transmission Mode peut poser problème lorsque la manette Xbox One est connectée en bluetooth sur Retropie (l’appairage échoue systématiquement). Si c'est le cas, on peut le désactiver.

Mise à jour du firmware

La manette doit être connectée par câble sur un Windows 10 ou supérieur pour recevoir les mise à jour du firmware.

Xpad

On peut installer ou mettre à jour le pilote xpad à partir des sources depuis le menu de configuration Retropie

cd ~/RetroPie-Setup
sudo ./retropie_setup.sh

Sélectionner l'option :

  • Manage packages > Manage driver packages > xpad > Install from sources
Si l'installation a lieu sur un système utilisant l'UEFI avec Secure Boot, le script d'installation générera une nouvelle Machine-Owner Key (MOK). Cette clé devra être enrôlée dans le firmware lors du prochain démarrage. Pour cela un mot de passe devra être définit : il sera redemandé au prochain redémarrage.

Après l'installation, le redémarrage est nécessaire.

Pour vérifier que le module est bien chargé :

lsmod | grep xpad

Si ce n'est pas le cas, charger manuellement le module

modprobe -i xpad

Alternative : Installer le pilote xboxdrv

sudo apt-get install xboxdrv
 
# This command will allow the Xbox 360 controller to connect to your Retropie system. 
xboxdrv --detach-kernel-driver

Démarrer RetroPie et affecter les touches.

Appairage en Bluetooth

Si on utilise une manette sans fil, il faut l'appairer avec le système via Bluetooth.

Sur un bureau gnome

Depuis la console

# Start the Bluetooth service
sudo systemctl start bluetooth
 
# Pair the controller
bluetoothctl
[bluetooth]# power on
[bluetooth]# agent on
[bluetooth]# default-agent
[bluetooth]# scan on
# Wait for the controller to be detected
[bluetooth]# pair XX:XX:XX:XX:XX:XX
[bluetooth]# connect XX:XX:XX:XX:XX:XX

Depuis EmulationStation

  • Menu Configuration
  • Bluetooth
  • Register and Connect to Bluetooth Device puis presser sur le bouton central Xbox
  • Le périphrique apparait dans la liste apres quelques secondes
  • Choisir le mode de sécurité DisplayYesNo

Le message Successfully Registered and Connected doit apparaître.

il ne reste qu'a définir le mapping des boutons: Depuis l’écran d'accueil, afficher le menu start (touche entrée)

  • Configure input

Configuration boutons pour pifba

L'association des boutons est faite dans le fichier de configuration /opt/retropie/configs/fba/fba2x.cfg

Dépannages

Désactiver le module ERTM

Editer le fichier opt/retropie/configs/all/autostart.sh, ajouter la ligne suivante avant la commande

sudo bash -c 'echo 1 > /sys/module/bluetooth/parameters/disable_ertm'

Une fois le fichier modifié, redémarrer et configurer la manette en bluethooth:

Si la modification ne permet pas de rendre permanente la désactivation du mode ERTM, il est possible de modifier la configuration du module bluetooth via modprobe. Créer un fichier /etc/modprobe.d/bluetooth.conf contenant la directive suivante:

options bluetooth disable_ertm=Y

Pas de réponse de la manette Xbox One

If you have an Xbox One 2016 pad that is not responding until the Right Trigger is pressed when you play ROMS you can do the following to fix the problem :

Go to “/retropie/configs/all/retroarch-joypads/xbox wireless controller.cfg” Find the line that says “input_r2_axis” and change the number in quotes to +4 (input_r2_axis = “+4”).

Now save the file and you are all fixed.

I hope this helps someone.

Lorsque le receiver est connecté il n'est pas correctement reconnu par le pilote:

lsusb
Bus 001 Device 008: ID 045e:02fe Microsoft Corp.

Seul ID Vendor est completé. Le pilote xpad ne liste pas le produit 02fe.

usb-devices
T:  Bus=01 Lev=02 Prnt=02 Port=02 Cnt=03 Dev#=  8 Spd=480 MxCh= 0
D:  Ver= 2.01 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=045e ProdID=02fe Rev=01.00
S:  Manufacturer=Microsoft Inc.
S:  Product=XBOX ACC
S:  SerialNumber=270533
C:  #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=500mA
I:  If#= 0 Alt= 0 #EPs= 8 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)

La dernière lignre Driver=(none) confirme bien qu'aucun driver n'est associée au récepteur sans-fil.

Il existe un pilote en cours de développement https://github.com/medusalix/xow

cd /opt/retropie/supplementary
git clone https://github.com/medusalix/xow xow
cd xow
 
make BUILD=RELEASE
 
sudo make install
sudo systemctl enable xow
sudo systemctl start xow
 
reboot

Le gamepad n'utilisant pas le contrôleur Bluetooth intégré, celui-ci peut être désactivé si aucun périphérique ne l'utilise. Voir wiki desactiver-controleur-bluetooth

Comportement anormal des hotkeys

:TODO_DOCUPDATE:

  • Environemment : Ubuntu 25.10 (questing)
  • Manette : Xbox Wireless Controller
# Lister les périphériques d'entrée reconnus par le système
cat /proc/bus/input/devices

Dans la liste repérer la manette Xbox

I: Bus=0003 Vendor=045e Product=0b12 Version=0515
N: Name="Microsoft Xbox Series S|X Controller"
P: Phys=usb-0000:0f:00.0-4/input0
S: Sysfs=/devices/pci0000:00/0000:00:02.1/0000:03:00.0/0000:04:0c.0/0000:0f:00.0/usb3/3-4/3-4:1.0/input/input54
U: Uniq=
H: Handlers=kbd event9 js0
B: PROP=0
B: EV=20000b
B: KEY=7cdb000000000000 0 8000000000 0 0
B: ABS=3003f
B: FF=107030000 0

Pour tester et visualiser le mapping des bouton:

apt install joystick

Sources :

Références

ludique/retrogaming/retropie/installation-manette-xbox.1769974041.txt.gz · Dernière modification : 2026/02/01 19:27 de yoann