guenseli

Aerosoft Airbus X +(Extended) (module version 2.4)

Recommended Posts

Here you can download the LINDA aircraft module for the Aerosoft Airbus X (+Extended) module v2.4.

 

For users with the new Aerosoft Airbus A318/A319/A320/A321 you need the latest version 4.2.

Installation notes:

  • Download and unzip it and place the two folders into: */Microsoft Games/Microsoft Flight Simulator X/Modules
  • Say "yes" if he'd like to overwrite anything

We will update this files from time to time and will make a little note in this thread about the changes.
Users, who also made changes to this codes could post it in this thread or drop me a PM and we will update the module.
If you have created a complete new module (also for other addons) please PM us.

NO LONGER AVAILABLE

if you want a MCP Combo II preset, rename the *.default files to *.lua which could be found here after installing
Microsoft Flight Simulator X/Modules/linda-cfg/aircrafts/Aerosoft Airbus X


Note: I haven't tested, but this module should work with the old version of the Airbus, too
(except the functions who are especially for the new one of course)


Update:
v2.0 --> v2.1
ND functions enhanced thanks to Capt. PERO!
fixed vs level/pull bug, also thanks to Capt. PERO!

v2.1 --> v2.2
- Important Bugfixes regarding Autopilot
- Ground Services Added
- Advanced Display functions for MCP1 Users :O)

v2.2 --> v2.3
added ND Mode single functions
added ND Range single functions

 

v.2.3 --> v2.4
added OVHD int lights
XPDR bugfix

Edited by ScotFlieger
Module no longer available

Share this post


Link to post
Share on other sites
Help AVSIM continue to serve you!
Please donate today!

I found the MCP2 pretty much worked fine without any update with the original Airbus X Linda module, but this new module is very much appreciated, thanks.

Share this post


Link to post
Share on other sites

Many thanks for this.

 

There seem to be less options for opening / closing the various doors. Is this deliberate? Although they can be manipulated within the VC, I prefer to use my TT Panel.

Share this post


Link to post
Share on other sites

Thanks a lot for the new profile!

 

Some minor issues I have found:

  • "Autopilot VS level" doesn't work. It triggers "ALT set" instead.
  • The VS knob pull functionality is missing.

Display:

  • In HDG managed (LNAV) mode the asterisk in the lower display row (---*) is continuously blinking.
  • Same blinking occurs with a "0" in ALT managed (---0).
  • During a OP CLB/DES the display shows the current V/S in the lower display row. Although this might be a feature, I think it shouldn't be displayed because the FCU doesn't show it either.

Would be great if you look into these issues.

Thank you!

 

Regards,

Robert

Share this post


Link to post
Share on other sites

I think we need another option as well, VS Level is the pull function which tells the aircraft to level off. The push function which enables VS mode needs to be added as its not currently in LINDA and looking in the linda tracer I think the L:Var for that is called L:AB_AP_VSenb. If I get time later I'll add a new function and try it.

Share this post


Link to post
Share on other sites

I wont be trying it as I have no clue how to get that function working, earlier I was looking at the older version of this lua which was created for the original Airbus X which seemed a lot more straight forward. I'll have to let Guenter deal with this.

Share this post


Link to post
Share on other sites

Whats the deal with the ECAMCRSE message blinking on my v2 MCCombo ?

 

Also - is it me or does the HDG knob not work ? Nevermind - fixed those myself. Still curious about this flashing message.

Share this post


Link to post
Share on other sites

The same is for me, rotary knob HDG not work. Any ideas?. Sorry for my english.

 

Check if you use the specific Aerosoft Airbus X HDG functions "AP Rotaties" --> "AB HDG plus / plusfast / minus / minusfast".

 

On my side, the HDG knob was initially assigned to the standard or old (?) functions that do not work.

Share this post


Link to post
Share on other sites

Yesss!, Thanks Robert. It's exactly what were saying,. I used to also correct the VS knob and going finer than before.

 

Thaanks!

Share this post


