Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
dualshock [Le 07/07/2014, 22:16]
BlackEco Mise à jour de la section Dualshock 3 et ajout de la sous-section Utilisation de plusieurs manettes
dualshock [Le 25/11/2022, 20:44] (Version actuelle)
Xzu Rukneg [Configuration avancée] add image
Ligne 1: Ligne 1:
 {{tag>​matériel joystick tutoriel}} {{tag>​matériel joystick tutoriel}}
  
-====== Dualshock : utiliser sa manette de PlayStation 3 ou 4 sur Ubuntu ====== +====== Dualshock : utiliser sa manette de PlayStation ​1, 2, 3 ou 4 sur Ubuntu ====== 
-Cette page concerne l'​utilisation des manettes ​Sixaxis ​et Dualshock 3 pour PlayStation 3 et Dualshock 4 pour PlayStation 4 sur Ubuntu.+Cette page concerne l'​utilisation des manettes ​PSX basiques, Dualshock 1 et 2, Sixaxis & Dualshock 3 pour PlayStation 3 et Dualshock 4 pour PlayStation 4 sur Ubuntu.
  
-<note tip>De nombreux jeux ne peuvent être joués qu'à la manette ​de Xbox 360 (notamment ceux disponible sur [[:​steam|Steam]]), ainsi les guides ci-dessous se concentrent sur l'​utilisation de la Dualshock/​Sixaxis comme une manette de Xbox 360.</​note>​+<note tip>De nombreux jeux ne peuvent être joués qu'avec une manette ​type Xbox (joypad générique) ​notamment ceux disponible sur [[:​steam|Steam]],​ ainsi les guides ci-dessous se concentrent sur l'​utilisation de la Dualshock/​Sixaxis comme une manette de Xbox 360.</​note>​
  
