Page 1 sur 1
Probléme TARGET + Hotas Cougar
Publié : sam. sept. 03, 2011 11:55 am
par Cougar FFW04
Bonjour a tous et en particulier a ceux qui bidouille TARGET depuis quelques temps et qui pourront probablement m'aider... Enfin j'espère...
Je commence par ma config :
- Seven 64 bit
- Hotas Cougar sur port USB
- Pro pedals plugué sur Game port du Cougar (Aux port et Joystick non branchés)
Je continu par l'installation :
- Hotas Cougar Controm Panel installé et fonctionnel sans pb depuis belle lurette
- Foxy installé et fonctionnel depuis belle lurette
- TARGET téléchargé et installé il y a 2 jours
Et je termine par les problème et interrogations :
Première chose, mon Hotas Cougar fonctionne parfaitement sous Foxy, tout les axes sont bien reconnus. Tout allait donc pour le mieux dans le meilleur des mondes mais Foxy ne gère pas les MFD cougar et j'ai donc décidé de passer sous TARGET. Je sais que j'aurais pu continuer avec Foxy pour le Cougar et TARGET pour les MFD (ce qui m'aurait évité ces pb) mais j'ai fait le choix de tout gérer avec TARGET (meme si je n'ai pas encore désinstallé Foxy pour l'instant).
En ce qui concerne les axes j'ai déclaré :
sous Hotas Cougar CCP (avec
apply enable/disable Windows axes states coché)
1 -> Xaxis
2 -> Yaxis
3 -> Throttle
4 -> Microstick X
5 -> Antena Knob
6 -> Rudder
7 -> Range knob
8 -> Microstick Y
9 -> Left Toe brake
10 -> Right toe brake
sous TARGET
JOYX - DX_X_AXIS
JOYY - DX_Y_AXIS
RUDDER - DX_ZROT_AXIS
THROTTLE -> DX_Z_AXIS
ANTELEV -> DX_SLIDER_AXIS
MANRNG -> DX_THROTTLE_AXIS
RDRX -> DX_XROT_AXIS
RDYR -> DX_YROT_AXIS
Et je me suis fait un profil sous TARGET command GUI en mode basic. Pas vraiment de problème pour comprendre le fonctionnement du GUI et la programmation fonctionne dans 90% des cas... Subsiste quand même quelques problèmes que voici :
1) Impossible d'avoir a la fois le Range knob et le Antena knob fonctionnel

Je test sur un simple profil axmap2 qui génère les caractère a ou b mais ca marche soit avec le range knob soit avec l'antena knob mais jamais avec les 2... La permutation des mapping ANTELEV et MANRNG permute également celui qui marche/marche pas
2) Quand je fais un Run Config (j'écoute 2 coup de klaxon normal ou pas ??) et que je choisi Device Analyser j'ai une fenètre avec inscrit Périphérique Clavier PIH mais rien a voir avec ce qui est décrit a la page 30 du manuel TARGET en français... Je ne vois aucun symbole d'axe, aucun boutons...
Il doit donc y avoir un truc qui cloche mais quoi
Enfin quelques questions subsidiaires :
- Quand on a commencé une config en mode basic, y-t-il moyen de la rééditer en mode advanced pour avoir la gestion des in/out et des couches ?
- Tel que branché j'ai bien les palonniers mais pas les Toe Brake. Peut-on avoir Palo + Toe avec mon hardware ?
Merci d'avance de votre aide

Publié : sam. sept. 03, 2011 3:04 pm
par Cougar FFW04
Salut,
Grâce à Acrolys qui m'a ouvert les yeux sur le petit bouton rond en haut a gauche du Joystick analyser (le genre de truc sur lequel je n'aurais jamais eu l'idée de cliquer

) j'ai finalement retrouvé boutons et axes tel que décrit dans le manuel
Ceci devrait aider un peu dans la résolution du problème des axes range/antenne.
Alors verdict :
Quand je tourne le
bouton Antena :
A gauche en fenêtre Thrusmaster Hotas Cougar le
curseur Slider 0 bouge et les mouvement sont retranscris plus ou moins a l'identique sur le
curseur Throttle de la fenêtre Thrustmater Combined
Quand je tourne le bouton
Range :
A gauche en fenêtre Thrusmaster Hotas Cougar le
curseur Slider 1 bouge mais aucun mouvement n'est retranscris dans la fenêtre Thrustmater Combined
Une idée sur l'origine du problème
Merci d'avance

