Ligne de commande
Contents
Motivation
GIMX peut s'exécuter depuis un terminal Linux sans nécessiter d'environnement graphique.
Cela améliore les performances, en particulier sur les petites matériels comme le raspberry pi ou les clients légers.
C'est aussi utile pour d'autres applications comme l'automatisation.
Linux + bluetooth + PS3
Ecrire l'adresse du dongle
Il est hautement recommandé d'utiliser un dongle CSR Bluecore4-rom. Voir la liste de compatibilité.
Connecter un Sixaxis précédemment appairé avec la PS3 cible.
Taper dans un terminal :
sixaddr
Résultat:
Current Bluetooth master: ps3_bt_address Current Bluetooth Device Address: sixaxis_bt_address
Afficher l'adresse actuelle :
bdaddr -i hciN
où N est l'index du dongle (taper "hciconfig -a" pour voir tous les dongles).
La noter pour pouvoir la restaurer plus tard.
Ecrire l'adresse du dongle :
bdaddr -r -i hciN sixaxis_bt_address
Vérifier le résultat :
bdaddr -i hciN
Lancer GIMX
Dans un terminal:
gimx --type Sixaxis --config filename --hci bt_device_index --bdaddr ps3_bt_address
- file_name
- Le nom du fichier de config, dans le répertoire ~/.gimx/config (ex : toto.xml).
- Cet argument est obligatoire.
- Utilisez des backslashs avant les espaces.
- bt_device_index
- L'index de l'adaptateur bluetooth (ex : 0 pour hci0, 1 pour hci1, etc).
- Cet argument est optionnel, l'index par défaut est 0.
- ps3_bt_address
- Cet argument est obligatoire.
Linux + bluetooth + PS4
Setup
Le setup établit l'appairage bluetooth entre la PS4 et le dongle, et entre le dongle et la DS4.
Il doit être exécuté de nouveau si la DS4 est réutilisée (cad ré-appairée) avec la PS4.
Télécharger le script d'aide :
wget https://raw.github.com/matlo/GIMX-tools/master/PS4/gimx-ps4-helper.sh -O gimx-ps4-helper.sh
Le rendre exécutable :
chmod +x gimx-ps4-helper.sh
L'exécuter :
sudo ./gimx-ps4-helper.sh
Suivre les instructions. Une exécution réussie affiche ceci :
$ sudo ./gimx-ps4-setup.sh Unplug any Dualshock 4. Unplug any teensy. Unpug the bluetooth dongle. Then press enter. Plug the bluetooth dongle. The bluetooth dongle address is XX:XX:XX:XX:XX:XX. The bluetooth hci number is 1. Plug the DS4 with a USB cable. The DS4 address is YY:YY:YY:YY:YY:YY. Unplug the DS4. Plug the teensy. Unplug the teensy. Plug the teensy to the PS4, and wait a few seconds. Then plug the teensy back to the PC. The PS4 address is ZZ:ZZ:ZZ:ZZ:ZZ:ZZ. Everything was successful: setting dongle link keys. To run gimx, type: gimx -t DS4 -c config.xml -h 1 -b ZZ:ZZ:ZZ:ZZ:ZZ:ZZ
Lancer GIMX
1. Le service bluetooth doit être arrêté avant de démarrer GIMX (cela permet à GIMX de gérer les connexions entrantes) :
sudo service bluetooth stop
Si votre système démarre automatiquement le service bluetooth vous devez le désactiver.
2. Lancer GIMX :
gimx -t DS4 -c <config file> -h <hci number> -b <PS4 bdaddr>
<config file> est le nom du fichier de configuration à utiliser.
<hci number> est l'index hci de l'adaptateur bluetooth, par exemple 0 s'il n'y a qu'un adaptateur (interne ou externe). Exécutez 'hciconfig' si vous n'êtes pas sûr de la valeur.
<PS4 bdaddr> est l'adresse bluetooth de la PS4.
3. Démarrer la DS4. Elle devrait se connecter à GIMX, qui à son tour devrait se connecter à la PS4.
Linux ou Windows + DIY USB adapter
Dans un terminal:
gimx --config file_name --port /dev/ttyUSBX ou gimx -c file_name -p /dev/ttyUSBX
options pour gimx :
- --config file_name
- Le nom du fichier de config, dans le répertoire ~/.emuclient/config directory (ex : toto.xml).
- Cet argument est obligatoire.
- --port /dev/ttyUSB0
- Le port série. Ex: /dev/ttyUSB0 sous Linux, COM4 sous windows.
- Seulement obligatoire avec un adaptateur USB DIY.
- --refresh 4
- La période de rafraîchissement, en ms.
- Optionnel. Il est déconseiller de forcer ce paramètre.
Linux ou Windows + GPP/Cronus/Titan
Dans un terminal :
gimx --config file_name --type GPP ou gimx -c file_name -t GPP
options:
- --config file_name
- Le nom du fichier de config, dans le répertoire ~/.gimx/config (ex : toto.xml).
- Cet argument est obligatoire.
- --refresh 4
- La période de rafraichissement, en ms.
- Optionnel. Il est déconseillé d'utiliser cette option.
Linux ou Windows + GIMX distant
Dans un terminal :
gimx --config file_name --dst IP:port ou gimx -c file_name -d IP:port
options de gimx:
- --config file_name
- Le nom du fichier de config, dans le répertoire ~/.gimx/config directory (ex : toto.xml).
- Cet argument est obligatoire.
- --dst IP:port
- L'IP et le port de destination. Ex : 127.0.0.1:51914.
- Le GIMX distant doit être lancé avec l'argument --src, avec la même valeur de IP:port.
Mode de test
Il est possible de lancer GIMX sans connexion en sortie. Cela est utile à des fins de test et de debug.
Pour activer le mode de test, supprimer les arguments --dst, --bdaddr et --port, et ajouter un argument --type.
Les valeurs possibles pour l'argument --type sont : joystick, 360pad, Sixaxis, PS2pad, XboxPad, DS4, T300RS_PS4, G27_PS3 et G29_PS4.
Exemple :
gimx -c config.xml --status -t DS4
Contrôleurs multiples
Un argument --bdaddr, --port ou --dst termine les options du contrôleur courant.
Les arguments non-globaux qui suivent s'appliquent aux instances de contrôleurs suivantes.
Options générales
Ces options s'appliquent à toutes les instances de contrôleurs.
- --curses
- curses Affiche l'état du contrôleur avec ncurses.
- La calibration de la souris est disponible par cette interface.
- --status
- Affiche l'état du contrôleur dans un terminal.
- --nograb
- Ne pas capturer le pointeur de la souris.
- --force-updates
- Envoyer l'état des axes et boutons même en cas d'inactivité (pour une compatibilité avec les jeux comme DNF).
- --subpos
- Améliorer la précision des sticks (compense les arrondis).
- --window-events
- Lire les évènements de la fenêtre à la place des évènements matériels. Ceci permet d'utiliser GIMX avec des périphériques émulés (claviers et souris virtuels) et avec des outils d'automatisation tels que AutoHotkey (Windows) ou xdotool (GNU/Linux).
- --keygen key
- Générer un évènement au démarrage de gimx.
- La principale utilisation est l'automatisation de l'exécution de macros.
- Les évènements non générés par des macros sont ignorés.
- Un autre cas d'utilisation est l'envoi d'une commande unique (requiert l'utilisation d'une macro car la touche n'est pas relâchée).
- --skip_leds
- Filtrer les commandes de led du flux de commandes FFB (ajustement de performance pour les volants G27/G29 sur les configs légères)
Options de contrôleur
- --event "nom(valeur)"
- Il est possible d'envoyer des contrôles à la console depuis la ligne de commande, sans avoir à créer de configuration et de macros à utiliser avec l'argument --keygen.
- Les noms et les domaines de valeurs sont détaillés sur la page Controller Maps.
- Exemple:
gimx --event "rel_axis_0(127)" --event "rel_axis_3(-128)" --event "abs_axis_8(255)" --event "abs_axis_10(0)" -d 127.0.0.1:51914
- Pour un Sixaxis, cette commande déplace le stick gauche à droite, le stick droit vers l'avant, appuie sur le bouton cercle à fond, et relâche le bouton carré.
- L'état des autres contrôles est réinitialisé, c'est-à-dire que tous les autres boutons et axes sont relâchés (dans la commande ci-dessus, --event "abs_axis_10(0)" est inutile).
- gimx devrait terminer son exécution en environ 10ms.
- Lorsqu'on utilise cette option, il est recommandé d'exécuter deux instances de GIMX, en particulier dans les cas suivants:
- la console cible est la PS4 (une instance doit être connectée en permanence à cause de l'authentification)
- la méthode de connexion est le bluetooth (la connexion bluetooth prend du temps à s'établir)
- Exemple:
gimx --src 127.0.0.1:51914 -t Sixaxis -b XX:XX:XX:XX:XX:XX gimx --event "abs_axis_10(255)" --dst 127.0.0.1:51914
- --src IP:port
- Spécifie une IP et un port d'écoute. Ex: 127.0.0.1:51914.
- Cet argument doit être placé avant les arguments --bdaddr et --port.