IFLY 737 Opencockpit SIOC

il veut se faire un homecockpit de 737 mais il veut absolument resté sur X-plane donc je vois que Ifly et Sim-avionics.
 
Je crois que oui puisque les script sioc sur oc sont donné aussi pour ifly xplane
 
Bonjour à  tous,

Pour mon MIP 737, j'utilise des cartes Opencockpits USB Output, avec les 5 entrées analogiques, et des cartes Léo Bodnar.
Je débute en Sioc, donc pas très au point pour iFly.
J'ai terminé l'ensemble des voyants du MIP ainsi que les Inters et boutons rotatifs et tout marche bien.
Je suis en train de programmer les potentiomètres correspondant à  la luminosité des écrans (Upper DU Bright, ...).

Je suis arrivé à  ce que cela fonctionne, mais uniquement quand le potentiomètre est en action.
Je sais que Sioc ne répond que lorsqu'il y a un changement détat.
J'ai essayé de mettre la partie "IF" dans une subroutine, mais ça ne change rien.
Alors comment faire une boucle du type For... To ... ou Tant.. Que...

Voici mon programme :

Code:
Var 101, name ETAT_BRIGHT, Link IOCP, Offset 580
Var 102, name POTAR, Link IOCARD_ANALOGIC, Device 1, Input #2, PosL 0, PosC 127, PosR 255
 {
  L0 = &POTAR / 12.75     // Position potentiomètre 0 - 255 codé de 0 à  20
  L0 = TRUNC L0
  L1 = &ETAT_BRIGHT / 5   // Etat de Luminosité 0 - 100 codé de 0 à  20
  L1 = TRUNC L1
  L2 = L1 - L0            // Différence entre les 2 états
  IF L2 > 0
    {
    &Command = 759        // Décrémentation
    L2 = L2 - 1
    }
  IF L2 < 0
    {
    &Command = 760        // Incrémentation
    L2 = L2 + 1
    }
 }

var 9000, name Command, Link FSUIPC_INOUT, Offset $9400, Length 2

Quelqu'un a til une idée ?
Bonne journée.
 
Alors attention tu confond...
Loffset bright c'est pour allumer la lumière dans ifly et non pas physiquement.
Pour illuminer ton panel il faut une usbdim qui n'est pas programmable dans sioc !
La carte prend juste en compte ton potar et envoie plus ou moins de courant pour les led
Tu peux régler la puissance en la branchant en usb et utiliser le petit logiciel dopencockpit usbdim pour régler la puissance mini et maxi.

Ah pardon j'ai mal lu c'est leicas que tu veux régler ? Utilise tu iflytofsuipc pour la liaison sioc et ifly ?
 
Merci pour la réponse si rapide.
Alors en introduction, je n'y connais rien en pilotage :)
Je suis le papa bricoleur pour mon fils de 15 ans qui fait partie du club Normandie Simulation.

Ce que je souhaite, c'est modifier la luminosité des 6 écrans du MIP (Upper DU, Lower DU, 2 Captain et 2 FO).
Le script sioc que j'ai posté marche (la luminosité augmente ou diminue bien, et les boutons sur iFly tournent en même temps).
Mai mon soucis, c'est que ça marche seulement quand il y a une action sur le potentiomètre.
EX : Si la luminosité est à  fond et le potar aussi. Si je tourne un petit peu, la luminosité descend d'un cran. OK.
Mais si je tourne le potentiomètre à  1/4 par exemple et très vite, la luminosité ne baisse toujours que d'un cran.
Si je fais la même manip doucement, la luminosité baisse bien plusieurs fois.

En regardant le moniteur dans sioc, les valeurs correspondent bien aux actions.

En fait, c'est le problème de boucle qui ne se fait pas dans le script (L0 = L0 + 1 ou L0 = L0 -1).
Le script n'est parcouru uniquement que sil y a une modif de la valeur du potentiomètre en cours, et non pas jusqu'à  la valeur voulue.

Je ne sais pas si je suis clair ... :/

Sinon, oui, j'utilise iflytofsuipc.
 
ok j'ai compris il faut utiliser des variables internes pour stocker les valeurs ...
jte fais un code dans quelques minutes ...

petite question avant
dans la console iocpconsole la variable 101 etatbright quand tu bouge dans ifly avec la souris quel est la valeur mini maxi ?
 
