Gestion de 2 Radios COM

MCP / Radio / Instruments

Re: Gestion de 2 Radios COM

Messagede JeeHell » Ven 19 Fév 2010 19:28

A mon avis ce sont des exemples de scripts SIOC pour aider ceux qui veulent reprogrammer les modules, donc ce n'est pas étonnant qu'il n'y ait pas tout.
Si tu utilises leur IOCmodules, ces fichiers ne sont pas utilisé car en quelques sorte "intégré" dans IOCmodules.

Pour pouvoir refaire leur programmation, il faut déclarer le module physique comme une nouvelle carte master dans le SIOC.INI, voici le passage du SIOC.INI qui nous intéresse dans un premier temps:
Code: Tout sélectionner
[------------- CARDS CONFIG -------------]

[ IOCard Master ]
[...............]
[ MASTER=(Device index),(Type),(Number of cards),(Device number) ]

[ Device index : Index used in SIOC variable like device, this is the card used for SIOC sentence ]
[ Use 0 for only one card, for this value you not need specify Device number. If you not use DEVICE parameter in a definition in SIOC script, the default index used is 0]

[ type = 0 : Master Card Emulator ]
[ type = 1 : Master Card connected directly to parallel port ]
[ type = 2 : Master Card connected throught compatibility cable to parallel port ]
[ type = 3 : Expansion Card connected throught parallel port ]
[ type = 4 : USBExpansion Card used ]
[ type = 5 : Opencockpits MCP module ]
[ type = 6 : USBOutputs Card used ]
[ type = 7 : Opencockpits EFIS module ]
[ type = 8 : Opencockpits Radio COM module ]
[ type = 9 : Opencockpits Radio NAV module ]
[ type = 10 : Opencockpits Radio ADF module ]
[ type = 11 : Opencockpits Radio ATC module ]

[ Number of Cards = Master cards connecteds, 1 to 4 for expansion cards, 1 for a Master card directly connected or Emulator ]

[ Number of device = 0 for Emulator or first USB card detected, parallel port address, device number for specifies USBexpansion card ]


la syntaxe pour déclarer une carte:
MASTER=(Device index),(Type),(Number of cards),(Device number)