Link to post
Share on other sites

Hi Andy,

 

any news regarding push and pull VS-Knob?

I missed the approach in Geneva and found out, that this function is missing... ;O)

 

Thanks a lot for this nice profile...

 

Regards,

Peter

Share this post


Link to post
Share on other sites

Hi Peter,

 

Sorry no news from me, like I mentioned earlier in the thread I don't know how to program this facility, hopefully Guenter is reading this and can fix it at some point.

Share this post


Link to post
Share on other sites

Same here,

AB HDG PlusFast/MinusFast is working, but no luck with AB HDG Plus/Minus.

Share this post


Link to post
Share on other sites

Hello guys,

 

sorry for the late reply.

As far as I can say, things work here (but I have not flown the Bus now for several weeks)

 

Please delete the assignments which do not work ("remove assignment"), save it and reassign it.

 

Hope that fixes it.

Otherwise I have to reinstall the Bus and will have a look into it if there's time for...

Share this post


Link to post
Share on other sites

Hi folks,

 

if anyone (like me) needs although to toggle the ND buttons please replace the "ND controls" section with:

 

-- ## ND controls #####################################
function ND_CSTR_on ()
ipc.writeLvar("L:AB_MPL_ND_CSTR", 1)
ipc.writeLvar("L:AB_MPL_ND_WPT", 0)
ipc.writeLvar("L:AB_MPL_ND_VOR", 0)
ipc.writeLvar("L:AB_MPL_ND_NDB", 0)
ipc.writeLvar("L:AB_MPL_ND_ARPT", 0)
SmallOverheadPushButtons ()
DspShow ("ND", "CSTR")
end
function ND_CSTR_off ()
ipc.writeLvar("L:AB_MPL_ND_CSTR", 0)
ipc.writeLvar("L:AB_MPL_ND_WPT", 0)
ipc.writeLvar("L:AB_MPL_ND_VOR", 0)
ipc.writeLvar("L:AB_MPL_ND_NDB", 0)
ipc.writeLvar("L:AB_MPL_ND_ARPT", 0)
SmallOverheadPushButtons ()
DspShow ("ND", "CSTR")
end
function ND_CSTR_toggle ()
if ipc.readLvar("L:AB_MPL_ND_CSTR") == 0 then
 ND_CSTR_on ()
else
 ND_CSTR_off ()
end
end
function ND_WPT_on ()
ipc.writeLvar("L:AB_MPL_ND_CSTR", 0)
ipc.writeLvar("L:AB_MPL_ND_WPT", 1)
ipc.writeLvar("L:AB_MPL_ND_VOR", 0)
ipc.writeLvar("L:AB_MPL_ND_NDB", 0)
ipc.writeLvar("L:AB_MPL_ND_ARPT", 0)
SmallOverheadPushButtons ()
DspShow ("ND", "WPT")
end
function ND_WPT_off ()
ipc.writeLvar("L:AB_MPL_ND_CSTR", 0)
ipc.writeLvar("L:AB_MPL_ND_WPT", 0)
ipc.writeLvar("L:AB_MPL_ND_VOR", 0)
ipc.writeLvar("L:AB_MPL_ND_NDB", 0)
ipc.writeLvar("L:AB_MPL_ND_ARPT", 0)
SmallOverheadPushButtons ()
DspShow ("ND", "WPT")
end
function ND_WPT_toggle ()
if ipc.readLvar("L:AB_MPL_ND_WPT") == 0 then
 ND_WPT_on ()
else
 ND_WPT_off ()