C'est trop gentil !
NB : je viens de mapercevoir sur ton site que tu connais Jean-Luc et Alain de Normandie Simulation, non ?
Je suis le papa de Pierre, le petit benjamin arrivé au club il y a 2 ans... :)

La valeur de lEtat Bright varie de 0 à 100 (vérifiée dans sioc IOCP Monitor).
 
Last edited by a moderator:
oui je connais tout le monde chez norsim :cool: sutout alain un mec formidable qui partage avec moi la passion du 747 ...

alors pour ton code c'est très simple normalement cela devrait fonctionner :

Code:
[== Indéfini ==]

Var 0101, name ETAT_BRIGHT, Link IOCP, Offset 580
{
  &ETAT_BRIGHT = &POTAR / 2.5
}

Var 0102, name POTAR, Link IOCARD_ANALOGIC, Device 1, Input #2, PosL 0, PosC 127, PosR 255
 
Le monde est petit :)
Je vais tester cela ce soir, et te tiens au courant demain.
Merci beaucoup et bon après midi.

En regardant le code, tu es sur ?
Parce que l'offset 580 est un offset qui renvoie la valeur de la luminosité (lecture seule), mais qui ne la commande pas.
Les seules commandes que j'ai trouvé dans les offsets IOCP, sont (pour lUpper DU par exemple)
- incrémentation Brightness Upper DU : 760
- Décrémentation : 759
 
ah ok jme demandai si c'etait du read ou du write dans ce cas jte fais un autre code au cas ou ...

bon c'est un peu plus compliqué a tester faut voir

Code:
[== Indéfini ==]
Var 0101, name ETAT_BRIGHT, Link IOCP, Offset 580
{
  CALL &subupper
}

Var 0102, name POTAR, Link IOCARD_ANALOGIC, Device 1, Input #2, PosL 0, PosC 127, PosR 255
{
  CALL &subupper
}

Var 0103, name subupper, Link SUBRUTINE
{
  L0 = &POTAR / 2.5
  L1 = &ETAT_BRIGHT    
  L0 = TRUNC L0
  L1 = TRUNC L1
  IF L1 > L0
  {
    &valeurupper = -1    
  }
  IF L1 < L0
  {
    &valeurupper = 1    
  }
  IF L0 = L1
  {
    &valeurupper = 0    
  }
}

Var 0104, name valeurupper
{
  IF &valeurupper = 1
  {
    &command = 760    
    &valeurupper = 0    
  }
  IF &valeurupper = -1
  {
    &command = 759    
    &valeurupper = 0    
  }
  IF &valeurupper = 0
  {
    &command = -2    
  }
}

Var 0105, name command, Link FSUIPC_INOUT, Offset $9400, Length 2

en faite comme la commande se fait par impulsion il serait plus simple de remplacer les potars par des encodeur type gray le code serait plus court et ta luminosité fiable ...
 
Je vais tester cela ce soir et te tiens informé.
Merci encore !

Re-bonjour Mameloose,

J'ai testé ton programme.

J'ai juste enlevé à la fin :

Code:
IF &valeurupper = 0
  {
    &command = -2    
  }

Bonne fin de journée.
 
Last edited by a moderator:
Les valeurs du potentiomètre se modifiaient bien, mais pas celles du Brightness.
Bonne soirée.
 
Bonsoir tout le monde,

Je reviens vers vous, toujours pour ma question de potentiomètres de luminosité.
J'ai modifié le programme donné par Mameloose pour l'ensemble des écrans.
Je me heurte encore à  un ptit problème.
Tous les potentiomètres marchent.
Mais si j'en tourne plusieurs en même temps, seul le dernier que sioc voit actif (valeur du potar changée) est modifié.
Pourtant, j'ai affecté une "commande IOCP" à  chaque potentiomètre.

Est-ce une limite de sioc, ou y a til un moyen pour remédier à  cela ?

Voici le script :


Code:
[== Indéfini ==]
Var 0101, name C_OUT_BRIGHT, Link IOCP, Offset 577     // Lecture Offset Luinosité Ecran Captain Outboard
  {
  CALL &SUB_CAPT_OUT
  }

Var 0102, name C_IN_BRIGHT, Link IOCP, Offset 578      // Lecture Offset Luinosité Ecran Captain Inboard
  {
  CALL &SUB_CAPT_IN
  }