Nous on branche un module ATC (vu que ça à l'air d'être le mieux pour ton simu), ce sera donc une carte de type 11.
Pour le Device index, cela dépend du nombre de USBexpansions/mastercards connectées
Number of cards sera à priori 1 (je doute que tu aies branché 2 modules ATC)
Et Device Number sera à déterminer selon le port USB que tu utilises (là je ne peux pas t'aider)

Donc si tu as branché ta(tes) master(s) sur une seule USBexpansion, à priori tu devrais déjà avoir une ligne du style:
MASTER=0,4,X,0 (où X= le nombre de masters connectées à l'USB expansion)
Il faudra que tu rajoutes la ligne:
MASTER=1,11,1,Y où Y est le device number du port USB. Tu peux essayer en mettant Y=0, si ça ne fonctionne pas après les prochaines phases, faudra changer ce nombre.



Dans un deuxiemè temps maintenant, il faut créer un petit script SIOC.
J'ai pas le temps de t'écrire un script complet pour le transpondeur, on va donc faire un petit "hello world" adapté à SIOC, juste pour vérifier que le bidouillage fonctionne. Après, il te suffira de trouver/écrite le script complet (avec de l'aide si besoin of course cligneoeil ).
Code: Tout sélectionner

Var 0000, Value 0
{
  &D_ACTIVE = 0   
}

Var 0400, name I_IDENT, Link IOCARD_SW, Device 1, Input 12
{
  IF &I_IDENT = 1
  {
    &D_ACTIVE = 7777   
  }
  ELSE
  {
    &D_ACTIVE = 0   
  }
}

Var 0100, name D_ACTIVE, Link IOCARD_DISPLAY, Device 1, Digit 0, Numbers 4




J'ai repris le bouton "IDENT" et le display du code transponder dans le fichier ATC_definicion.txt.
Tu dois maintenant compiler ce code avec config_Sioc et le faire exécuter par SIOC.exe (en modifiant dans SIOC.ini la ligne CONFIG_FILE=.\XXXXXXX.ssi )

Donc si tu as suivi jusqu'ici, si ce code une fois compilé fonctionne, lorsque tu appuies sur IDENT, 7777 s'affiche, si tu relâches, 0 s'affiche.

En attendant un retour (positif cligneoeil ),

JeeHell

EDIT: j'ai modifié le script SIOC pour faire apparaitre les device index...
JeeHell
 
Messages: 1851
Inscription: 18/05/09

Re: Gestion de 2 Radios COM

Messagede alain » Ven 19 Fév 2010 21:52

Allô JeeHell... merci affiche
Et avant tout un immense merci pour ton aide. Ton message est très précis, ce qui m'a permis d'y comprendre qq chose... :)
Pour commencer, puisque la programmation sioc du module ATC n'est pas disponible mais que celle du COM l'est il serait peut-être plus simple d'utiliser le bouton "TEST" de chacun des modules COM. De toute façon ce bouton ne sert à peu près pas! Il suffirait de lui attribuer une autre fonction en plus de sa fonction actuelle. Celle-ci serait tout simplement de faire en sorte que le dernier bouton teste qui est pressé devient le radio COM en fonction (l'offset Squawkbox dont Steve parlait plus haut pour activer tel ou tel radio). Car le but premier de ma requête est d'être capable d'utiliser le radio COM1 ou COM2 avec Squawkbox! Actuellement il n'y a que le COM! qui peut recevoir et transmettre!
Que penses-tu de mon idée? Plus tard il ne manquerait qu'un petit led pour afficher lequel est en fonction. Mais ça je verrai en temps et lieu!
Et si je comprends bien pour ce faire il faufrait désactiver ces modules COM (car j'en ai deux) ds le iocmodule.ini, modifier le "MASTER=....." et démarrer la nouvelle programmation modifiée....
Avant d'aller plus loin, car ça va me demander beaucoup de travail pour faire ces modifications ds le sioc, je vais attendre vos commentaires.
Mais dans l'ensemble, ai-je bien compris?
Merci
Construire ses rêves!
http://www.sim-737ng.com/
Avatar de l’utilisateur
alain
 
Messages: 333
Inscription: 19/04/09
Localisation: Quebec, Canada

Re: Gestion de 2 Radios COM

Messagede JeeHell » Ven 19 Fév 2010 22:06

Pour le choix du bouton, c'est à toi de décider, mais effectivement ça parait plus logique d'utiliser un bouton des boîtes COMM plutôt que du transpondeur...
Pour ce qui est de ta compréhension tu as très bien résumé en 2 lignes mon message de 30 lignes applaublanc.
JeeHell
 
Messages: 1851
Inscription: 18/05/09

Re: Gestion de 2 Radios COM

Messagede alain » Sam 20 Fév 2010 00:29

Alors merci, sourirebis
Je fais mes essais et vous redonne des nouvelles ici. Ça peut prendre un certain temps avant que je complète ça mais je reviens avec les résultats...
Promis
Alain
Construire ses rêves!
http://www.sim-737ng.com/
Avatar de l’utilisateur
alain
 
Messages: 333
Inscription: 19/04/09
Localisation: Quebec, Canada

Re: Gestion de 2 Radios COM

Messagede alain » Mar 23 Fév 2010 04:37

Bonjour,
Me revoici avec les résultats...
Apès avoir trouvé le bon MASTER=1,8,1,72 ou 1,8,1,90 car j'ai 2 coms j'ai essayé la programmation que tu m'as faite JeeHell. J'ai dû modifier le numéro d'input 12 pour le 2 et ça a foctionné.
Puis j'ai essayé tous les ssi qui avaient un nom en rapport avec soit les radios soit les com et tous les txt après les avoir importés mais aucun ne faisait allumer ou bouger quoique ce soit sur les radios. Bien sur après avoir donné les noms respectifes ds le ini...
C'est là ou j'en suis. gratgrat
Je crois donc qu'aucune de ces programmation n'est bonne pour faire fonctionner un des 2 coms...
Merci pour la suite si quelqu'un a des idées... :)
Alain
Construire ses rêves!
http://www.sim-737ng.com/
Avatar de l’utilisateur
alain
 
Messages: 333
Inscription: 19/04/09
Localisation: Quebec, Canada

Re: Gestion de 2 Radios COM

Messagede JeeHell » Mar 23 Fév 2010 12:02

Salut,

alors si tu reprends le SIOC des radios COM fourni, il va falloir modifier le device index pour chaque variable interrupteurs/display/led, dans ton cas il faudra mettre "1". Le plus simple est de le faire par configSIOC en modifiant directement le .ssi.

JL.
JeeHell
 
Messages: 1851
Inscription: 18/05/09

Re: Gestion de 2 Radios COM

Messagede alain » Mar 23 Fév 2010 17:09

Rebonjour JeeHell,
Je vais essayer ça dès que possible...
Dis-moi... le # de device qu'il faut indiquer ds le ssi, c'est le Device index ou Device number?
[ MASTER=(Device index),(Type),(Number of cards),(Device number) ]
Il me semblait que c'était ce dernier ce qui ds mon cas donnerait soit 72 soit 90...
Autre question... Il y a 5 fichiers txt...
com_nav_OC.txt
modulo_COM.txt
radio_com.txt
radio_lcd.txt
radios_737800.txt
Si tu as une idée lequel devrait fonctionner dis-le moi, sinon je les essayerai les uns après les autres. Je pensais que le modulo_COM.txt était le bon mais il semble manquer l'input 2.
Dans le fichier com_definition ça dit...
// SWITCHES
Var 400, name I_TFR, Link IOCARD_SW, Input 6
Var 402, name I_TEST, Link IOCARD_SW, Input 2
mais ds le modulo_com.txt je ne trouve que l'input 6 et pas le 2.
À tout le moins ça se précise et vais réessayer ce soir. Si effectivement c'est celui-ci qui est le bon il ne me restera qu'à ajouter l'input 2 afin qu'il allumes tous les display en "8" et qu'il active le bon offset pour squawkbox...
Dernière question...
Puisque j'ai 2 radios com devrai-je avoir 2 sioc différents ou quoi?
Merci encore pour ton aide qui m'est précieuse merci affiche
Alain
Construire ses rêves!
http://www.sim-737ng.com/
Avatar de l’utilisateur
alain
 
Messages: 333
Inscription: 19/04/09
Localisation: Quebec, Canada

Re: Gestion de 2 Radios COM

Messagede JeeHell » Mar 23 Fév 2010 17:23

Pour moi c'est le premier soit le device index. Pour les fichiers, à mon avis c'est bien le Modulo_com, ils n'ont pas intégré le bouton test. Mais tu pourras nous confirmer tout
ça ce soir.

@+
JL

Edit: pour le fichier SIOC tu peux en faire un seul en modifiant les noms et numéros de variables, ainsi que le device index.
JeeHell
 
Messages: 1851
Inscription: 18/05/09

Re: Gestion de 2 Radios COM

Messagede alain » Mar 23 Fév 2010 18:11

DAC...
Alors si j'ai bien compris je devrai mettre qq chose du genre?
MASTER=1,8,1,72
MASTER=2,8,1,90
et indiquer le device 1 pour le comm1 et device 2 pour le second... Ça me semble assez simple :)
À ce soir donc...
Construire ses rêves!
http://www.sim-737ng.com/
Avatar de l’utilisateur
alain
 
Messages: 333
Inscription: 19/04/09
Localisation: Quebec, Canada

Re: Gestion de 2 Radios COM

Messagede alain » Mer 24 Fév 2010 02:38

Wow super,
Jusqu'à maintenant ça va bien... J'ai réussi à faire fonctionner les com1 et com2 avec une seule programmation. Programmation que je met ici à la fin pour ceux qui voudraient s'épargner un peu de casse tête, bien que cette programmation est celle fournie avec sioc 3.7 légèrement modifiée pour avoir les 2 com.
Maintenant il me reste à activer le bouton qui fera allumer tous les displays et en même temps activer ce com ds squawkbox. Je sais bien que c'est simple mais pas tout à fait pour moi.... Mais j'y travaille :)