-===== Sixaxis et Dualshock ​===== +===== Dualshock ​et Dualshock2 ​===== 
-<​note>​Son fonctionnement a été testé sur Ubuntu 12.10 et supérieurs.</​note>​+La manette dualshock est sortie pour la PS1 (PSX), la dualshock 2 pour la PS2. 
 + 
 +==== Installation en USB ==== 
 +Il vous faut un adaptateur USB, la plupart font PS1&​2 ​et proposent deux entrées. (J'ai testé le plus bas prix de 2012 et ça fonctionne très bien). C'est tout, ensuite les pads sont reconnus nativement.
  
 ==== Utilisation en USB ==== ==== Utilisation en USB ====
 +Testez votre jeu sans autre configuration,​ dans beaucoup de cas il n'y a rien à faire.
 +<note important>​Attention à bien vérifier la touche "​analog"​ qui change beaucoup la configuration du pad si elle est activée ou non! </​note>​
 +
 +Si la configuration n'est pas bonne, vérifiez si le jeu propose une reconfiguration ou pas. Si oui c'est la méthode à préférer.
 +Si ce n'est toujours pas bon, voir ci dessous.
 +
 +==== Configuration avancée ====
 +Si vous avez envie d’utiliser votre pad pour "ce que vous voulez",​ ou si la configuration de votre jeu ou de votre émulateur ne conviens pas, on peut tester des outils de configuration. Attention pour certains jeux (comme The last tinker), il est impossible de configurer par un logiciel externe, le jeux reprends toujours la main et impose sa configuration. Il faut alors faire avec, ou carrément éditer le programme du jeu lui même! (ou simplement ses fichiers de configuration).
 +
 +=== Jusqu'​à ubuntu 12.04 ===
 +Utilisez [[qjoypad|]].
 +
 +=== Depuis ubuntu 16.04 ===
 +Utilisez [[antimicro|]].
 +Vous pouvez alors commencer par essayer de faire passer votre dualshock pour une manette générique (type xbox).
 +Lancez Antimicro, et cliquez sur "​**controller mapping**":​ le programme va vous demander quel bouton choisir pour correspondre à une manette générique. (Attention toujours au bouton "​**analog**"​!!)
 +
 +Si cela ne suffit toujours pas, il faut noter ce qui apparaît __dans la fenêtre en bas__, qui est l’appellation SDL des boutons et stick de votre pad.
 +Par exemple, pour ma dualshock générique PSX sous ubuntu16.04,​ cela me donne:
 +<​file>​03000000100800000100000010010000,​Twin USB Joystick,​platform:​Linux,​a:​b2,​b:​b1,​x:​b3,​y:​b0,​back:​b8,​start:​b9,​leftshoulder:​b6,​rightshoulder:​b7,​leftstick:​b10,​rightstick:​b11,​leftx:​a0,​lefty:​a1,​rightx:​a3,​righty:​a2,​lefttrigger:​b4,​righttrigger:​b5,​dpup:​h0.1,​dpleft:​h0.8,​dpdown:​h0.4,​dpright:​h0.2,​
 + </​file>​
 +Ce qui nous intéresse, c'est ce qu'il y a après "//​Twin USB Joystick,​platform:​Linux//":​ **a:b2** par exemple nous dit que le bouton correspondant au **A** pour une manette générique (donc pour un jeu) __s'​appelle "​**bouton 2**" pour la librairie SDL__, soit "​**b2**"​ ou même "​**2**"​.
 +C'est ce dernier chiffre qu'il faut utiliser lorsqu'​on édite un fichier de configuration pour paramétrer notre pad, par exemple dans un émulateur, en mettant "​**button (2)**"​.
 +En résumé, dans mon cas cela donne:
 +{{::​psxpad-sdl.png?​400|}}
 +<​note>​
 +Lors de vos tests, pensez à vérifier si **Antimicro** est toujours lancé ou pas, pour savoir ce que vous faites!</​note>​
 +<note important>​Attention,​ la nomenclature utilisée par antimicro n'est pas la même que celle de SDL, bouton1 dans antimicro signifie B0 dans SDL.. vérifiez bien ce qui est écris dans le code SDL!</​note>​
 +Autre exemple de codes SDL d'une manette PS3 SHANWAN : 
 +{{:​materiel:​joystick:​sdl-ps3pad.png|}}
 +===== Sixaxis et Dualshock 3 =====
 +==== Fonctionnement Natif – Ubuntu 20.04 et ultérieurs ====
 +<note tip>​Testé sur Ubuntu 20.10 et Ubuntu 20.04 </​note>​
 +
 +Les manettes Dualshock 3 (et 4?) sont prises en charge directement par le noyau Linux et il n’est donc pas nécessaire d’installer quoi que ce soit.
 +Pour vérifier vous pouvez taper dans un terminal **lsusb**, exemple:
 +<​code>:​~$ lsusb
 +Bus 002 Device 006: ID 054c:0268 Sony Corp. Batoh Device / PlayStation 3 Controller
 +</​code>​
 +
 +=== Utilisation en USB ===
 +<note important>​Si vous voulez l’utiliser en Bluetooth également, il est préférable de faire la connexion Bluetooth d’abord.</​note>​
 +
 +Branchez la manette avec le câble fourni. C’est tout.
 +
 +<note important>​Malheureusement il semble que la manette va allumer la PlayStation lorsque vous aller la débrancher,​ car elle y reste associée. Pensez à l’éteindre.</​note>​
 +
 +=== Utilisation en Bluetooth ===
 +
 +L’utilisation en Bluetooth va associer la manette avec votre PC. Cela évitera d’allumer la console lorsque vous débranchez le câble, par contre il faudra la ré-associer à la console (avec le câble) si vous voulez à nouveau l’utiliser avec celle-ci.
 +
 +== Première connexion ==
 +
 +  - Si votre manette est déjà branchée en USB, débranchez-là
 +  - Ouvrez le gestionnaire de périphériques [[bluetooth]]
 +  - Branchez votre manette en USB avec le câble fourni
 +  - Acceptez la pop-up pour approuver la connexion {{ :​bluetooth:​confirmer-connexion-bluetooth-dualshock3.png?​nolink |}}
 +  - Débranchez le câble et appuyez sur le logo PlayStation pour reconnecter la manette
 +
 +Lors des prochaines connexions, appuyez simplement sur le logo PlayStation pour connecter la manette.
 +
 +== Éteindre la manette ==
 +
 +Il existe deux méthodes pour éteindre une manette :
 +
 +  * Allez dans le gestionnaire de périphérique Bluetooth, sélectionnez la manette puis désactivez la connexion {{ :​bluetooth:​dualshock3-bluetooth-details.png?​nolink |}}
 +  * Ou maintenez L2, R2 et le logo PlayStation pendant 10 secondes
 +
 +==== Ancienne méthode – Ubuntu 19.10 (?) et antérieurs ====
 +
 +<note tip>Son fonctionnement a été testé sur Ubuntu 12.10 et supérieurs.</​note>​
 +<note help>Et supèrieur? lesquels exactement?</​note>​
 +=== Utilisation en USB ===
   - [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt>​xboxdrv]]**   - [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt>​xboxdrv]]**