Var 0103, name UPPER_BRIGHT, Link IOCP, Offset 580     // Lecture Offset Luinosité Ecran Upper
  {
  CALL &SUB_UPPER
  }

Var 0104, name LOWER_BRIGHT, Link IOCP, Offset 579     // Lecture Offset Luinosité Ecran Lower
  {
  CALL &SUB_LOWER
  }

Var 0105, name FO_IN_BRIGHT, Link IOCP, Offset 581     // Lecture Offset Luinosité Ecran FO Inboard
  {
  CALL &SUB_FO_IN
  }

Var 0106, name FO_OUT_BRIGHT, Link IOCP, Offset 582    // Lecture Offset Luinosité Ecran FO Outboard
  {
  CALL &SUB_FO_OUT
  }

Var 0107, name POT_CAPT_OUT, Link IOCARD_ANALOGIC, Device 1, Input 4, PosL 0, PosC 127, PosR 255   // Lecture Potentiomètre Captain Outboard
  {
  CALL &SUB_CAPT_OUT
  }

Var 0108, name POT_CAPT_IN, Link IOCARD_ANALOGIC, Device 1, Input 3, PosL 0, PosC 127, PosR 255    // Lecture Potentiomètre Captain Inboard
  {
  CALL &SUB_CAPT_IN
  }

Var 0109, name POT_UPPER, Link IOCARD_ANALOGIC, Device 1, Input 2, PosL 0, PosC 127, PosR 255      // Lecture Potentiomètre Upper
  {
  CALL &SUB_UPPER
  }

Var 0110, name POT_LOWER, Link IOCARD_ANALOGIC, Device 1, Input 5, PosL 0, PosC 127, PosR 255      // Lecture Potentiomètre Lower
  {
  CALL &SUB_LOWER
  }

Var 0111, name POT_FO_IN, Link IOCARD_ANALOGIC, Device 3, Input 2, PosL 0, PosC 127, PosR 255      // Lecture Potentiomètre FO Inboard
  {
  CALL &SUB_FO_IN
  }

Var 0112, name POT_FO_OUT, Link IOCARD_ANALOGIC, Device 3, Input 4, PosL 0, PosC 127, PosR 255     // Lecture Potentiomètre FO Outboard
  {
  CALL &SUB_FO_OUT
  }

Var 0113, name SUB_CAPT_OUT, Link SUBRUTINE
  {
  L0 = &POT_CAPT_OUT / 12.75         // Position potentiomètre 0 - 255 codé de 0 à  20
  L1 = &C_OUT_BRIGHT / 5             // Etat de Luminosité 0 - 100 codé de 0 à  20
  L0 = TRUNC L0
  L1 = TRUNC L1
  IF L1 > L0                         // Si Luminosité supérieure au Potentiomètre
    {
    &VAL_CAPT_OUT = -1               // Drapeau à  -1
    }
  IF L1 < L0                         // Si Luminosité inférieure au Potentiomètre
    {
    &VAL_CAPT_OUT = 1                // Drapeau à  1
    }
  IF L0 = L1                         // Si Luminosité égale au Potentiomètre
    {
    &VAL_CAPT_OUT = 0                // Drapeau à  0
    }
  }

Var 0114, name SUB_CAPT_IN, Link SUBRUTINE
  {
  L0 = &POT_CAPT_IN / 12.75          // Position potentiomètre 0 - 255 codé de 0 à  20
  L1 = &C_IN_BRIGHT / 5              // Etat de Luminosité 0 - 100 codé de 0 à  20
  L0 = TRUNC L0
  L1 = TRUNC L1
  IF L1 > L0                         // Si Luminosité supérieure au Potentiomètre
    {
    &VAL_CAPT_IN = -1                // Drapeau à  -1
    }
  IF L1 < L0                         // Si Luminosité inférieure au Potentiomètre
    {
    &VAL_CAPT_IN = 1                 // Drapeau à  1
    }
  IF L0 = L1                         // Si Luminosité égale au Potentiomètre
    {
    &VAL_CAPT_IN = 0                 // Drapeau à  0
    }
  }