end
end
function ND_VOR_on ()
ipc.writeLvar("L:AB_MPL_ND_CSTR", 0)
ipc.writeLvar("L:AB_MPL_ND_WPT", 0)
ipc.writeLvar("L:AB_MPL_ND_VOR", 1)
ipc.writeLvar("L:AB_MPL_ND_NDB", 0)
ipc.writeLvar("L:AB_MPL_ND_ARPT", 0)
SmallOverheadPushButtons ()
DspShow ("ND", "VOR")
end
function ND_VOR_off ()
ipc.writeLvar("L:AB_MPL_ND_CSTR", 0)
ipc.writeLvar("L:AB_MPL_ND_WPT", 0)
ipc.writeLvar("L:AB_MPL_ND_VOR", 0)
ipc.writeLvar("L:AB_MPL_ND_NDB", 0)
ipc.writeLvar("L:AB_MPL_ND_ARPT", 0)
SmallOverheadPushButtons ()
DspShow ("ND", "VOR")
end
function ND_VOR_toggle ()
if ipc.readLvar("L:AB_MPL_ND_VOR") == 0 then
 ND_VOR_on ()
else
 ND_VOR_off ()
end
end
function ND_NDB_on ()
ipc.writeLvar("L:AB_MPL_ND_CSTR", 0)
ipc.writeLvar("L:AB_MPL_ND_WPT", 0)
ipc.writeLvar("L:AB_MPL_ND_VOR", 0)
ipc.writeLvar("L:AB_MPL_ND_NDB", 1)
ipc.writeLvar("L:AB_MPL_ND_ARPT", 0)
SmallOverheadPushButtons ()
DspShow ("ND", "NDB")
end
function ND_NDB_off ()
ipc.writeLvar("L:AB_MPL_ND_CSTR", 0)
ipc.writeLvar("L:AB_MPL_ND_WPT", 0)
ipc.writeLvar("L:AB_MPL_ND_VOR", 0)
ipc.writeLvar("L:AB_MPL_ND_NDB", 0)
ipc.writeLvar("L:AB_MPL_ND_ARPT", 0)
SmallOverheadPushButtons ()
DspShow ("ND", "NDB")
end
function ND_NDB_toggle ()
if ipc.readLvar("L:AB_MPL_ND_NDB") == 0 then
 ND_NDB_on ()
else
 ND_NDB_off ()
end
end
function ND_ARPT_on ()
ipc.writeLvar("L:AB_MPL_ND_CSTR", 0)
ipc.writeLvar("L:AB_MPL_ND_WPT", 0)
ipc.writeLvar("L:AB_MPL_ND_VOR", 0)
ipc.writeLvar("L:AB_MPL_ND_NDB", 0)
ipc.writeLvar("L:AB_MPL_ND_ARPT", 1)
SmallOverheadPushButtons ()
DspShow ("ND", "ARPT")
end
function ND_ARPT_off ()
ipc.writeLvar("L:AB_MPL_ND_CSTR", 0)
ipc.writeLvar("L:AB_MPL_ND_WPT", 0)
ipc.writeLvar("L:AB_MPL_ND_VOR", 0)
ipc.writeLvar("L:AB_MPL_ND_NDB", 0)
ipc.writeLvar("L:AB_MPL_ND_ARPT", 0)
SmallOverheadPushButtons ()
DspShow ("ND", "ARPT")
end
function ND_ARPT_toggle ()
if ipc.readLvar("L:AB_MPL_ND_ARPT") == 0 then
 ND_ARPT_on ()
else
 ND_ARPT_off ()
end
end
function ND_DATA_toggle ()
ND_Data_CSTR = ipc.readLvar("L:AB_MPL_ND_CSTR")
ND_Data_WPT = ipc.readLvar("L:AB_MPL_ND_WPT")
ND_Data_VOR = ipc.readLvar("L:AB_MPL_ND_VOR")
ND_Data_NDB = ipc.readLvar("L:AB_MPL_ND_NDB")
ND_Data_ARPT = ipc.readLvar("L:AB_MPL_ND_ARPT")
if ND_Data_CSTR == 1 then ND_DATAvar = 1
elseif ND_Data_WPT == 1 then ND_DATAvar = 2
elseif ND_Data_VOR == 1 then ND_DATAvar = 3
elseif ND_Data_NDB == 1 then ND_DATAvar = 4
elseif ND_Data_ARPT == 1 then ND_DATAvar = 5
end
if ND_DATAvar == 1 then
ND_WPT_on ()
elseif ND_DATAvar == 2 then
ND_VOR_on ()
elseif ND_DATAvar == 3 then
ND_NDB_on ()
elseif ND_DATAvar == 4 then
ND_ARPT_on ()
elseif ND_DATAvar == 5 then
ND_CSTR_on ()
end
end