Maintenant... avec le iocmodule on peut avec le ini diminuer l'intensité des displays. Personellement je l'ai beaucoup diminuer pcq ceux-ci sont très intenses.... Mais avec sioc je n'ai aucune idée de comment faire ça. Ds le ini de iocmodule je les ai placé à 22 d'intensité... Quelqu'un peut me guider?

Dernière chose...
toujours ds ce iocmodule.ini j'ai désactivé les 2 coms avec cette ligne
[ Activacion de Radios ]
[ Radio Activation ]
active_com1=no
active_com2=no
active_nav1=Yes
active_nav2=Yes
active_adf1=Yes
active_adf2=Yes
active_atc=Yes


Pourtant lorsque je démarre ce iocmodule les deux coms démarrentent comme s'ils étaient toujours fonctionnels, mais ne s'affichent pas ds FS... C'est à dire que les displays s'allument et que je peux modifier les fréquences sur ces radios com mais ça n'interragit pas ds FS Une idée?
Celà aurait-il un rapport avec ces lignes ?
[ Orden para COM , NAV y ADF]
[ COM , NAV % ADF modules order ]
[ Change to NO for device number minor assigned to COM2 , NAV2 or ADF2, if YES, minor device number is COM1 , NAV1 or ADF1]
FIRST_DEVICE_COM1=Yes
FIRST_DEVICE_NAV1=Yes
FIRST_DEVICE_ADF1=Yes


