Page 1 of 1

OC4BA/v3 EFIS_FO

Posted: Sun Nov 23, 2014 6:47 pm
by klaus
HI Roar

Since I do not have much knowledge about SIOC scrips
Having trouble with EFIS_FO, Have MCP and 2 EFIS.
Have changed following SIOC Script OPC4NGX_PP_v1.2 to match the input and output, my EFIS is double rotary switch (rotary + encoder ) as a real EFIS.

MCP works ok
EFIS CPT works ok


EFIS_FO:
all push buttom on EFIS_FO works ok
Encoder mins-rot and baro-rot works ok

BUT rotery switch mode and range, as well as vor1adf1 and vor2adf2 does not work, however, I can see in SIOC IOCPConsole there is a connection.

MINS / radio-baro and BARO / IN-HPA is turning on EFIS_CPT

SIOC INI

[SIOC]
IOCP_port = 8092
IOCP_timeout = 4000
Minimized = Yes
toggle_delay = 20
[IOCARDS MODULE]
IOCard_disable = No
IOCard_LPT = No
[FSUIPC MODULE]
FSUipcdisable = No
FSUipcRefresh = 60
[IOCP CLIENTS MODULES]
IOCPini_delay = 3000
IOCPclient0_disable = no
IOCPclient0_host = localhost
IOCPclient0_port = 8099
IOCPclient1_disable = yes
IOCPclient1_host = localhost
IOCPclient1_port = 8092
[SOUND MODULE]
Sound_disable = Yes
Volume = 100
[*]
CONFIG_FILE = OCP4NGX_PP_v1.2KS.ssi
MASTER = 15,4,1,83
MASTER = 7,4,1,89
MASTER = 17,4,1,87

(connected MCP and EFIS first and done the config, after that connected the other EFIS, and done a new config, also tried to change OC4BA.ini with My_EFISXXXXXX for alle 3 modules ) no luck

It seems to have something with rotary switch to do


SIOC Script
_______________________________________________________________________________________

Var 2405, name WXR, static, Link IOCARD_SW, Device 7, Input 2, Type P

Var 2400, name STA, static, Link IOCARD_SW, Device 7, Input 3, Type P // EFIS_CAPT

Var 2382, name ARPT, static, Link IOCARD_SW, Device 7, Input 5, Type P

Var 2397, name POS, static, Link IOCARD_SW, Device 7, Input 7, Type P

Var 2401, name TERR, static, Link IOCARD_SW, Device 7, Input 8, Type P

Var 2387, name FPV, static, Link IOCARD_SW, Device 7, Input 0, Type P

Var 2396, name MTRS, static, Link IOCARD_SW, Device 7, Input 1, Type P

Var 2404, name WPT, static, Link IOCARD_SW, Device 7, Input 4, Type P

Var 2395, name CTR, static, Link IOCARD_SW, Device 7, Input 17, Type P

Var 2386, name DATA, static, Link IOCARD_SW, Device 7, Input 17, Type P

Var 2399, name TFC, static, Link IOCARD_SW, Device 7, Input 26, Type P

Var 2385, name STD, static, Link IOCARD_SW, Device 7, Input 32, Type P

Var 2402, name VOR1ADF1, static, Value 1

Var 0081, name VOR1, Link IOCARD_SW, Device 7, Input 28, Type 1
{
IF &VOR1 = 1
{
&VOR1ADF1 = 0
}
ELSE
{
IF &VOR1 = 0
{
&VOR1ADF1 = 1
}
}
}

Var 0082, name ADF1, Link IOCARD_SW, Device 7, Input 27, Type 1
{
IF &ADF1 = 1
{
&VOR1ADF1 = 2
}
ELSE
{
IF &ADF1 = 0
{
&VOR1ADF1 = 1
}
}
}

Var 2403, name VOR2ADF2, static, Value 1

Var 0083, name VOR2, Link IOCARD_SW, Device 7, Input 30, Type 1
{
IF &VOR2 = 1
{
&VOR2ADF2 = 0
}
ELSE
{
IF &VOR2 = 0
{
&VOR2ADF2 = 1
}
}
}

Var 0084, name ADF2, Link IOCARD_SW, Device 7, Input 29, Type 1
{
IF &ADF2 = 1
{
&VOR2ADF2 = 2
}
ELSE
{
IF &ADF2 = 0
{
&VOR2ADF2 = 1
}
}
}

Var 2394, name MODE, static

Var 0085, name APP_E, Link IOCARD_SW, Device 7, Input 13, Type 1
{
&MODE = 0
}

Var 0086, name VOR_E, Link IOCARD_SW, Device 7, Input 14, Type 1
{
&MODE = 1
}

Var 0087, name MAP, Link IOCARD_SW, Device 7, Input 16, Type 1
{
&MODE = 2
}