Var 0115, name SUB_UPPER, Link SUBRUTINE
  {
  L0 = &POT_UPPER / 12.75            // Position potentiomètre 0 - 255 codé de 0 à  20
  L1 = &UPPER_BRIGHT / 5             // Etat de Luminosité 0 - 100 codé de 0 à  20
  L0 = TRUNC L0
  L1 = TRUNC L1
  IF L1 > L0                         // Si Luminosité supérieure au Potentiomètre
    {
    &VAL_UPPER = -1                  // Drapeau à  -1
    }
  IF L1 < L0                         // Si Luminosité inférieure au Potentiomètre
    {
    &VAL_UPPER = 1                   // Drapeau à  1
    }
  IF L0 = L1                         // Si Luminosité égale au Potentiomètre
    {
    &VAL_UPPER = 0                   // Drapeau à  0
    }
}

Var 0116, name SUB_LOWER, Link SUBRUTINE
  {
  L0 = &POT_LOWER / 12.75            // Position potentiomètre 0 - 255 codé de 0 à  20
  L1 = &LOWER_BRIGHT / 5             // Etat de Luminosité 0 - 100 codé de 0 à  20
  L0 = TRUNC L0
  L1 = TRUNC L1
  IF L1 > L0                         // Si Luminosité supérieure au Potentiomètre
    {
    &VAL_LOWER = -1                  // Drapeau à  -1
    }
  IF L1 < L0                         // Si Luminosité inférieure au Potentiomètre
    {
    &VAL_LOWER = 1                   // Drapeau à  1
    }
  IF L0 = L1                         // Si Luminosité égale au Potentiomètre
    {
    &VAL_LOWER = 0                   // Drapeau à  0
    }
  }

Var 0117, name SUB_FO_IN, Link SUBRUTINE
  {
  L0 = &POT_FO_IN / 12.75            // Position potentiomètre 0 - 255 codé de 0 à  20
  L1 = &FO_IN_BRIGHT / 5             // Etat de Luminosité 0 - 100 codé de 0 à  20
  L0 = TRUNC L0
  L1 = TRUNC L1
  IF L1 > L0                         // Si Luminosité supérieure au Potentiomètre
    {
    &VAL_FO_IN = -1                  // Drapeau à  -1
    }
  IF L1 < L0                         // Si Luminosité inférieure au Potentiomètre
    {
    &VAL_FO_IN = 1                   // Drapeau à  1
    }
  IF L0 = L1                         // Si Luminosité égale au Potentiomètre
    {
    &VAL_FO_IN = 0                   // Drapeau à  0
    }
  }

Var 0118, name SUB_FO_OUT, Link SUBRUTINE
  {
  L0 = &POT_FO_OUT / 12.75           // Position potentiomètre 0 - 255 codé de 0 à  20
  L1 = &FO_OUT_BRIGHT / 5            // Etat de Luminosité 0 - 100 codé de 0 à  20
  L0 = TRUNC L0
  L1 = TRUNC L1
  IF L1 > L0                         // Si Luminosité supérieure au Potentiomètre
    {
    &VAL_FO_OUT = -1                 // Drapeau à  -1
    }
  IF L1 < L0                         // Si Luminosité inférieure au Potentiomètre
    {
    &VAL_FO_OUT = 1                  // Drapeau à  1
    }
  IF L0 = L1                         // Si Luminosité égale au Potentiomètre
    {
    &VAL_FO_OUT = 0                  // Drapeau à  0
    }
  }

Var 0119, name VAL_CAPT_OUT
  {
  IF &VAL_CAPT_OUT = -1              // Si Drapeau à  -1 Décrémente Bouton Luminosité
    {
    &COMMAND1 = 751    
    &COMMAND1 = -1
    &VAL_CAPT_OUT = 0     
    }
  IF &VAL_CAPT_OUT = 1               // Si Drapeau à  1 Incrémente Bouton Luminosité
    {
    &COMMAND1 = 752
    &COMMAND1 = -1
    &VAL_CAPT_OUT = 0    
    }
  }

Var 0120, name VAL_CAPT_IN
  {
  IF &VAL_CAPT_IN = -1               // Si Drapeau à  -1 Décrémente Bouton Luminosité
    {
    &COMMAND2 = 753   
    &COMMAND2 = -1 
    &VAL_CAPT_IN = 0     
    }
  IF &VAL_CAPT_IN = 1                // Si Drapeau à  1 Incrémente Bouton Luminosité
    {
    &COMMAND2 = 754    
    &COMMAND2 = -1
    &VAL_CAPT_IN = 0    
    }
  }

