web-dev-qa-db-fra.com

Sixaxis (contrôleur PS3) ne fonctionne pas correctement connecté avec Bluetooth

J'utilise Ubuntu GNOME 16.10 64 bits.

Sur Steam, j'ai remarqué un comportement particulier. Si mon Sixaxis est connecté avec un câble USB, tout fonctionne correctement, mais si vous le connectez via Bluetooth, l'un des jeux ne le reconnaît pas ou les entrées sont bizarres (SELECT devient X)

Que puis-je faire pour résoudre ce problème?

1

Il se trouve que j’ai aussi un contrôleur à six axes et que j’avais à l’origine votre même problème.

Lorsque l'appareil est branché en mode USB, il se comporte comme prévu et la plupart des jeux le reconnaîtront comme étant le bon appareil. Sur Bluetooth, cela fonctionne sous une spécification différente, que la plupart des jeux ne supportent pas très bien sous Linux.

Le problème fondamental ici est que lorsque le contrôleur est sur USB, il est enregistré dans le noyau Linux en tant que périphérique HID avec tous ses codes, tels que les identifiants de produit et de fabricant. Cela permet aux jeux d'identifier rapidement et avec précision le contrôleur et de charger ses configurations.

Lorsque vous le connectez via Bluetooth, quel que soit le pilote Bluetooth utilisé, vous essayez de connecter le périphérique en tant que HID via le Xserver ou le gestionnaire de bureau utilisateur. Cela cache une grande partie des informations sur le périphérique dans le jeu ou l'application, et comme le support de Linux est généralement laissé dans la poussière comparé à Windows, les développeurs de jeux ou le moteur ne passent pas le temps d'ajouter ce niveau de compatibilité car il n'est pas très bien normalisé.

Le correctif/solution de contournement:

Facile:
Comme le "joystick" du jeu est maintenant un périphérique virtuel au lieu d’un périphérique USB, ils seront reconnus comme des périphériques complètement différents. Si le jeu le prend en charge, vous pouvez ajouter la configuration personnalisée avec les commandes remappées.

Moyen:
Vous pouvez remapper les commandes de la manette de jeu via une interface graphique très pratique. Peut-être que jstest-gtk, jscalibrator ou jscal fonctionnera. Vous pouvez également essayer d'autres outils non officiels pour remapper le joystick, bien que je n'ai pas encore trouvé ceux qui fonctionnent parfaitement avec Bluetooth.

Difficile:
La xboxdrv pourrait être utilisée pour remapper le contrôleur sur la Xbox, bien que cette solution soit probablement n’est pas la plus simple .
Une autre solution serait d’examiner d’autres pilotes Bluetooth (bien que je ne le recommande pas) qui offrent une meilleure prise en charge. Personnellement, j’ai trouvé le programme blueman extrêmement utile sans avoir à réinstaller les pilotes Bluetooth.

J'espère que mon expérience aide.

1
Robobenklein