Var 0088, name PLN, Link IOCARD_SW, Device 7, Input 15, Type 1
{
&MODE = 3
}

Var 2398, name RANGE, static

Var 0089, name ND_5, Link IOCARD_SW, Device 7, Input 18, Type 1
{
&RANGE = 0
}

Var 0090, name ND_10, Link IOCARD_SW, Device 7, Input 19, Type 1
{
&RANGE = 1
}

Var 0091, name ND_20, Link IOCARD_SW, Device 7, Input 20, Type 1
{
&RANGE = 2
}

Var 0092, name ND_40, Link IOCARD_SW, Device 7, Input 21, Type 1
{
&RANGE = 3
}

Var 0093, name ND_80, Link IOCARD_SW, Device 7, Input 22, Type 1
{
&RANGE = 4
}

Var 0094, name ND_160, Link IOCARD_SW, Device 7, Input 23, Type 1
{
&RANGE = 5
}

Var 0095, name ND_320, Link IOCARD_SW, Device 7, Input 25, Type 1
{
&RANGE = 6
}

Var 0096, name ND_640, Link IOCARD_SW, Device 7, Input 24, Type 1
{
&RANGE = 7
}

Var 2392, name MINIMUMS, static

Var 0097, name MINS_RADIO, Link IOCARD_SW, Device 7, Input 12, Type P
{
&MINIMUMS = 0
}

Var 0099, name MINS_BARO, Link IOCARD_SW, Device 7, Input 11, Type P
{
&MINIMUMS = 1
}

Var 2384, name BARO, static

Var 0100, name BARO_IN, Link IOCARD_SW, Device 7, Input 9, Type P
{
&BARO = 0
}

Var 0102, name BARO_HPA, Link IOCARD_SW, Device 7, Input 10, Type P
{
&BARO = 1
}

Var 0401, name e_delay

Var 0402, name t_rot_RB, Value 500

Var 0403, name tempRB, Value 0

Var 2390, name RADIO_BARO, static

Var 0106, name MINS_ROT, Link IOCARD_ENCODER, Device 7, Input 36, Aceleration 2, Type 2 // MINS turning
{
&tempRB = &t_rot_RB
L0 = &MINS_ROT // delete "* -1" before // if turning direc
&t_rot_RB = ROTATE 0 ,1000 ,L0
IF &tempRB > &t_rot_RB
{
&RADIO_BARO = 8192
&e_delay = DELAY 1 ,1
&RADIO_BARO = 2000
}
ELSE
{
&RADIO_BARO = 16384
&e_delay = DELAY 1 ,1
&RADIO_BARO = 2000
}
}

Var 0405, name t_rot_IH, Value 500

Var 0406, name tempIH, Value 0

Var 2383, name IN_HPA, static

Var 0109, name BARO_ROT, Link IOCARD_ENCODER, Device 7, Input 38, Aceleration 2, Type 2 // BARO turning
{
&tempIH = &t_rot_IH
L0 = &BARO_ROT // delete "* -1" before // if turning direc
&t_rot_IH = ROTATE 0 ,1000 ,L0
IF &tempIH > &t_rot_IH
{
&IN_HPA = 8192
&e_delay = DELAY 1 ,1
&IN_HPA = 2000
}
ELSE
{
&IN_HPA = 16384
&e_delay = DELAY 1 ,1
&IN_HPA = 2000
}
}

Var 2427, name WXR_FO, static, Link IOCARD_SW, Device 17, Input 2, Type P

Var 2409, name STD_FO, static, Link IOCARD_SW, Device 17, Input 32, Type P

Var 2422, name STA_FO, static, Link IOCARD_SW, Device 17, Input 3, Type P // EFIS_CAPT

Var 2406, name ARPT_FO, static, Link IOCARD_SW, Device 17, Input 5, Type P

Var 2419, name POS_FO, static, Link IOCARD_SW, Device 17, Input 7, Type P

Var 2423, name TERR_FO, static, Link IOCARD_SW, Device 17, Input 8, Type P

Var 2411, name FPV_FO, static, Link IOCARD_SW, Device 17, Input 0, Type P

Var 2418, name MTRS_FO, static, Link IOCARD_SW, Device 17, Input 1, Type P

Var 2415, name RST_FO, static, Link IOCARD_SW, Device 17, Input 31, Type P

Var 2426, name WPT_FO, static, Link IOCARD_SW, Device 17, Input 4, Type P

Var 2417, name CTR_FO, static, Link IOCARD_SW, Device 17, Input 17, Type P // EFIS_CAPT

Var 2410, name DATA_FO, static, Link IOCARD_SW, Device 17, Input 6, Type P // EFIS_CAPT

Var 2421, name TFC_FO, static, Link IOCARD_SW, Device 17, Input 26, Type P

Var 2424, name VOR1ADF1_FO, static, Value 1