Var 0121, name VAL_UPPER
  {
  IF &VAL_UPPER = -1                 // Si Drapeau à  -1 Décrémente Bouton Luminosité
    {
    &COMMAND3 = 759    
    &COMMAND3 = -1
    &VAL_UPPER = 0     
    }
  IF &VAL_UPPER = 1                  // Si Drapeau à  1 Incrémente Bouton Luminosité
    {
    &COMMAND3 = 760    
    &COMMAND3 = -1
    &VAL_UPPER = 0    
    }
  }

Var 0122, name VAL_LOWER
  {
  IF &VAL_LOWER = -1                  // Si Drapeau à  -1 Décrémente Bouton Luminosité
    {
    &COMMAND4 = 761    
    &COMMAND4 = -1
    &VAL_LOWER = 0     
    }
  IF &VAL_LOWER = 1                  // Si Drapeau à  1 Incrémente Bouton Luminosité
    {
    &COMMAND4 = 762 
    &COMMAND4 = -1   
    &VAL_LOWER = 0    
    }
  }

Var 0123, name VAL_FO_IN
  {
  IF &VAL_FO_IN = -1                  // Si Drapeau à  -1 Décrémente Bouton Luminosité
    {
    &COMMAND5 = 757 
    &COMMAND5 = -1   
    &VAL_FO_IN = 0     
    }
  IF &VAL_FO_IN = 1                   // Si Drapeau à  1 Incrémente Bouton Luminosité
    {
    &COMMAND5 = 758  
    &COMMAND5 = -1
    &VAL_FO_IN = 0    
    }
  }

Var 0124, name VAL_FO_OUT
  {
  IF &VAL_FO_OUT = -1                 // Si Drapeau à  -1 Décrémente Bouton Luminosité
    {
    &COMMAND6 = 755    
    &COMMAND6 = -1
    &VAL_FO_OUT = 0     
    }
  IF &VAL_FO_OUT = 1                  // Si Drapeau à  1 Incrémente Bouton Luminosité
    {
    &COMMAND6 = 756  
    &COMMAND6 = -1  
    &VAL_FO_OUT = 0    
    }
  }

Var 0125, name COMMAND1, Link IOCP, Offset 1000     // Envoi de la Commande 1
Var 0126, name COMMAND2, Link IOCP, Offset 1000     // Envoi de la Commande 2
Var 0127, name COMMAND3, Link IOCP, Offset 1000     // Envoi de la Commande 3
Var 0128, name COMMAND4, Link IOCP, Offset 1000     // Envoi de la Commande 4
Var 0129, name COMMAND5, Link IOCP, Offset 1000     // Envoi de la Commande 5
Var 0130, name COMMAND6, Link IOCP, Offset 1000     // Envoi de la Commande 6

Bonne soirée à  tous.
 
Hello je regarde ça demain soir je travail ce week-end et jessaie de voir
 
Je prends un peu la relève ...

Tu as bien déclaré plusieurs variable IOCP, COMMAND1 à  COMMANDE6 ... mais qui pointe vers la même valeur : 1000
Donc ça se bouscule au portillon et seule la dernière commande est prise en compte

Essayer avec une (petite) temporisation peu être ? (DELAY)
 
Bonjour à  tous et merci pour vos réponses.

Effectivement, toutes mes commandes pointent vers la valeur 1000.
Mais je croyais que 1000 était la seule valeur réservée pour faire le lien IOCP ??

Je ne vois pas comment faire ?
 
Effectivement ou alors en fsuipc la 9400 ça revient au même sauf que pour ifly ça donne trop d'information d'un coup pour alléger le truc il faudrait remplacer tes potar par des encodeur
 
Oui, Offset 1000 pour IOCP, ou 9400 pour FSUIPC. C'est bien ce que j'ai compris avec on peu dexpérience en sioc.

Concernant les potars, tout est câblé et mis en place sur le MIP. J'ai pas vraiment envie de tout redéfaire, sachant qu'ils sont soudé sur des cartes que j'ai fait moi même...

Soit je creuse du côté de la programmation, soit on tournera un les potars les uns après les autres...
Si vous voyez une astuce côté prog, je suis preneur :)

Bon week-end à  tous.
 
J'en ai une, fab a trouvé aussi. Je te fais ça après manger.

voila j'ai modifié pour capt in et out essaye les deux en meme temps pour voir et si c'est bon poursuit mon exemple avec le delay jusqu'au bout