-  - Branchez la manette en USB+  - Branchez la manette en %%USB%%
   - Appuyez sur le bouton PlayStation de celle-ci   - Appuyez sur le bouton PlayStation de celle-ci
-  - Ouvrez un terminal et rentrer ​: <​code>​sudo xboxdrv --detach-kernel-driver</​code>​+  - Ouvrez un [[:terminal]] et rentrez la [[:​commande_shell|commande]] ​: <​code>​sudo xboxdrv --detach-kernel-driver</​code>​
  
 Vous devriez alors voir les états de chaque touches et joysticks s'​afficher dans le terminal. Vous pouvez utiliser l'​option **<​nowiki>​--silent</​nowiki>​** pour les masquer. Vous devriez alors voir les états de chaque touches et joysticks s'​afficher dans le terminal. Vous pouvez utiliser l'​option **<​nowiki>​--silent</​nowiki>​** pour les masquer.
  
-=== Utilisation de plusieurs manettes ​=== +== Utilisation de plusieurs manettes == 
-Vous pouvez utiliser une manette supplémentaire en utilisant le paramètre **<​nowiki>​-i</​nowiki>​** suivi de l'​identifiant de la manette que vous souhaitez utiliser (la première étant 0, la deuxième 1, la troisième 2 et ainsi de suite). ​+Vous pouvez utiliser une manette supplémentaire en utilisant le paramètre **<​nowiki>​-i</​nowiki>​** suivi de l'​identifiant de la manette que vous souhaitez utiliser (la première étant 0, la deuxième 1, la troisième 2 et ainsi de suite).
   - Activez la première manette comme décrit ci-dessus   - Activez la première manette comme décrit ci-dessus
   - Branchez la seconde manette   - Branchez la seconde manette
-  - Ouvrez un nouveau terminal et entrez la commande suivante : <​code>​sudo xboxdrv --detach-kernel-drive -i 1</​code>​+  - Ouvrez un nouveau ​[[:terminal]] et entrez la [[:​commande_shell|commande]] suivante : <​code>​sudo xboxdrv --detach-kernel-driver ​-i 1</​code>​
   - Répétez les étapes 2 et 3 autant de fois qu'il y a de de manettes à utiliser, en prenant bien soin de modifier l'​identifiant.   - Répétez les étapes 2 et 3 autant de fois qu'il y a de de manettes à utiliser, en prenant bien soin de modifier l'​identifiant.
-Vous pouvez bien entendu ajouter le paramètre <​nowiki>​--silent</​nowiki>​ pour masquer les entrées des manettes.+Vous pouvez bien entendu ajouter le paramètre ​**<​nowiki>​--silent</​nowiki>​** pour masquer les entrées des manettes.
  
-<​note>​Théoriquement il est possible de connecter autant de manettes que supporté par un jeu. Cependant ​il est rare qu'un jeu supporte plus de quatre manettes et cela n'a été testé qu'​avec deux manettes.</​note>​+<​note>​Théoriquement il est possible de connecter autant de manettes que supporté par un jeu. Cependant ​nous n'avons testé qu'​avec deux manettes.</​note>​
  
-==== Utilisation en Bluetooth ​==== +=== Utilisation en Bluetooth === 
-<​note>​Pour ​le moment ​aucune méthode simple d'​utilisation ne permet l'​utilisation des Sixaxis et Dualshock 3 en Bluetooth tout en émulant une manette de Xbox 360.</​note>​+<​note>​Pour ​les anciennes versions d’Ubuntu, ​aucune méthode simple d'​utilisation ne permet l'​utilisation des Sixaxis et Dualshock 3 en Bluetooth tout en émulant une manette de Xbox 360.</​note>​
  
 ===== Dualshock 4 ===== ===== Dualshock 4 =====
  
