Problème de configuration SIOC et Offsets pour FMC PMDG

Questions de programmation / Offset FSUIPC et IOCP

Problème de configuration SIOC et Offsets pour FMC PMDG

Messagede Gege15 » Jeu 18 Oct 2012 19:28

Bonjour,

J'ai laissé un message dans la rubrique Cartes et modules Opencockpits => Modules entiers pour un problème de configuration SIOC concernant le fonctionnement du FMC Opencockpits v2 avec PMDG 737 NGX. Ce n'était peut-être pas le bon endroit.

Comme expliqué dans ce précédent message, je n'y connais pas grand chose en programmation. Mais je ne demande qu'à apprendre !!! Avant de vous laissez mes messages j'ai parcouru différents forums, téléchargé de nombreux tutoriels. Mais je ne trouve pas de réelles solutions.

Je vous résume donc mon problème :

J'ai une machine équipée de Windows 7 64bits, Prepar3D 1.4 + SDK (je ne pense pas que mon problème vienne de là car il est très compatible avec FSX), PMDG 737NGX Sp1c (donc avec le SDK), FSUIPC 4.853 (enregistré). D'autre part j'ai un FMC Openckpits acheté il y a un peu plus d'un an (qui n'a pas encore servi). Ce FMC est connecté à un port USB sur ma machine. L'affichage lui, fonctionne sans problème. Je récupère la vue FMC Left, j'enlève le boitier autour grâce à une commande adéquate dans le Panel.cfg du 737 puis je fais glisser cette vue sur l'écran du FMC, ça marche nickel.

Là où ça se complique pour moi, c'est le fonctionnement du clavier qui, quoi que je fasse, ne commande rien sur le FMC du 737.

J'ai SIOC 4.2ß2, j'ai également récupéré le driver de Roar Kristensen développé pour le FMC v3 d'Opencockpits, mais qui de toute évidence ne fonctionne pas avec la version v2. J'ai également IOCPserver 2.4 qui est chargé dans le répertoire modules de P3D avec une exécution lancée par le biais du fichier dll.xml. Dans IOCP Console, je vois bien l'action sur les touches et la variable &k qui change de valeur.

Mon sioc.ssi ressemble à ça :

// *****************************************************************************
// * Config_SIOC ver 4.2 - By Manuel Velez - http://www.opencockpits.com
// *****************************************************************************
// * FileName : cdu.txt
// * Date : 18/10/2012



Var 0000, Value 0

Var 0001, name k, Link FSUIPC_INOUT, Offset $5428, Length 1 // CDU Functions

Var 0002, name leds, Link FSUIPC_INOUT, Offset $6E7F, Length 1 // CDU messages leds
{
&ledexec = TESTBIT &leds ,1
&ledmsg = TESTBIT &leds ,2
}

Var 0003, name ledexec, Link IOCARD_OUT, Output 10

Var 0004, name ledmsg, Link IOCARD_OUT, Output 11

Var 0005, name ledfail, Link IOCARD_OUT, Output 12

Var 0006, name ledofst, Link IOCARD_OUT, Output 13

Var 0007, name leddspy, Link IOCARD_OUT, Output 14

Var 0008, name key, Link USB_KEYS
{
IF &key = 71 // menu
{
&k = 60
}
IF &key = 79 // Init Ref
{
&k = 55
}
IF &key = 78 // rte
{
&k = 56
}
IF &key = 75 // des
{
&k = 59
}
IF &key = 70 // legs
{
&k = 61
}
IF &key = 67 // prog
{
&k = 64
}
IF &key = 63 // n1 limit
{
&k = 65
}
IF &key = 62 // fix
{
&k = 66
}
IF &key = 77 // clb
{
&k = 57
}
IF &key = 76 // crz

Je ne le vous mets pas en entier mais l'appui sur l'ensemble des touches est traité dans le fichier.

Mais questions sont les suivantes :

1 - Ai-je besoin de IOCPserver dans le dossier module ainsi que les lignes correspondantes dans le fichier dll.xml ?

2 - J'ai parcouru le fichier FSUIPC Offsets status de Peter Dawson et l'offset $5428 est référencé comme réservé. Est-ce le bon offset ? Sinon comment le trouver ?

3 - Les différentes valeurs de la variable &k sont issues d'un fichier récupéré sur Internet. Mais je ne crois pas que ça correspond au valeur attendu par le 737NGX de PMDG. Dans le fichier PMDG_NGX_SDK.h du SDK du 737, j'ai des valeurs telles que ci-dessous :


// CDU
#define EVT_CDU_L_L1 (THIRD_PARTY_EVENT_ID_MIN + 534)
#define EVT_CDU_L_L2 (THIRD_PARTY_EVENT_ID_MIN + 535)
#define EVT_CDU_L_L3 (THIRD_PARTY_EVENT_ID_MIN + 536)
#define EVT_CDU_L_L4 (THIRD_PARTY_EVENT_ID_MIN + 537)
#define EVT_CDU_L_L5 (THIRD_PARTY_EVENT_ID_MIN + 538)
#define EVT_CDU_L_L6 (THIRD_PARTY_EVENT_ID_MIN + 539)
#define EVT_CDU_L_R1 (THIRD_PARTY_EVENT_ID_MIN + 540)
#define EVT_CDU_L_R2 (THIRD_PARTY_EVENT_ID_MIN + 541)
#define EVT_CDU_L_R3 (THIRD_PARTY_EVENT_ID_MIN + 542)
#define EVT_CDU_L_R4 (THIRD_PARTY_EVENT_ID_MIN + 543)
#define EVT_CDU_L_R5 (THIRD_PARTY_EVENT_ID_MIN + 544)
#define EVT_CDU_L_R6 (THIRD_PARTY_EVENT_ID_MIN + 545)
#define EVT_CDU_L_INIT_REF (THIRD_PARTY_EVENT_ID_MIN + 546)
#define EVT_CDU_L_RTE (THIRD_PARTY_EVENT_ID_MIN + 547)
#define EVT_CDU_L_CLB (THIRD_PARTY_EVENT_ID_MIN + 548)
#define EVT_CDU_L_CRZ (THIRD_PARTY_EVENT_ID_MIN + 549)
#define EVT_CDU_L_DES (THIRD_PARTY_EVENT_ID_MIN + 550)
#define EVT_CDU_L_MENU (THIRD_PARTY_EVENT_ID_MIN + 551)
#define EVT_CDU_L_LEGS (THIRD_PARTY_EVENT_ID_MIN + 552)
#define EVT_CDU_L_DEP_ARR (THIRD_PARTY_EVENT_ID_MIN + 553)
#define EVT_CDU_L_HOLD (THIRD_PARTY_EVENT_ID_MIN + 554)
#define EVT_CDU_L_PROG (THIRD_PARTY_EVENT_ID_MIN + 555)
#define EVT_CDU_L_EXEC (THIRD_PARTY_EVENT_ID_MIN + 556)
#define EVT_CDU_L_N1_LIMIT (THIRD_PARTY_EVENT_ID_MIN + 557)
#define EVT_CDU_L_FIX (THIRD_PARTY_EVENT_ID_MIN + 558)
#define EVT_CDU_L_PREV_PAGE (THIRD_PARTY_EVENT_ID_MIN + 559)
#define EVT_CDU_L_NEXT_PAGE (THIRD_PARTY_EVENT_ID_MIN + 560)

sachant que :

// Control Events

#ifndef THIRD_PARTY_EVENT_ID_MIN
#define THIRD_PARTY_EVENT_ID_MIN 0x00011000 // equals to 69632
#endif

J'en conclue que l'offset pour INIT REF par exemple est égal 69632+546=70178. Mais qu'est-ce-que je peux faire avec cet offset ??? Dois-je l'attribuer à la variable &k ? Si oui, dans quel format, décimal, hexa ou binaire ?

Je sais...que je ne sais rien !!! Aujourd'hui je suis dans le plus grand flou !!! Pour moi c'est comme un puzzle que je n'arrive pas à assembler. La solution ne doit pas forcément être compliquée mais faut-il la connaitre.

En tout cas merci de m'avoir lu et merci d'avance pour votre aide.

Gérard
Avatar de l’utilisateur
Gege15
 
Messages: 14
Inscription: 14/10/11
Localisation: Aurillac (Cantal)

Re: Problème de configuration SIOC et Offsets pour FMC PMDG

Messagede Gege15 » Ven 19 Oct 2012 12:15

Bonjour,

Alors ? Il n'y a personne pour me répondre. Pourtant cette configuration ne me semble pas extraordinaire. LE FMC v2 consiste ni plus ni moins qu'à une USBKeys card somme toute assez courante. De mon côté je cherche mais j'en suis au point où je n'ai plus le recul pour voir la solution. murrouge gratgrat

C'est ce problème d'offsets qui me perturbe. Entres les offsets FSX/P3D, ceux de FSUIPC et ceux de PMDG, je m'y perd !!!

Dois-je par exemple modifier le FSUIPC4.ini manuellement et si oui quelles informations dois-je y mettre ??? Où et comment dois-je utiliser les offsets PMDG ?

Je ne crois pas que ce soit forcément très compliqué mais je ne trouve aucun document qui me le dise. Comme si tout le monde le savait naturellement ...

Gérard
Avatar de l’utilisateur
Gege15
 
Messages: 14
Inscription: 14/10/11
Localisation: Aurillac (Cantal)

Re: Problème de configuration SIOC et Offsets pour FMC PMDG

Messagede remont » Ven 19 Oct 2012 15:40

Bonjour,

Je ne pourrai pas aider car je n'ai pas le matériel dont tu parles, mais ... Je ne comprends pas grand chose à la problématique du post, qui à mon avis est trop détaillé, du coup on s'y perds.

Si je comprends bien : tu utilise un addon FS qui te permet d'avoir un écran de FMS déporté sur un deuxième écran.
Sur ce deuxième écran tu connecte l'écran physique du FMS de chez opencockpit.
Ensuite le clavier du FMS est reconnu comme un "clavier USB" sur ton PC.

Mon postulat de départ est-il bon ?

Si oui, je me pose deux questions :
1 - Le clavier du FMS est-il reconnu en écrivant quelque chose dans un bloc note ?
2 - Si le FMS est sur le PC Flight, comment l'addon sait-il qu'il reçoit les informations "clavier" venant du FMS ?

A suivre, mais je ne suis pas sur d'être le bon interlocuteur ...

Renaud

NB : un forum, c'est du bénévolat. En rentrant du travail, on lit les posts et on réponds si on a une idée sur le problème posé. Donc un peu de patience lorsque l'on recherche du secours ...
Avatar de l’utilisateur
remont
 
Messages: 405
Inscription: 3/02/10
Localisation: France 95

Re: Problème de configuration SIOC et Offsets pour FMC PMDG

Messagede Gege15 » Ven 19 Oct 2012 17:19

Bonjour Renaud,

Tout d'abord merci pour ta réponse. Pour la patience, je pense en avoir même que certaines personnes me trouvent très opiniâtre. Mais seulement depuis 2 jours j'ai laissé 2 posts à 2 endroits différents, je constate qu'une cinquantaine de personnes est passée dessus et aucun n'a fait un commentaire de quelque nature que ce soit. Ce qui m'a étonnée un peu car je ne crois pas que le problème soit très compliqué pour quelqu'un habitué aux modules Opencockpits et à la programmation SIOC. Depuis longtemps je feuillette ce forum et je sais qu'il y a des personnes très compétentes dans ce domaine. C'est tout. Où bien on me dit que ce que je veux faire est impossible mais avec les arguments qui vont bien.

D'autre part j'essaie d'être assez précis dans la description du problème afin que les membres aient le maximum d'infos pour me répondre.

Sinon pour les questions que tu me poses :

1 - De base, je dirais non car si la carte USBKeys est bien vue comme un "périphérique d'entrée USB" dans le gestionnaire de périphérique de Windows, aucun pilote ne dit que la touche 0 est égale à 0 ou que la touche A est égale à A. Ca, je pense que c'est la salade de SIOC qui selon le programme développé se charge de faire le mappage des touches. Sinon si c'est possible de faire le test avec le bloc-note par exemple, je ne sais pas faire.

2 - Il n'y a pas d'addon particulier. Lorsque je lance P3D, tout comme pour FSX, je sélectionne le 737 NGX de PMDG. Une fois chargé, je vais dans le menu View, Instrument Panel puis je choisi le FMC Left. J'ai modifié le panel.cfg de cet avion afin de ne récupérer que l'écran du FMC sans les touches et dimensionné en 800*600. Cette partie là fonctionne très bien.

Mon but, avec les offsets fournis par PMDG dans son SDK, est de rendre fonctionnel les touches du FMC d'Openckpits dans le 737 NGX de PMDG. Je pensais avoir compris qu'avec SIOC et le bon programme adressant correctement les offsets PMDG, c'était possible.

Voilà où j'en suis pour l'instant.

Gérard
Avatar de l’utilisateur
Gege15
 
Messages: 14
Inscription: 14/10/11
Localisation: Aurillac (Cantal)

Re: Problème de configuration SIOC et Offsets pour FMC PMDG

Messagede stevelep » Ven 19 Oct 2012 17:30

Je n'utilise pas cet add-on mais si tu n'as pas de réponse c'est peut-être que personne ne connait la solution.
Ce qui est sûr, c'est que les add-on PMDG n'etaient pas du tout interfacable jusqu'à il y a peu.
Il y a certainement très peu de personne qui font un cockpit 737 avec PMDG étonnement.

Tant mieux si maintenant il y a un SDK et que l'interfacage est possible.

La carte USB keys est un émulateur de clavier programmable.

Tu peux donc assigner à chaque touche de ton FMS une frappe clavier de ton choix.

C'est à dire que ton FMS de PMDG doit être utilisable avec un clavier.

Est-ce que tu arrives en pressant des touches de ton clavier PC à activer les touches de ton FMS PMDG ?
As-tu dans tes SDK une liste de raccourcis clavier pour cet add-on ?
Y a-t'il dans les SDK une possibilité d'affecter des raccourcis clavier aux fonction du PMDG ?

Voila quelques questions que tu dois te poser jusqu'à ce qu'un membre avisé puisse te répondre.

Tiens nous au courant et ne désespère pas, on finit toujours par trouver la solution, mais des fois
ça prend plus de temps que d'autres

BOB
Avatar de l’utilisateur
stevelep
Administrateur du site
 
Messages: 2075
Inscription: 27/03/09
Localisation: LSGN Neuchâtel, Suisse

Re: Problème de configuration SIOC et Offsets pour FMC PMDG

Messagede A320 hérétique » Ven 19 Oct 2012 17:33

Gérard,

regardes la doc OC concernant la carte USBkey, tu trouveras la manip pour écrire dans le bloc-note au chapitre Installation du logiciel et configuration.
Michel
http://www.myA320sim.com
Simu mixte P3D/FS2020, serveur P3Dv4/A320 FMGS (7700k et GTX 1070 sous W10 64), client P3Dv4/FS2020 (i9-12900K et RTX 4070 Ti Super sous W10 64), 3 vdp Optoma GT1080E, client A320 FMGS (2600k sous W10 64).
Avatar de l’utilisateur
A320 hérétique
 
Messages: 3360
Inscription: 2/09/12
Localisation: Pornic

Re: Problème de configuration SIOC et Offsets pour FMC PMDG

Messagede Gege15 » Ven 19 Oct 2012 17:52

Merci Bob pour les encouragements.

En fait ça fait plusieurs mois que PMDG fournit le SDK de son 737 NGX. Plus précisément depuis que le Service Pack 1c est sorti. Il est intégré dedans. Il suffit d'aller dans le répertoire PMDG dans FSX/P3D et là on trouve un dossier SDK avec les informations qui vont bien. Tout du moins pour ceux qui savent les utiliser. Ce qui n'est pas encore mon cas. Grrrr !!!!

Sinon il va s'en dire qu'avec un modèle pareil, le fait d'avoir le SDK va certainement donné envie à certains de sauter le pas pour concevoir un home cockpit.

A ma connaissance, le FMC de PMDG, ne peut pas être commandé directement par des touches clavier. A chaque fonction ou touche du FMC, correspond un offset PMDG que l'on trouve dans le SDK. Je pense qu'il faut avec SIOC tester l'appui des touches du FMC/USBKeys Opencockpits et envoyer quelque chose à l'offset PMDG correspondant. Ceci étant facilement expliqué mais pour moi très compliqué à réaliser gratgrat

Si seulement quelqu'un pouvait m'expliquer le principe ou comment réaliser cette opération pour une touche, je serais certainement capable de faire le reste. Si j'y arrive, je me ferais un plaisir de vous communiquer ce script qui peut aider la communauté.

Gérard
Avatar de l’utilisateur
Gege15
 
Messages: 14
Inscription: 14/10/11
Localisation: Aurillac (Cantal)

Re: Problème de configuration SIOC et Offsets pour FMC PMDG

Messagede Gege15 » Ven 19 Oct 2012 18:22

Bonsoir Michel,

Ok Merci pour l'info. En fait je l'avais zappé.

En reprenant l'Encoder_keys, j'arrive bien à écrire dans le bloc-note. J'ai testé et toutes les touches du FMC écrivent bien dans le bloc-note. Au moins une bonne nouvelle chouettedoights . Maintenant il faut que pour chaque appui sur une touche, j'envoie quelque chose (mais quoi ?) à l'offset PMDG correspondant.

Gérard
Avatar de l’utilisateur
Gege15
 
Messages: 14
Inscription: 14/10/11
Localisation: Aurillac (Cantal)

Re: Problème de configuration SIOC et Offsets pour FMC PMDG

Messagede stevelep » Ven 19 Oct 2012 18:35

Il faut que tu programmes dans les touches claviers de FSUIPC les events
de ton FMS

BOB
Avatar de l’utilisateur
stevelep
Administrateur du site
 
Messages: 2075
Inscription: 27/03/09
Localisation: LSGN Neuchâtel, Suisse

Re: Problème de configuration SIOC et Offsets pour FMC PMDG

Messagede Gege15 » Ven 19 Oct 2012 19:25

Bob,

Pour programmer les events dans FSUIPC, que dois-je faire ? Faut-il que SIOC soit lancé, si oui avec quel type de script ? Dois-je lancer un autre outil genre Iockeys par exemple ?

Je pose toutes ces questions car lorsque je vais dans l'onglet "Key Presses" dans FSUIPC, puis si j'appuie sur Set, j'ai beau appuyé sur n'importe quelle touches du FMC rien ne se passe ! Je dois louper quelque chose à mon avis ... tapebaton

Je vainquerai, je vainquerai ...

Gérard
Avatar de l’utilisateur
Gege15
 
Messages: 14
Inscription: 14/10/11
Localisation: Aurillac (Cantal)

Suivante

Retourner vers Programmation Sioc





Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 36 invités

cron