Code:
[== Indéfini ==]
// *****************************************************************************
// * Config_SIOC ver 4.5   -     By Manuel Velez    -    www.opencockpits.com
// *****************************************************************************
// * FileName : Nouveau document texte.txt
// * Date : 13/05/2017



Var 0101, name C_OUT_BRIGHT, Link IOCP, Offset 577     // Lecture Offset Luinosité Ecran Captain O
{
  CALL &SUB_CAPT_OUT
}

Var 0102, name C_IN_BRIGHT, Link IOCP, Offset 578     // Lecture Offset Luinosité Ecran Captain I
{
  CALL &SUB_CAPT_IN
}

Var 0103, name UPPER_BRIGHT, Link IOCP, Offset 580     // Lecture Offset Luinosité Ecran Upper
{
  CALL &SUB_UPPER
}

Var 0104, name LOWER_BRIGHT, Link IOCP, Offset 579     // Lecture Offset Luinosité Ecran Lower
{
  CALL &SUB_LOWER
}

Var 0105, name FO_IN_BRIGHT, Link IOCP, Offset 581     // Lecture Offset Luinosité Ecran FO Inboar
{
  CALL &SUB_FO_IN
}

Var 0106, name FO_OUT_BRIGHT, Link IOCP, Offset 582     // Lecture Offset Luinosité Ecran FO Outboa
{
  CALL &SUB_FO_OUT
}

Var 0107, name POT_CAPT_OUT, Link IOCARD_ANALOGIC, Device 1, Input 4, PosL 0, PosC 127, PosR 255     // Lecture Potentiomètre Captain Outboard
{
  CALL &SUB_CAPT_OUT
}

Var 0108, name POT_CAPT_IN, Link IOCARD_ANALOGIC, Device 1, Input 3, PosL 0, PosC 127, PosR 255     // Lecture Potentiomètre Captain Inboard
{
  CALL &SUB_CAPT_IN
}

Var 0109, name POT_UPPER, Link IOCARD_ANALOGIC, Device 1, Input 2, PosL 0, PosC 127, PosR 255     // Lecture Potentiomètre Upper
{
  CALL &SUB_UPPER
}

Var 0110, name POT_LOWER, Link IOCARD_ANALOGIC, Device 1, Input 5, PosL 0, PosC 127, PosR 255     // Lecture Potentiomètre Lower
{
  CALL &SUB_LOWER
}

Var 0111, name POT_FO_IN, Link IOCARD_ANALOGIC, Device 3, Input 2, PosL 0, PosC 127, PosR 255     // Lecture Potentiomètre FO Inboard
{
  CALL &SUB_FO_IN
}

Var 0112, name POT_FO_OUT, Link IOCARD_ANALOGIC, Device 3, Input 4, PosL 0, PosC 127, PosR 255     // Lecture Potentiomètre FO Outboard
{
  CALL &SUB_FO_OUT
}

Var 0113, name SUB_CAPT_OUT, Link SUBRUTINE
{
  L0 = &POT_CAPT_OUT / 12.75     // Position potentiomètre 0 - 255 codé de 0
  L1 = &C_OUT_BRIGHT / 5     // Etat de Luminosité 0 - 100 codé de 0 à  2
  L0 = TRUNC L0
  L1 = TRUNC L1
  IF L1 > L0     // Si Luminosité supérieure au Potentiomètr
  {
    &VAL_CAPT_OUT = -1         // Drapeau à  -1
  }
  IF L1 < L0     // Si Luminosité inférieure au Potentiomètr
  {
    &VAL_CAPT_OUT = 1         // Drapeau à  1
  }
  IF L0 = L1     // Si Luminosité égale au Potentiomètre
  {
    &VAL_CAPT_OUT = 0         // Drapeau à  0
  }
}

Var 0114, name SUB_CAPT_IN, Link SUBRUTINE
{
  L0 = &POT_CAPT_IN / 12.75     // Position potentiomètre 0 - 255 codé de 0
  L1 = &C_IN_BRIGHT / 5     // Etat de Luminosité 0 - 100 codé de 0 à  2
  L0 = TRUNC L0
  L1 = TRUNC L1
  IF L1 > L0     // Si Luminosité supérieure au Potentiomètr
  {
    &VAL_CAPT_IN = -1         // Drapeau à  -1
  }
  IF L1 < L0     // Si Luminosité inférieure au Potentiomètr
  {
    &VAL_CAPT_IN = 1         // Drapeau à  1
  }
  IF L0 = L1     // Si Luminosité égale au Potentiomètre
  {
    &VAL_CAPT_IN = 0         // Drapeau à  0
  }
}