Merci et la suite bientôt avec Squakbox (peut-être...:)!


// *****************************************************************************
// * Config_SIOC ver 3.7B1 - By Manolo Vélez - http://www.opencockpits.com
// *****************************************************************************
// * FileName : module_com1_2.txt
// * Date : 2010-02-23



Var 0000, Value 0
{
&ent_com1 = 118
&dec_com1 = 0
&act_com1 = 118000
&enc_com1 = 1
&ent_com2 = 118
&dec_com2 = 0
&act_com2 = 118000
&enc_com2 = 1
}

Var 0002, name enc_com1
{
IF &enc_com1 = 1
{
&io_pt_com1 = 1
&io_pt2_com1 = 1
CALL &sub_d_com1
&id2_com1 = &act_com1
}
ELSE
{
&io_pt_com1 = 0
&io_pt2_com1 = 0
&id_com1 = -999999
&id2_com1 = -999999
}
}

Var 0004, name ent_com1

Var 0006, name dec_com1

Var 0008, name ie_dec_com1, Link IOCARD_ENCODER, Device 1, Input 4, Aceleration 1, Type 2
{
IF &enc_com1 = 1
{
L0 = &ie_dec_com1 * 25
L1 = &dec_com1 + L0
IF L1 < 0
{
L1 = 975
}
IF L1 > 975
{
L1 = 0
}
&dec_com1 = L1
CALL &sub_d_com1
}
}

Var 0010, name ie_ent_com1, Link IOCARD_ENCODER, Device 1, Input 0, Aceleration 1, Type 2
{
IF &enc_com1 = 1
{
L0 = &ie_ent_com1 * -1
&ent_com1 = ROTATE 118 ,135 ,L0
CALL &sub_d_com1
}
}

Var 0012, name id_com1, Link IOCARD_DISPLAY, Device 1, Digit 6, Numbers 6

Var 0014, name sub_d_com1, Link SUBRUTINE
{
L0 = &ent_com1 * 1000
&id_com1 = L0 + &dec_com1
}

Var 0016, name io_pt_com1, Link IOCARD_OUT, Device 1, Output 20