function ND_MODE_show ()
NGrng = ipc.readLvar("L:AB_MPL_ND_Mode")
if NGrng == 0 then
NDmodeTxt = "LS"
elseif NGrng == 1 then
NDmodeTxt = "VOR"
elseif NGrng == 2 then
NDmodeTxt = "NAV"
elseif NGrng == 3 then
NDmodeTxt = "ARC"
elseif NGrng == 4 then
NDmodeTxt = "PLAN"
end
DspShow ("NDmd", NDmodeTxt)
end
function ND_MODE_inc ()
nd_mode = nd_mode + 1
if nd_mode > 4 then nd_mode = 4 end

ipc.writeLvar("L:AB_MPL_ND_Mode", nd_mode)
ASC_KnobRotate ()
ND_MODE_show ()
end
function ND_MODE_dec ()
nd_mode = nd_mode - 1
if nd_mode < 0 then nd_mode = 0 end

ipc.writeLvar("L:AB_MPL_ND_Mode", nd_mode)
ASC_KnobRotate ()
ND_MODE_show ()
end
function ND_RANGE_show ()
NGrng = ipc.readLvar("L:AB_MPL_ND_Range")
if NGrng == 0 then
NDrngTxt = "10"
elseif NGrng == 1 then
NDrngTxt = "20"
elseif NGrng == 2 then
NDrngTxt = "40"
elseif NGrng == 3 then
NDrngTxt = "80"
elseif NGrng == 4 then
NDrngTxt = "160"
elseif NGrng == 5 then
NDrngTxt = "320"
end
DspShow ("NDrg", NDrngTxt)
end
function ND_RANGE_inc ()
i = ipc.readLvar("L:AB_MPL_ND_Range")

if i < 5 then
ipc.writeLvar("L:AB_MPL_ND_Range", i+1)
ipc.sleep(10)
ASC_KnobRotate ()
ND_RANGE_show ()
end
end
function ND_RANGE_dec ()
i = ipc.readLvar("L:AB_MPL_ND_Range")

if i > 0 then

ipc.writeLvar("L:AB_MPL_ND_Range", i-1)
ipc.sleep(10)
ASC_KnobRotate ()
ND_RANGE_show ()
end
end
function ND_ARROW1_vor ()
LVarSet = "L:AB_MPL_ND_Arrow1"
ipc.writeLvar(LVarSet, 0)
DspShow ("VOR", " 1 ")
LightSwitch ()
end
function ND_ARROW1_adf ()
LVarSet = "L:AB_MPL_ND_Arrow1"
ipc.writeLvar(LVarSet, 2)
DspShow ("ADF", " 1 ")
LightSwitch ()
end
function ND_ARROW1_off ()
LVarSet = "L:AB_MPL_ND_Arrow1"
ipc.writeLvar(LVarSet, 1)
LightSwitch ()
end
function ND_ARROW2_vor ()
LVarSet = "L:AB_MPL_ND_Arrow2"
ipc.writeLvar(LVarSet, 0)
DspShow ("VOR", " 2 ")
LightSwitch ()
end
function ND_ARROW2_adf ()
LVarSet = "L:AB_MPL_ND_Arrow2"
ipc.writeLvar(LVarSet, 2)
LightSwitch ()
DspShow ("ADF", " 2 ")
end
function ND_ARROW2_off ()
LVarSet = "L:AB_MPL_ND_Arrow2"
ipc.writeLvar(LVarSet, 1)
LightSwitch ()
end