-Un driver pour la Dualshock 4 est [[https://​github.com/​chrippa/​ds4drv|en cours de développement ​par la communauté]]. Ce driver supporte ​actuellement ​plusieurs manettes, le changement de couleur de la LED (en USB uniquement),​ l'​utilisation du touchpad comme une souris et ne supporte pas encore les vibrations. ​+Un driver pour la Dualshock 4 [[https://​github.com/​chrippa/​ds4drv|a été développé ​par la communauté]]. Ce driver supporte plusieurs manettes, le changement de couleur de la LED (en USB uniquement),​ l'​utilisation du touchpad comme une souris et ne supporte pas encore les vibrations.
  
-<​note>​Son fonctionnement n'a été testé que sur Ubuntu 13.10 et 14.04 LTS avec la clé Bluetooth ASUS USB-BT211.</​note>​+<​note ​tip> 
 +Le Dualshock 4 ne nécessite aucun driver pour le jeu en USB. Il est correctement mappé ​sur un device dans /​dev/​input/,​ reconnu par Steam (et fonctionne dans les jeux), ainsi que par la Gamepad API des navigateurs Internet (testé sous Firefox). 
 +</​note>​
  
-==== Pré-requis ====  +==== Pré-requis ==== 
-  - [[:​python|Python]] ​2.7 ou 3.3 et supérieurs +  - [[:​python|Python]] 3.3 et supérieurs 
-  - Les paquets **[[apt>python-setuptools]]** et **[[apt>​bluez-utils]]**+  - Les paquets **[[apt>python3-setuptools]]** et **[[apt>​bluez-utils]]**
  
 ==== Installation ==== ==== Installation ====
-  - [[:​tutoriel:​comment_installer_un_paquet|Installer ​les paquets]] **[[apt>python-pip]]**, **[[apt>python-pyudev]]** et **[[apt>python-evdev]]** +  - [[:​tutoriel:​comment_installer_un_paquet|Installez ​les paquets]] **[[apt>python3-pip]]**, **[[apt>python3-pyudev]]** et **[[apt>python3-evdev]]**, puis depuis un [[:​terminal]] en entrant les [[:​commande_shell|commandes]] suivantes : 
-  - Installez ds4drv avec pip : <​code>​sudo ​pip install ds4drv</​code>​+  - Installez ds4drv avec pip : <​code>​sudo ​pip3 install ds4drv</​code>​
   - Téléchargez ce fichier de règles [[[:​udev|udev]] : <​code>​sudo wget -O /​etc/​udev/​rules.d/​50-ds4drv.rules https://​raw.githubusercontent.com/​chrippa/​ds4drv/​master/​udev/​50-ds4drv.rules</​code>​   - Téléchargez ce fichier de règles [[[:​udev|udev]] : <​code>​sudo wget -O /​etc/​udev/​rules.d/​50-ds4drv.rules https://​raw.githubusercontent.com/​chrippa/​ds4drv/​master/​udev/​50-ds4drv.rules</​code>​
   - Rechargez les règles udev : <​code>​sudo udevadm control --reload-rules   - Rechargez les règles udev : <​code>​sudo udevadm control --reload-rules
Ligne 48: Ligne 126:
  
 ==== Utilisation en USB ==== ==== Utilisation en USB ====
-  - Branchez votre Dualshock 4 en USB +  - Branchez votre Dualshock 4 en %%USB%% 
-  - Entrez la commande suivante : <​code>​ds4drv --hidraw --emulate-xboxdrv</​code>​+  - Entrez ​dans un [[:​terminal]] ​la [[:​commande_shell|commande]] suivante : <​code>​ds4drv --hidraw --emulate-xboxdrv</​code>​
  
 ==== Utilisation en Bluetooth ==== ==== Utilisation en Bluetooth ====
 <note important>​[[https://​github.com/​chrippa/​ds4drv/​wiki/​Bluetooth%20dongle%20compatibility|Les cartes et clés Bluetooth 2.0 posent problème]],​ préférez l'​utilisation d'un équipement compatible Bluetooth 2.1 ou supérieur.</​note>​ <note important>​[[https://​github.com/​chrippa/​ds4drv/​wiki/​Bluetooth%20dongle%20compatibility|Les cartes et clés Bluetooth 2.0 posent problème]],​ préférez l'​utilisation d'un équipement compatible Bluetooth 2.1 ou supérieur.</​note>​
   - Connectez ou activez votre équipement Bluetooth   - Connectez ou activez votre équipement Bluetooth
-  - Maintenez les boutons PlayStation et Share de votre Dualshock 4 appuyés jusqu'​à ce que la LED clignote rapidement en blanc +  - Maintenez les boutons PlayStation et Share de votre Dualshock 4 appuyés jusqu'​à ce que la %%LED%% clignote rapidement en blanc 
-  - Entrez la commande suivante : <​code>​ds4drv --emulate-xboxdrv</​code>​+  - Entrez ​dans un [[:​terminal]] ​la [[:​commande_shell|commande]] suivante : <​code>​ds4drv --emulate-xboxdrv</​code>​
  
-<note tip>Si jamais cela ne venait pas à fonctionner,​ connectez votre Dualshock 4 en USB (tout en gardant l'​équipement Bluetooth activé) et utilisez la commande suivante : <​code>​ds4drv --hidraw --emulate-xboxdrv</​code></​note>​+<note tip>Si jamais cela ne venait pas à fonctionner,​ connectez votre Dualshock 4 en %%USB%% (tout en gardant l'​équipement Bluetooth activé) et depuis un [[:​terminal]], ​utilisez la [[:​commande_shell|commande]] suivante : <​code>​ds4drv --hidraw --emulate-xboxdrv</​code></​note>​
  
-<​note>​Il se peut que votre Dualshock 4 ne s'​éteigne pas après avoir été débranchée. Dans ce cas, appuyez sur le bouton PlayStation jusqu'​à ce que la LED s'​éteigne.</​note>​+<​note>​Il se peut que votre Dualshock 4 ne s'​éteigne pas après avoir été débranchée. Dans ce cas, appuyez sur le bouton PlayStation jusqu'​à ce que la %%LED%% s'​éteigne.</​note>​
  
 ==== Changer la couleur de la barre lumineuse ==== ==== Changer la couleur de la barre lumineuse ====
Ligne 72: Ligne 150:
   - Connectez ou activez votre équipement Bluetooth   - Connectez ou activez votre équipement Bluetooth
   - Maintenez les boutons PlayStation et Share de vos Dualshock 4 appuyés jusqu'​à ce que les LED clignotent rapidement en blanc   - Maintenez les boutons PlayStation et Share de vos Dualshock 4 appuyés jusqu'​à ce que les LED clignotent rapidement en blanc
-  - Entrez la commande suivante : <​code>​ds4drv --emulate-xboxdrv --led ff0000 --next-controller --emulate-xboxdrv --led 00ff00</​code>​ +  - Entrez ​dans un [[:​terminal]] ​la [[:​commande_shell|commande]] suivante : <​code>​ds4drv --emulate-xboxdrv --led ff0000 --next-controller --emulate-xboxdrv --led 00ff00</​code>​
-Le paramètre **<​nowiki>​--led</​nowiki>​** est optionnel, mais permet de distinguer les deux manettes, ce qui est fort pratique.+
  
-<​note>​Théoriquement il est possible de connecter autant de manettes que supporté par un jeu. Cependant ​il est rare qu'un jeu supporte plus de quatre manettes et cela n'a été testé qu'​avec deux manettes.</​note>​+Le paramètre **<​nowiki>​--led</​nowiki>​** est optionnel, mais cela permet de distinguer les manettes, ce qui peut s'​avérer pratique. 
 + 
 +<​note>​Théoriquement il est possible de connecter autant de manettes que supporté par un jeu. Cependant n'avons testé qu'​avec deux manettes.</​note>​
  
 ==== Erreur Transport endpoint is not connected ==== ==== Erreur Transport endpoint is not connected ====
Ligne 82: Ligne 161:
 [info][bluetooth] Found device XX:​XX:​XX:​XX:​XX:​XX [info][bluetooth] Found device XX:​XX:​XX:​XX:​XX:​XX
 [error][bluetooth] Unable to connect to detected device: Failed to set operational mode: [Errno 107] Transport endpoint is not connected</​code>​ [error][bluetooth] Unable to connect to detected device: Failed to set operational mode: [Errno 107] Transport endpoint is not connected</​code>​
-Pour régler ce soucis, arrêtez le programme en appuyant sur **Ctrl + Z** ouvrez les paramètres Bluetooth et supprimez les entrées nommées "​Wireless Controller"​.+Pour régler ce souci, arrêtez le programme en appuyant sur **Ctrl + C**, [[bluetooth#​depuis_votre_ordinateur|ouvrez les paramètres Bluetooth]] et supprimez les entrées nommées "​Wireless Controller"​.
  
 Ceci devrait régler le problème et vous pouvez essayer à nouveau d'​utiliser votre ou vos manettes. Ceci devrait régler le problème et vous pouvez essayer à nouveau d'​utiliser votre ou vos manettes.
 +
 +----
 +//​Contribution : [[utilisateurs:​BlackEco]]//​
  • dualshock.1404764214.txt.gz
  • Dernière modification: Le 07/07/2014, 22:16
  • par BlackEco