Steam controller: connecter votre manette sous Debian

J'ai fait récemment l'acquisition d'une manette Steam. Je pensais que c'était plug-and-play mais pas tout à fait. Heureusement que SteamOS est basé sur Debian et que je me doutais qu'il y avait un moyen de faire fonctionner ce périphérique. Après de nombreuses recherches, j'ai pas trouvé tout de suite s'il fallait ajouter des paquets ou éditer certains fichiers de configuration.

Pour faire fonctionner et appairer la manette, il faut lancer Steam en mode Big Picture et aller dans le menu: Paramètres > Contrôleur de jeu > Ajouter.

Si ça ne marche pas, voici les choses à faire si vous rencontrez des problèmes pour faire fonctionner ce matériel:

Tuto obsolète:
Il existe un paquet steam-devices dans les dépôts Debian (Stretch et Sid) pour ajouter les règles udev correspondant à la manette Steam.
Pour Jessie, il suffit de télécharger manuellement le paquet et de récupérer le contenu de /lib/udev/rules.d/99-steam-controller-perms.rules pour l'ajouter à votre configuration.

La première modification que j'ai effectuée consiste à ajouter un fichier /etc/udev/rules.d/99-steam-controller :

/etc/udev/rules.d/99-steam-controller
# This rule is needed for basic functionality of the controller in Steam and keyboard/mouse emulation
SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", MODE="0666"

# This rule is necessary for gamepad emulation; make sure you replace 'pgriffais' with the username of the user that runs Steam
KERNEL=="uinput", MODE="0660", GROUP="YOURUSERNAME", OPTIONS+="static_node=uinput"

Il faut bien penser à remplacer pgriffais par votre nom d'utilisateur, on peut le trouver en utilisant:

$user
whoami 

Ensuite, j'ai eu du mal à trouver cette modification mais c'est bien présent dans le Debian Bug report. Il faut ajouter le fichier /lib/udev/rules.d/99-steam-controller-perms.rules :

/lib/udev/rules.d/99-steam-controller-perms.rules
#USB devices
SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", MODE="0666"
# Oculus HID Sensor naming and permissioning
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="2833", MODE="0666" 

Depuis, la manette Steam est reconnu correctement avec ou sans fil. A noter que le firmware du controller a été mis à jour quand je l'ai testé sous Windows et je sais pas comment ça doit se passer sous Debian. Steam m'a proposé de passer le client Steam en version beta; j'ai accepté et on verra bien.

Je ne vais pas dans les détails puisque je n'ai pas eu le temps de vraiment tester jusque là toutes les possibilités. Éventuellement je reviendrai dessus si ça intéresse quelqu'un. Un billet quick and dirty mais c'est toujours mieux que d'écumer les moteurs de recherche.

Captures d'écran

steam-controller_1 steam-controller_2 steam-controller_3 steam-controller_4 steam-controller_5 steam-controller_6 steam-controller_7 steam-controller_8 steam-controller_9a steam-controller_9b steam-controller_10 steam-controller_11

Ressources

Debian jessie 8.2
Steam 1.0.0.49-1 (09 nov 2015)

2016 nIQnutn CC-BY
Vus : 1246
Publié par nIQnutn : 73