function ND_ARROW1_right ()
NDArr1 = ipc.readLvar("AB_MPL_ND_Arrow1")
if NDArr1 == 2 then ND_ARROW1_off ()
elseif NDArr1 == 1 then ND_ARROW1_vor ()
end
end
function ND_ARROW1_left ()
NDArr1 = ipc.readLvar("AB_MPL_ND_Arrow1")
if NDArr1 == 0 then ND_ARROW1_off ()
elseif NDArr1 == 1 then ND_ARROW1_adf ()
end
end

function ND_ARROW2_right ()
NDArr2 = ipc.readLvar("AB_MPL_ND_Arrow2")
if NDArr2 == 2 then ND_ARROW2_off ()
elseif NDArr2 == 1 then ND_ARROW2_vor ()
end
end
function ND_ARROW2_left ()
NDArr2 = ipc.readLvar("AB_MPL_ND_Arrow2")
if NDArr2 == 0 then ND_ARROW2_off ()
elseif NDArr2 == 1 then ND_ARROW2_adf ()
end
end

 

And assign the new "toggle" function to the EFIS buttons as required.

 

Regards,

Peter

 

Please delete the assignments which do not work ("remove assignment"), save it and reassign it.

 

My problem is, that I don't find a function for VS-pull or VS-push. I just found "Autopilot VS level" which will be the push operation, or?

 

Regards,

Peter

Share this post


Link to post
Share on other sites

Guenter please see post number 7 for what I think the VS mode L:Var function is called, I would have coded it myself but I have no idea what your code is doing for the VS level. The lines with the word select in them have me confused, and I was also unfamiliar with what ever you were doing with ALTmode.

 

function Autopilot_VS_level ()

   ipc.writeLvar("AB_AP_ALTmode", -1)
   ipc.sleep(10)
   ipc.writeLvar("AB_AP_VS_Select2", 0)
   ipc.sleep(10)
   ipc.writeLvar("AB_AP_VS_Select3", 0)

   DspShow ("VS", "lvl")
   Button3 ()
end

Share this post


Link to post
Share on other sites

I've found another bug, whenever I use any of the cabin light options or panel light options via LINDA it always turns off the beacon lights and Nav lights too. If I use the default MSFS options to toggle cabin lights or Panel lights via FSUIPC it works perfectly and doesn't switch off the beacon and nav light, so I presume its an error in the script somewhere.

Share this post


Link to post
Share on other sites

ok, I'm on this, but I have unfortunately no solution with VS level.

I'll ask the devs about. If anyone else has the solution, it would be welcome!

 

 

For the lights I just could say that it is working here ... hmmm :huh:

 

the nex ND functions are implemented, thanks Capt. PERO

Share this post


Link to post
Share on other sites

I have just seen accidently in the german AXE forum, that this light issue is a new bug in the Bus.

So, you have to wait ill they'll fix that ...

Share this post


Link to post
Share on other sites

OK thanks for the info, hopefully they can fix it and implement the VS mode L:Var if they haven't already.

Share this post


Link to post
Share on other sites

Had a little conversation:

 

The devs says, the variable AB_AP_VSlevel is working with 1 and -1

In my script it does not.

I have tried just a plain simple function:

 

 

function Autopilot_VS_level ()

 

ipc.writeLvar("AB_AP_VSlevel", 1)

 

end

 

you can change 1 for -1 also, but it doesn't work here.

Anybody an idea?

Share this post


Link to post
Share on other sites

If its not working then it sounds like be a bug in the Airbus X, its certainly worth mentioning it to them.

 

Does it not work when you toggle those variables 1 and -1 with the Linda Tracer? If not then its not working as they expect and to me that would be a bug. I'm sure its not a difficult fix for them, probably just a small error.

Share this post


Link to post
Share on other sites

Yep, that is what I told them (that it doesn't work with LINDA tracer), but they say it does work.

In the bus itself (in the VC), the VS level does also work of course, but I can't see any other Lua Variable then the above who could be responsible for this ...

 

Will try later again.

If anybody else could/would try it, would be also nice

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.