Publié : sam. sept. 03, 2011 3:40 pm
par ivanwfr
Vers le bas de la fenêtre TARGET Command GUI, tu as un bouton View Script.
Si tu peux recopier le code, je pourais te raconter tout ce qui s'y trouve traduit en français.
Je n'utilise pas le GUI parce que j'ai préféré éplucher le language de script pour en tirrer tout ce que je pouvais.
Le problème a forcément sa solution dans TARGET mais il restera à savoir si le GUI pourra la mettre en place dans son script... à voir.
...ça ressemble à ça:
[code]include "target.tmh"
int main()
{
Configure(&HCougar, MODE_EXCLUDED);
Configure(&T16000, MODE_EXCLUDED);
Configure(&LMFD, MODE_EXCLUDED);
Configure(&RMFD, MODE_EXCLUDED);
if(Init(&EventHandle)) return 1;
SetKBRate(32, 50);
SetKBLayout(KB_ENG);
MapKey(&Joystick, TG1, CHAIN( DOWN+'t', D(1000), UP+'t'));
.../...
SetSCurve(&Throttle, THR_RIGHT, 0, 0, 0, 0, 0);
MapAxis(&Throttle, THR_LEFT, DX_ZROT_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetSCurve(&Throttle, THR_LEFT, 0, 0, 0, 0, 0);
MapAxis(&Throttle, THR_FC, DX_SLIDER_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetSCurve(&Throttle, THR_FC, 0, 0, 0, 0, 0);
}
int EventHandle(int type, alias o, int x) {
DefaultMapping(&o, x);
}[/code]
Publié : sam. sept. 03, 2011 4:17 pm
par dimebug
"Peut-on avoir Palo + Toe avec mon hardware ?" : non car il faudrait que DirectX supporte 10 axes, alors qu'il est limité a 8 par perifs.
Si dans le "Device analyzer" sur la gauche, dans la colonne cougar, le curseur Slider 1 bouge, mais que dans le "combined" y'a rien qui bouge, c'est qu'il y a un mapping de faux sous la GUI.
Comme le Cougar a la possibilité de réorganiser l'ordre de sortie des axes (sans que T.A.R.G.E.T puisse le savoir), il se peut que les dénominations des axes en entrée soit fausses sous Target, cherche de ce coté la.
Publié : sam. sept. 03, 2011 5:46 pm
par Cougar FFW04
dimebug a écrit :
Comme le Cougar a la possibilité de réorganiser l'ordre de sortie des axes (sans que T.A.R.G.E.T puisse le savoir), il se peut que les dénominations des axes en entrée soit fausses sous Target, cherche de ce coté la.
J'ai cherché mais vraiment je sèche... les curseurs de tout les axes fonctionnent de concert dans le "Device analyzer" en colonne "CCP" et "combined" sauf soit le range, soit l'antenna... Toujours impossible d'avoir les 2 en même temps en "Combined" alors que j'ai bien les 2 actifs en "CCP"
Le script :
include "target.tmh"
int main()
{
Configure(&Joystick, MODE_EXCLUDED);
Configure(&Throttle, MODE_EXCLUDED);
Configure(&T16000, MODE_EXCLUDED);
if(Init(&EventHandle)) return 1;
SetKBRate(32, 50);
SetKBLayout(KB_FR);
MapKey(&HCougar, TG1, L_CTL+L_SHIFT+'v');
MapKey(&HCougar, S2, PULSE+L_CTL+L_SHIFT+'c');
MapKey(&HCougar, S3, PULSE+R_SHIFT+DEL);
MapKey(&HCougar, S4, PULSE+DEL);
MapKey(&HCougar, H2U, PULSE+R_CTL+UARROW);
MapKey(&HCougar, H2R, PULSE+R_CTL+RARROW);
MapKey(&HCougar, H2D, PULSE+R_CTL+DARROW);
MapKey(&HCougar, H2L, PULSE+R_CTL+LARROW);
MapKey(&HCougar, H4U, PULSE+L_CTL+L_SHIFT+'&');
MapKey(&HCougar, H4R, PULSE+L_CTL+L_SHIFT+'\'');
MapKey(&HCougar, H4D, PULSE+L_CTL+L_SHIFT+'é'+256);
MapKey(&HCougar, H4L, PULSE+L_CTL+L_SHIFT+'\"');
MapKey(&HCougar, T1, PULSE+ENT);
MapKey(&HCougar, T2, PULSE+L_CTL+L_SHIFT+'ç'+256);
MapKey(&HCougar, T3, PULSE+L_SHIFT+L_CTL+'à'+256);
MapKey(&HCougar, T4, PULSE+L_SHIFT+'m');
MapKey(&HCougar, T5, PULSE+L_CTL+'u');
MapKey(&HCougar, T6, PULSE+'z');
MapKey(&HCougar, T9, ':');
MapKey(&HCougar, H1U, PULSE+KP2);
MapKey(&HCougar, H1D, PULSE+KP8);
MapKey(&HCougar, H1R, PULSE+END);
KeyAxis(&HCougar, ANT_ELEV, 0, AXMAP1(30, PULSE+'c', PULSE+'d', PULSE+0));
KeyAxis(&HCougar, MAN_RNG, 0, AXMAP2( LIST( 0, 30, 90 ), L_SHIFT+UARROW, 0, L_SHIFT+DARROW ));
KeyAxis(&HCougar, RDR_X, 0, AXMAP2( LIST( 0, 35, 65 ), DARROW, 0, UARROW ));
KeyAxis(&HCougar, RDR_Y, 0, AXMAP2( LIST( 0, 35, 65 ), LARROW, 0, RARROW ));
MapAxis(&HCougar, JOYX, DX_X_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetSCurve(&HCougar, JOYX, 0, 0, 0, -1, 0);
MapAxis(&HCougar, JOYY, DX_Y_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetSCurve(&HCougar, JOYY, 0, 0, 0, -1, 0);
MapAxis(&HCougar, RUDDER, DX_ZROT_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetSCurve(&HCougar, RUDDER, 3, 2, 3, 2, 0);
MapAxis(&HCougar, THROTTLE, DX_Z_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetJCurve(&HCougar, THROTTLE, 50, 50);
MapAxis(&HCougar, ANT_ELEV, DX_THROTTLE_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetJCurve(&HCougar, ANT_ELEV, 50, 50);
MapAxis(&HCougar, MAN_RNG, DX_SLIDER_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetJCurve(&HCougar, MAN_RNG, 50, 50);
MapAxis(&HCougar, RDR_X, DX_XROT_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetSCurve(&HCougar, RDR_X, 0, 0, 0, 1, 1);
MapAxis(&HCougar, RDR_Y, DX_YROT_AXIS, AXIS_NORMAL, MAP_ABSOLUTE);
SetSCurve(&HCougar, RDR_Y, 0, 0, 0, 1, 1);
MapKey(&LMFD, OSB01, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+'-'));
MapKey(&LMFD, OSB02, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+'è'+256));
MapKey(&LMFD, OSB03, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+'_'));
MapKey(&LMFD, OSB04, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+'ç'+256));
MapKey(&LMFD, OSB05, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+'à'+256));
MapKey(&LMFD, OSB06, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+L_CTL+'&'));
MapKey(&LMFD, OSB07, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+L_CTL+'é'+256));
MapKey(&LMFD, OSB08, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+L_CTL+'\"'));
MapKey(&LMFD, OSB09, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+L_CTL+'\''));
MapKey(&LMFD, OSB10, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+L_CTL+'('));
MapKey(&LMFD, OSB11, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+L_CTL+'-'));
MapKey(&LMFD, OSB12, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+L_CTL+'è'+256));
MapKey(&LMFD, OSB13, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+L_CTL+'_'));
MapKey(&LMFD, OSB14, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+L_CTL+'ç'+256));
MapKey(&LMFD, OSB15, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+L_CTL+'à'+256));
MapKey(&LMFD, OSB16, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+'&'));
MapKey(&LMFD, OSB17, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+'é'+256));
MapKey(&LMFD, OSB18, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+'\"'));
MapKey(&LMFD, OSB19, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+'\''));
MapKey(&LMFD, OSB20, CHAIN( PULSE+L_CTL+LARROW, D(), PULSE+'('));
MapKey(&RMFD, OSB01, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+'-'));
MapKey(&RMFD, OSB02, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+'è'+256));
MapKey(&RMFD, OSB03, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+'_'));
MapKey(&RMFD, OSB04, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+'ç'+256));
MapKey(&RMFD, OSB05, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+'à'+256));
MapKey(&RMFD, OSB06, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+L_CTL+'&'));
MapKey(&RMFD, OSB07, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+L_CTL+'é'+256));
MapKey(&RMFD, OSB08, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+L_CTL+'\"'));
MapKey(&RMFD, OSB09, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+L_CTL+'\''));
MapKey(&RMFD, OSB10, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+L_CTL+'('));
MapKey(&RMFD, OSB11, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+L_CTL+'-'));
MapKey(&RMFD, OSB12, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+L_CTL+'è'+256));
MapKey(&RMFD, OSB13, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+L_CTL+'_'));
MapKey(&RMFD, OSB14, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+L_CTL+'ç'+256));
MapKey(&RMFD, OSB15, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+L_CTL+'à'+256));
MapKey(&RMFD, OSB16, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+'&'));
MapKey(&RMFD, OSB17, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+'é'+256));
MapKey(&RMFD, OSB18, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+'\"'));
MapKey(&RMFD, OSB19, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+'\''));
MapKey(&RMFD, OSB20, CHAIN( PULSE+L_CTL+RARROW, D(), PULSE+'('));
}
int EventHandle(int type, alias o, int x)
{
DefaultMapping(&o, x);
}
Publié : sam. sept. 03, 2011 9:12 pm
par ivanwfr
Je n'ai pas de solution mais en cherchant à rendre ça aussi lisible que possible en présentant les lignes de code concernant les 8 axes DX Input, on peut dire que c'est ça qu'il s'agit d'analyser.
Mais comme je n'ai pas ce Joystick sous la main et que je ne vois rien d'anormal, je n'ai pas encore grand chose ajouter pour l'instant.
Normalemnt ANT_ELEV et MAN_RNG sont 2 axes USB que TARGET fait correspondre à 2 axes DX-Input ... ce que le sim voit... ça me semble tout-à fait conforme à ce que j'ai avec mon TMW-Combined il faudrait quelques indices supplémentaires.
Code : Tout sélectionner
[font="Lucida Console"] MapAxis(&HCougar, JOYX , DX_X_AXIS , AXIS_NORMAL, MAP_ABSOLUTE);
MapAxis(&HCougar, JOYY , DX_Y_AXIS , AXIS_NORMAL, MAP_ABSOLUTE);
MapAxis(&HCougar, THROTTLE , DX_Z_AXIS , AXIS_NORMAL, MAP_ABSOLUTE);
MapAxis(&HCougar, RDR_X , DX_XROT_AXIS , AXIS_NORMAL, MAP_ABSOLUTE);
MapAxis(&HCougar, RDR_Y , DX_YROT_AXIS , AXIS_NORMAL, MAP_ABSOLUTE);
MapAxis(&HCougar, RUDDER , DX_ZROT_AXIS , AXIS_NORMAL, MAP_ABSOLUTE);
MapAxis(&HCougar, ANT_ELEV , DX_THROTTLE_AXIS , AXIS_NORMAL, MAP_ABSOLUTE);
MapAxis(&HCougar, MAN_RNG , DX_SLIDER_AXIS , AXIS_NORMAL, MAP_ABSOLUTE)
[/font]
Publié : sam. sept. 03, 2011 10:38 pm
par Cougar FFW04
ivanwfr a écrit :
Normalemnt ANT_ELEV et MAN_RNG sont 2 axes USB que TARGET fait correspondre à 2 axes DX-Input ... ce que le sim voit... ça me semble tout-à fait conforme à ce que j'ai avec mon TMW-Combined il faudrait quelques indices supplémentaires.
Malheureusement rien d'autre à se mettre sous la dent
Perplexe

