tuto rédigé par @Wanegain ici http://www.racingfr.com/forum/index.php?showtopic=48939
_________________
Je suis passé il n'y a pas longtemps sur SimTools et je me suis dit que ça serait peut être bien d'écrire quelques lignes expliquant comment j'ai fait le passage de X-Sim à SimTools.
Je connaissais déjà SimTools, vu que je l'avais utilisé pour le simulateur low cost, ce qui m'a permis de faire la transition de l'un à l'autre en 5 minutes !
Pour info, le code fournis est toujours compatible X-sim, mais il ne faut plus utiliser le plugin USB XPID, mais passer par Universal Serial Output. J'écrirai au moment voulu la manip à faire dans ce tuto.
Tout d'abord, SimTools c'est une suite de 3 logiciels :
PluginUpdater : un petit utilitaire qui va installer/mettre à jour vos plugins pour les jeux
GameManager : l'équivalent d'Extractor, qui récupère les données des jeux et les envois à GameEngine
GameEngine : l'équivalent de Converter qui va convertir la télémétrie et l'envoyer à la carte de contrôle (Arduino par exemple)
[size=4]PluginUpdater[/size]
Tout d'abord, il faut installer les plugins, on va donc ouvrir PluginUpdater (GameManager et GameEngine doivent être fermés)
Un simple glisser/déposer de l'archive suffit pour l'installer !
Si vous avez déjà installé le plugin et que c'est une mise à jour, alors vous allez voir apparaître ce message :
Si vous avez déjà effectué des réglages sur votre jeu et que vous avez modifié une des valeurs max/min alors cliquez sur non (sinon oui évidemment)
Si le plugin a correctement été pris en compte alors vous aurez ce message
NOTE IMPORTANTE : Si vous utilisez 2 PC il faut installer les plugins sur les deux !
[size=4]GameManager[/size]
Lorsque vous allez le lancer, vous allez voir apparaître une sorte d'image publicitaire que vous pouvez fermer :
il faut cliquer sur l'icone dans la barre des tâches pour faire apparaître l'interface.
Vous avez un menu déroulant avec la liste des plugins installés, choisissez votre jeu et cliquez sur Tools et IP Setting pour indiquer l'adresse du pc où se trouve GameEngine (127.0.0.1) si c'est le même PC).
On va maintenant patcher le jeu (recliquez sur Tools pour revenir au menu principal), il faut cliquez sur Patching. Indiquez le chemin du jeu Edit Path et cliquez sur Patch Game. Pour la plupart des jeux (mais pas tous) il vous indiquera que le jeu est bien patché !
Le reste pas besoin d'y toucher.
Si vous lancez GameEngine sur le pc dont vous avez indiqué l'adresse alors (après quelques secondes) vous pourrez voir que les logiciels sont connectés :
Vous pouvez alors réduire le GameManager, vous n'avez plus rien à faire tant qu'il tourne en tâche de fond
[size=4]GameEngine[/size]
Par défaut il se lance aussi réduit dans la barre des tâches pour que la suite soit la plus discrète possible
Faites un double clic dessus (ou clic droit settings) pour faire apparaître l'interface :
On va aller dans Interface settings pour définir comment le pc communiquer avec l'Arduino :
Vérifiez que vos paramètres sont bien identiques à l'image ci-dessous (excepté le port COM).
EDIT : vous pouvez installer mon fichier de config qu'il suffit de glisser déposer dans l'onglet Tools sur Drag and Drop
Note : Si vous voulez réutiliser X-sim avec ce même code, il faut alors décocher toutes les interfaces dans Interfaces settings et aller dans Output setup, USO et mettre les valeurs de ~a01~ et ~a02~ sur 16 bits en binaire et value = ( value / 64 ). Il faut remplacer < Axis 1 > par ~a01~
Vous pouvez tester que ça fonctionne correctement en passant par Output Testing (Turn On) et en sélectionnant Axis Output :
Note : Pour tester avec le DOF output, il faut que le preset Default soit complété
Maintenant on va configurer les effets sur les moteurs dans Axis Assignments :
Donc par Axe je définis un effet par DOF.
Roll = rotation latérale (pour les jeux de voiture, c'est l'inclinaison de la voiture sur le côté)
Pitch = rotation longitudinale (pour les jeux de voiture, c'est l'inclinaison de la voiture avant/arrière)
Heave = translation vertical (effet vertical)
Yaw = rotation autour de l'axe vertical (pour les jeux de voiture, c'est l'effet de glisse)
Sway = translation latérale (forces gauche/droite pour les virages)
Surge = translation longitudinale (accélération/freinage)
La case Dir en orange sert à inverser le sens du moteur
La case Flt sert à ajouter un filtre sur un effet :
Smoothing - permet de lisser la valeur, si une valeur semble saccadée ou n'est pas fluide, cela peut être augmentée pour ajouter un effet de lissage en créant une valeur moyenne des valeurs qui viennent.
Washout - est pratique lorsque nous voulons remettre une valeur à 0. Par exemple l'effet de lacet qui ne tourne pas à 360 degrés pour donner le sentiment au pilote qu'il elle est toujours en train de tourner.
DeadZone - C'est pour définir une zone morte des mouvements
Boundary - C'est pour définir un seuil maximum afin qu'un seul effet n'utilise pas plus de X% de l'axe disponible.
[size=4]Vérifier que GameManager et GameEngine communiquent[/size]
Il faut faire clic droit sur l'icone dans la barre des tâches et Tuning Center, choisissez votre jeu et normalement en jeu les valeurs devraient bouger
Voici mon code à envoyer dans l'Arduino (mai 2016):
Avec la version 1.4 vous pouvez connecter un potentiomètre sur A5 qui permet de gérer la puissance globale du simulateur (pratique lorsqu'on passe de la Fiat 500 à une F1 )
Pour que ça fonctionne il faut éditer le fichier et modifier GP_select et mettre 1:
int GP_select = 1; //1:use potentiometer 0:always 100%