Var 0116, name VOR1_FO, Link IOCARD_SW, Device 17, Input 28, Type 1
{
IF &VOR1_FO = 1
{
&VOR1ADF1_FO = 0
}
ELSE
{
IF &VOR1_FO = 0
{
&VOR1ADF1_FO = 1
}
}
}

Var 0117, name ADF1_FO, Link IOCARD_SW, Device 17, Input 27, Type 1
{
IF &ADF1_FO = 1
{
&VOR1ADF1_FO = 2
}
ELSE
{
IF &ADF1_FO = 0
{
&VOR1ADF1_FO = 1
}
}
}

Var 2425, name VOR2ADF2_FO, static, Value 1

Var 0118, name VOR2_FO, Link IOCARD_SW, Device 17, Input 30, Type 1
{
IF &VOR2_FO = 1
{
&VOR2ADF2_FO = 0
}
ELSE
{
IF &VOR2_FO = 0
{
&VOR2ADF2_FO = 1
}
}
}

Var 0119, name ADF2_FO, Link IOCARD_SW, Device 17, Input 29, Type 1
{
IF &ADF2_FO = 1
{
&VOR2ADF2_FO = 2
}
ELSE
{
IF &ADF2_FO = 0
{
&VOR2ADF2_FO = 1
}
}
}

Var 2416, name MODE_FO, static

Var 0120, name APP_E_FO, Link IOCARD_SW, Device 17, Input 13, Type 1
{
&MODE_FO = 0
}

Var 0121, name VOR_E_FO, Link IOCARD_SW, Device 17, Input 14, Type 1
{
&MODE_FO = 1
}

Var 0122, name MAP_FO, Link IOCARD_SW, Device 17, Input 16, Type 1
{
&MODE_FO = 2
}

Var 0123, name PLN_FO, Link IOCARD_SW, Device 17, Input 15, Type 1
{
&MODE_FO = 3
}

Var 2420, name RANGE_FO, static

Var 0124, name ND_5_FO, Link IOCARD_SW, Device 17, Input 18, Type 1
{
&RANGE_FO = 0
}

Var 0125, name ND_10_FO, Link IOCARD_SW, Device 17, Input 19, Type 1
{
&RANGE_FO = 1
}

Var 0126, name ND_20_FO, Link IOCARD_SW, Device 17, Input 20, Type 1
{
&RANGE_FO = 2
}

Var 0127, name ND_40_FO, Link IOCARD_SW, Device 17, Input 21, Type 1
{
&RANGE_FO = 3
}

Var 0128, name ND_80_FO, Link IOCARD_SW, Device 17, Input 22, Type 1
{
&RANGE_FO = 4
}

Var 0129, name ND_160_FO, Link IOCARD_SW, Device 17, Input 23, Type 1
{
&RANGE_FO = 5
}

Var 0130, name ND_320_FO, Link IOCARD_SW, Device 17, Input 25, Type 1
{
&RANGE_FO = 6
}

Var 0131, name ND_640_FO, Link IOCARD_SW, Device 17, Input 24, Type 1
{
&RANGE_FO = 7
}

Var 2414, name MINIMUMS_FO, static

Var 0132, name MINS_RADIO_FO, Link IOCARD_SW, Device 17, Input 12, Type P
{
&MINIMUMS = 0
}

Var 0133, name MINS_BARO_FO, Link IOCARD_SW, Device 17, Input 11, Type P
{
&MINIMUMS = 1
}

Var 2408, name BARO_FO, static

Var 0135, name BARO_IN_FO, Link IOCARD_SW, Device 17, Input 9, Type P
{
&BARO = 0
}

Var 0137, name BARO_HPA_FO, Link IOCARD_SW, Device 17, Input 10, Type P
{
&BARO = 1
}

Var 0138, name e_delay_FO

Var 0139, name t_rot_RB_FO, Value 500

Var 0140, name tempRB_FO, Value 0

Var 2412, name RADIO_BARO_FO, static

Var 0141, name MINS_ROT_FO, Link IOCARD_ENCODER, Device 17, Input 36, Aceleration 2, Type 2 // MINS turning
{
&tempRB_FO = &t_rot_RB_FO
L0 = &MINS_ROT_FO * 1 // delete "* -1" before // if turning direc
&t_rot_RB_FO = ROTATE 0 ,1000 ,L0
IF &tempRB_FO > &t_rot_RB_FO
{
&RADIO_BARO_FO = 8192
&e_delay_FO = DELAY 1 ,1
&RADIO_BARO_FO = 2000
}
ELSE
{
&RADIO_BARO_FO = 16384
&e_delay_FO = DELAY 1 ,1
&RADIO_BARO_FO = 2000
}
}

Var 0142, name t_rot_IH_FO, Value 500

Var 0143, name tempIH_FO, Value 0

Var 2407, name IN_HPA_FO, static