Publié : sam. sept. 03, 2011 11:54 pm
par hellfrog
ça veut dire quoi déjà le "MODE_EXCLUDED" dans le script ? (haut du post numero 5)
Cougar tu devrais :
passer en mode script sur Target script et ne pas utiliser GUI pour le moment,
ouvrir le cscript correspondant
et virer tes lignes :
Configure(&Joystick, MODE_EXCLUDED);
Configure(&Throttle, MODE_EXCLUDED);
et les remplacer par les lignes de Irvan :
Mapaxis...
et là on y verra plus clair...
Publié : dim. sept. 04, 2011 1:12 pm
par ivanwfr
Oui, hellfrog, le script ouvert avec
TARGETScriptEditor.exe donnera exactement le même résultat.
Et il y aura moyen d'éliminer et de rétablir des lignes de code une par une en les mettant provisoirement en commnetaire:
Code : Tout sélectionner
[B][color="White"] Configure(&Joystick, MODE_EXCLUDED)[/color][/B];
...mis en commentaire avec //
Code : Tout sélectionner
[B][color="#2D2"]// Configure(&Joystick, MODE_EXCLUDED);[/color][/B]
(elles changent de couleur dans la fenêtre de l'éditeur)
...il a donc moyen d'essayer toutes sortes de combinaisons, en appuyant simplement sur
F5 pour relancer après chaque modif.
Mais il faut se méfier de
TARGETDeviceAnalyzer.exe, je ne sais pas s'il voit bien ce qui se passe quand TARGET remplace le joystick virtuel ... à vérifier sur chaque machine.
Publié : dim. sept. 04, 2011 2:37 pm
par ivanwfr
Oui, hellfrog, le script ouvert avec
TARGETScriptEditor.exe donnera exactement le même résultat.
Et il y aura moyen d'éliminer et de rétablir des lignes de code une par une en les mettant provisoirement en commentaire:
Code : Tout sélectionner
[B][color="White"] Configure(&Joystick, MODE_EXCLUDED)[/color][/B];
...mis en commentaire avec //
Code : Tout sélectionner
[B][color="#2D2"]// Configure(&Joystick, MODE_EXCLUDED);[/color][/B]
(elles changent de couleur dans la fenêtre de l'éditeur)
Il y a donc moyen d'essayer toutes sortes de combinaisons, en appuyant simplement sur
F5 pour relancer après chaque modif.
Mais il faut se méfier de
TARGETDeviceAnalyzer.exe, je ne sais pas s'il voit bien ce qui se passe quand TARGET remplace le joystick virtuel ... à vérifier sur chaque machine.
Publié : dim. sept. 04, 2011 8:52 pm
par hellfrog
pour le device analyzer avec la warthog recombinée chez moi pas de pb avec la dernière version de target, mais y en avait avec les 1ères versions...