Var 0018, name ii_sw_com1, Link IOCARD_SW, Device 1, Input 6
{
IF &ii_sw_com1 = 1
{
IF &enc_com1 = 1
{
L0 = &ent_com1 * 1000
L0 = L0 + &dec_com1
L1 = DIV &act_com1 ,1000
L2 = MOD &act_com1 ,1000
&act_com1 = L0
&ent_com1 = L1
&dec_com1 = L2
CALL &sub_d_com1
&id2_com1 = &act_com1
}
}
}

Var 0020, name act_com1

Var 0022, name id2_com1, Link IOCARD_DISPLAY, Device 1, Digit 0, Numbers 6
{
IF &id2_com1 > 0
{
&xp_com1 = DIV &id2_com1 ,10
}
}

Var 0024, name io_pt2_com1, Link IOCARD_OUT, Device 1, Output 21

Var 0026, name xp_com1, Value 11800
{
L0 = &xp_com1 - 10000
&fcom1 = TOBCD L0
}

Var 0250, name fcom1, Link FSUIPC_OUT, Offset $034E, Length 2 // COM1 Active

Var 0102, name enc_com2
{
IF &enc_com2 = 1
{
&io_pt_com2 = 1
&io_pt2_com2 = 1
CALL &sub_d_com2
&id2_com2 = &act_com2
}
ELSE
{
&io_pt_com2 = 0
&io_pt2_com2 = 0
&id_com2 = -999999
&id2_com2 = -999999
}
}

Var 0104, name ent_com2

Var 0106, name dec_com2

Var 0108, name ie_dec_com2, Link IOCARD_ENCODER, Device 2, Input 4, Aceleration 1, Type 2
{
IF &enc_com2 = 1
{
L0 = &ie_dec_com2 * 25
L1 = &dec_com2 + L0
IF L1 < 0
{
L1 = 975
}
IF L1 > 975
{
L1 = 0
}
&dec_com2 = L1
CALL &sub_d_com2
}
}

Var 0110, name ie_ent_com2, Link IOCARD_ENCODER, Device 2, Input 0, Aceleration 1, Type 2
{
IF &enc_com2 = 1
{
L0 = &ie_ent_com2 * -1
&ent_com2 = ROTATE 118 ,135 ,L0
CALL &sub_d_com2
}
}

Var 0112, name id_com2, Link IOCARD_DISPLAY, Device 2, Digit 6, Numbers 6

Var 0114, name sub_d_com2, Link SUBRUTINE
{
L0 = &ent_com2 * 1000
&id_com2 = L0 + &dec_com2
}

Var 0116, name io_pt_com2, Link IOCARD_OUT, Device 2, Output 20

Var 0118, name ii_sw_com2, Link IOCARD_SW, Device 2, Input 6
{
IF &ii_sw_com2 = 1
{
IF &enc_com2 = 1
{
L0 = &ent_com2 * 1000
L0 = L0 + &dec_com2
L1 = DIV &act_com2 ,1000
L2 = MOD &act_com2 ,1000
&act_com2 = L0
&ent_com2 = L1
&dec_com2 = L2
CALL &sub_d_com2
&id2_com2 = &act_com2
}
}
}

Var 0120, name act_com2

Var 0122, name id2_com2, Link IOCARD_DISPLAY, Device 2, Digit 0, Numbers 6
{
IF &id2_com2 > 0
{
&xp_com2 = DIV &id2_com2 ,10
}
}

Var 0124, name io_pt2_com2, Link IOCARD_OUT, Device 2, Output 21

Var 0126, name xp_com2, Value 11800
{
L0 = &xp_com2 - 10000
&fcom2 = TOBCD L0
}

Var 0350, name fcom2, Link FSUIPC_OUT, Offset $034E, Length 2 // COM2 Active
Construire ses rêves!
http://www.sim-737ng.com/
Avatar de l’utilisateur
alain
 
Messages: 333
Inscription: 19/04/09
Localisation: Quebec, Canada

PrécédenteSuivante

Retourner vers Modules plug&play





Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité

cron