Var 0144, name BARO_ROT_FO, Link IOCARD_ENCODER, Device 17, Input 38, Aceleration 2, Type 2 // BARO turning
{
&tempIH_FO = &t_rot_IH_FO
L0 = &BARO_ROT_FO * 1 // delete "* -1" before // if turning direc
&t_rot_IH_FO = ROTATE 0 ,1000 ,L0
IF &tempIH_FO > &t_rot_IH_FO
{
&IN_HPA_FO = 8192
&e_delay_FO = DELAY 1 ,1
&IN_HPA_FO = 2000
}
ELSE
{
&IN_HPA_FO = 16384
&e_delay_FO = DELAY 1 ,1
&IN_HPA_FO = 2000
}
}
___________________________________________________________________________________

Has been sitting for many hours and can not get on, so hope you can help me a little.

Questions: about 777 script: can I copy EFIS_FO into this script as it only provides Captains EFIS?

Thanks in advance
Klaus Surrow

Re: OC4BA/v3 EFIS_FO

Posted: Mon Nov 24, 2014 10:32 am
by mvr1918
Hi,

I will take a look at it when I am back in my cockpit. Out travelling at the moment.

Which driver version are you using( OCP4NGX_246 or OCP4NGX_247)?

If you are running 246 , change to 247 version. It could be that some of the SDK Events/Vars are not enabled for the EFIS_FO in the 246 version.


Roar

Re: OC4BA/v3 EFIS_FO

Posted: Mon Nov 24, 2014 9:54 pm
by mvr1918
Hei Klaus,

I have found some bugs in the OCP4NGX driver that controls the EFIS-FO module.

They are now corrected and a new built is downloaded to the

OCP4NGX customer folder on my ONEDRIVE


Please read the Update info file in the ONEDRIVE

Questions: about 777 script: can I copy EFIS_FO into this script as it only provides Captains EFIS?
Yes, copy the B777X EFIS_CPT script part and modify that to fit the EFIS-FO Variables/Events for the B777X.



To my knowlegde there is no Type 1 attribute for switches, use the Type P as in the origninal script

A link has been sent to your email

Roar

Re: OC4BA/v3 EFIS_FO

Posted: Tue Nov 25, 2014 4:17 pm
by klaus
HI Roar
Thanks for the quick reply.

The new OC4BA.exe solved almost all my problems, with the Pmdg737 ( changed the Type 1 to P)

have a problem with the EFIS_FO:

________________________________________________________________
This script to change RADIO to BARO and IN to HPA on EFIS_CPT works ok

Var 2392, name MINIMUMS, static
Var 0395, name MINS_RADIO, Link IOCARD_SW, Device 7, Input 12, Type P
{
&MINIMUMS = 0
}
Var 0396, name MINS_BARO, Link IOCARD_SW, Device 7, Input 11, Type P
{
&MINIMUMS = 1
}
Var 2384, name BARO, static
Var 0398, name BARO_IN, Link IOCARD_SW, Device 7, Input 9, Type P
{
&BARO = 0
}
____________________________________________________________________
This script to change RADIO to BARO and IN to HPA on EFIS_FO

Var 2414, name MINIMUMS_FO, static
Var 0519, name MINS_RADIO_FO, Link IOCARD_SW, Device 17, Input 12, Type P
{
&MINIMUMS = 0
}
Var 0520, name MINS_BARO_FO, Link IOCARD_SW, Device 17, Input 11, Type P
{
&MINIMUMS = 1
}

Var 2408, name BARO_FO, static

Var 0521, name BARO_IN_FO, Link IOCARD_SW, Device 17, Input 9, Type P
{
&BARO = 0
}
Var 0522, name BARO_HPA_FO, Link IOCARD_SW, Device 17, Input 10, Type P
{
&BARO = 1
}

but this script changes EFIS_CPT instead of EFIS_FO
although I use: Var 2414 EVT_EFIS_FO_MINIMUMS_RADIO_BARO
Var 2408 EVT_EFIS_FO_BARO_IN_HPA

any idea

Klaus

Re: OC4BA/v3 EFIS_FO

Posted: Tue Nov 25, 2014 8:14 pm
by mvr1918
Hi,

You are changing CPT's MINIMUMS and BARO in both scripts.

For FO you need to

replace &MINIMUMS with &MINIMUMS_FO

and

replace &BARO with &BARO_FO

Re: OC4BA/v3 EFIS_FO

Posted: Tue Nov 25, 2014 9:00 pm
by klaus
HI
Thank you, I had overlooked the FO, that's what happens when you copy and paste,
and forget to go through it all. ( som vi siger på Dansk: Nogle gange kan man ikke se skoven for bare træer)
(as we say in Danish: Sometimes you can not see the forest for the trees)


everything works perfectly on 737

Yours sincerely

Klaus