Var 0115, name SUB_UPPER, Link SUBRUTINE
{
  L0 = &POT_UPPER / 12.75     // Position potentiomètre 0 - 255 codé de 0
  L1 = &UPPER_BRIGHT / 5     // Etat de Luminosité 0 - 100 codé de 0 à  2
  L0 = TRUNC L0
  L1 = TRUNC L1
  IF L1 > L0     // Si Luminosité supérieure au Potentiomètr
  {
    &VAL_UPPER = -1         // Drapeau à  -1
  }
  IF L1 < L0     // Si Luminosité inférieure au Potentiomètr
  {
    &VAL_UPPER = 1         // Drapeau à  1
  }
  IF L0 = L1     // Si Luminosité égale au Potentiomètre
  {
    &VAL_UPPER = 0         // Drapeau à  0
  }
}

Var 0116, name SUB_LOWER, Link SUBRUTINE
{
  L0 = &POT_LOWER / 12.75     // Position potentiomètre 0 - 255 codé de 0
  L1 = &LOWER_BRIGHT / 5     // Etat de Luminosité 0 - 100 codé de 0 à  2
  L0 = TRUNC L0
  L1 = TRUNC L1
  IF L1 > L0     // Si Luminosité supérieure au Potentiomètr
  {
    &VAL_LOWER = -1         // Drapeau à  -1
  }
  IF L1 < L0     // Si Luminosité inférieure au Potentiomètr
  {
    &VAL_LOWER = 1         // Drapeau à  1
  }
  IF L0 = L1     // Si Luminosité égale au Potentiomètre
  {
    &VAL_LOWER = 0         // Drapeau à  0
  }
}

Var 0117, name SUB_FO_IN, Link SUBRUTINE
{
  L0 = &POT_FO_IN / 12.75     // Position potentiomètre 0 - 255 codé de 0
  L1 = &FO_IN_BRIGHT / 5     // Etat de Luminosité 0 - 100 codé de 0 à  2
  L0 = TRUNC L0
  L1 = TRUNC L1
  IF L1 > L0     // Si Luminosité supérieure au Potentiomètr
  {
    &VAL_FO_IN = -1         // Drapeau à  -1
  }
  IF L1 < L0     // Si Luminosité inférieure au Potentiomètr
  {
    &VAL_FO_IN = 1         // Drapeau à  1
  }
  IF L0 = L1     // Si Luminosité égale au Potentiomètre
  {
    &VAL_FO_IN = 0         // Drapeau à  0
  }
}

Var 0118, name SUB_FO_OUT, Link SUBRUTINE
{
  L0 = &POT_FO_OUT / 12.75     // Position potentiomètre 0 - 255 codé de 0
  L1 = &FO_OUT_BRIGHT / 5     // Etat de Luminosité 0 - 100 codé de 0 à  2
  L0 = TRUNC L0
  L1 = TRUNC L1
  IF L1 > L0     // Si Luminosité supérieure au Potentiomètr
  {
    &VAL_FO_OUT = -1         // Drapeau à  -1
  }
  IF L1 < L0     // Si Luminosité inférieure au Potentiomètr
  {
    &VAL_FO_OUT = 1         // Drapeau à  1
  }
  IF L0 = L1     // Si Luminosité égale au Potentiomètre
  {
    &VAL_FO_OUT = 0         // Drapeau à  0
  }
}

Var 0119, name VAL_CAPT_OUT
{
  IF &VAL_CAPT_OUT = -1     // Si Drapeau à  -1 Décrémente Bouton Lumino
  {
    &COMMAND1 = DELAY 751 ,5
    &COMMAND1 = DELAY -1 ,6
    &VAL_CAPT_OUT = 0    
  }
  IF &VAL_CAPT_OUT = 1     // Si Drapeau à  1 Incrémente Bouton Luminos
  {
    &COMMAND1 = DELAY 752 ,5
    &COMMAND1 = DELAY -1 ,6
    &VAL_CAPT_OUT = 0    
  }
}

Var 0120, name VAL_CAPT_IN
{
  IF &VAL_CAPT_IN = -1     // Si Drapeau à  -1 Décrémente Bouton Lumino
  {
    &COMMAND2 = DELAY 753 ,10
    &COMMAND2 = DELAY -1 ,11
    &VAL_CAPT_IN = 0    
  }
  IF &VAL_CAPT_IN = 1     // Si Drapeau à  1 Incrémente Bouton Luminos
  {
    &COMMAND2 = DELAY 754 ,10
    &COMMAND2 = DELAY -1 ,11
    &VAL_CAPT_IN = 0    
  }
}

Var 0121, name VAL_UPPER
{
  IF &VAL_UPPER = -1     // Si Drapeau à  -1 Décrémente Bouton Lumino
  {
    &COMMAND3 = 759    
    &COMMAND3 = -1    
    &VAL_UPPER = 0    
  }
  IF &VAL_UPPER = 1     // Si Drapeau à  1 Incrémente Bouton Luminos
  {
    &COMMAND3 = 760    
    &COMMAND3 = -1    
    &VAL_UPPER = 0    
  }
}

Var 0122, name VAL_LOWER
{
  IF &VAL_LOWER = -1     // Si Drapeau à  -1 Décrémente Bouton Lumino
  {
    &COMMAND4 = 761    
    &COMMAND4 = -1    
    &VAL_LOWER = 0    
  }
  IF &VAL_LOWER = 1     // Si Drapeau à  1 Incrémente Bouton Luminos
  {
    &COMMAND4 = 762    
    &COMMAND4 = -1    
    &VAL_LOWER = 0    
  }
}

Var 0123, name VAL_FO_IN
{
  IF &VAL_FO_IN = -1     // Si Drapeau à  -1 Décrémente Bouton Lumino
  {
    &COMMAND5 = 757    
    &COMMAND5 = -1    
    &VAL_FO_IN = 0    
  }
  IF &VAL_FO_IN = 1     // Si Drapeau à  1 Incrémente Bouton Luminos
  {
    &COMMAND5 = 758    
    &COMMAND5 = -1    
    &VAL_FO_IN = 0    
  }
}

Var 0124, name VAL_FO_OUT
{
  IF &VAL_FO_OUT = -1     // Si Drapeau à  -1 Décrémente Bouton Lumino
  {
    &COMMAND6 = 755    
    &COMMAND6 = -1    
    &VAL_FO_OUT = 0    
  }
  IF &VAL_FO_OUT = 1     // Si Drapeau à  1 Incrémente Bouton Luminos
  {
    &COMMAND6 = 756    
    &COMMAND6 = -1    
    &VAL_FO_OUT = 0    
  }
}

Var 0125, name COMMAND1, Link IOCP, Offset 1000     // Envoi de la Commande 1

Var 0126, name COMMAND2, Link IOCP, Offset 1000     // Envoi de la Commande 2

Var 0127, name COMMAND3, Link IOCP, Offset 1000     // Envoi de la Commande 3

Var 0128, name COMMAND4, Link IOCP, Offset 1000     // Envoi de la Commande 4

Var 0129, name COMMAND5, Link IOCP, Offset 1000     // Envoi de la Commande 5

Var 0130, name COMMAND6, Link IOCP, Offset 1000     // Envoi de la Commande 6
 
Last edited by a moderator:
Merci beaucoup Mameloose,

Je vais essayer ça début de semaine.
Bon dimanche.
 
Bonsoir tout le monde,

J'ai essayé avec les "Delay".
Effectivement, l'ensemble des valeurs des potentiomètres sont lues, même si ce n'est pas en même temps, mais petit à  petit.
Merci pour votre aide.
Bonne soirée.
 
Bonjour à  tous.

Je viens de passer sur IFly pour P3D.

Quelqu'un saurait il configurer lEFIS et MCP Opencockpit pour IFly?
 
salut,

tu as un scripts sioc sur le site dopencockpits mcp, efis et fmc il me semble.
 
Hello
Je suis pas chez moi ce week-end si ta pas trouvé jexplique en rentrant
 
ok de retour tu me confirme bien que ton mcp et efis sont de opencockpit ? c'est pas du cpflight que tu as ?
 
hello Greg, Je te confirme, EFIS et MCP Opencokpit, je viens de passer sur IFLY. Le fait d'avoir fait la mise à jour windows 10 fait que lEFIS et le MCP ne fonctionnent plus...
 
Last edited by a moderator:
Retour
Haut