A320 FCU: variable AUTOPILOT ALTITUDE LOCK VAR vs. displayed altitude

Hello everyone!

Currently, I am programming a SimConnect based software to control my DIY A320 FCU. I built this peace of hardware some years ago for the FSX based AEROSOFT Airbus A320/A321. The software was designed as an in-process gauge (DLL).

Targeting MSFS 2020 now, I decided to re-design my software and set it up as an out-of-process EXE. The software works, I am able to control most of the FCU (did not implement AP1, AP2 and VS yet).

But there is one thing which I cannot figure out: the interaction of AUTOPILOT ALTITUDE LOCK VAR and AUTOPILOT ALTITUDE SLOT INDEX in SimConnect on the one hand and the behaviour of the A320FCU in MSFS on the other hand.

As far as I figured out, AUTOPILOT ALTITUDE LOCK VAR seems to represent what is used by the FMS, not what is shown in the display, i.e. when the altitude knob of the FCU is tuned in MSFS, the display value changes immediately but AUTOPILOT ALTITUDE LOCK VAR does NOT change until the altitude knob is pushed or pulled.

So far I have not been able to find a variable which represents the displayed value. In the case mentioned above, such a variable should represent the displayed value and NOT the value the FMS is using for flight.
Without such a variable, I can only set AUTOPILOT ALTITUDE LOCK VAR from my FCU hardware which means that the plane will use that value immediately. Therefore, I cannot tune e.g. the go around altitude into the ALT window of the FCU without pressing/pulling the ALT knob, therefore still folowing the current altitude until the moment I will press/pull the knob.

I know that there are many things in MSFS which are not available via SimConnect variables (and events). But I did not know about the “… SLOT INDEX” variables, too, until some knowing member of this community gave me a hint. Sadly, SimConnect documentation is still uncomplete.

Greetings from Germany,
Spiralcharger

PS: Are there any variables which reflect the status of LOC and APPR buttons?

I don’t think there’s any way right now to figure out or indeed set the FCU in game from external controls in many circumstances. Personally, my plan is to ignore the in game display and implement things “properly” only on the external panel, with the in-game only syncing up with that when I either pull selected or push managed.

As best as I’ve been able to determine,

LOC = “AUTOPILOT APPROACH HOLD” != 0 and “AUTOPILOT GLIDESLOPE HOLD” == 0
APPR = “AUTOPILOT APPROACH HOLD” != 0 and “AUTOPILOT GLIDESLOPE HOLD” != 0

1 Like

Hello Dave @DGymer!

Yeah, that was my first thought, too. But in my case things are just the other way round - MSFS ignores my input (or better: treats my input not the way it should, i.e. the way it treats input via its own UI). The display just reveals these different treatments.

But ok, as long as MSFS doesn’t handle input correctly I wil have to cope with it by not having the comfort to pre-select altitudes and to activete them later.

Yep, that helped a lot. I’ve just implemented the logic and the LOC and APPR buttons work now like a charm!

In fact, just the AP1 and AP2 buttons are missing. All other inputs and displays incl. button lighting works well.

A very big THANKS to you for your answer which helped me a lot! Nice to have someone out there who is not only knowing but also sharing his knowledge!

Greetings,
Jens

I just found that AP_PANEL_ALTITUDE_HOLD event keeps whatever altitude is set in the panel system, be it the garmin display or what have you and holds that altitude like the old AP_ALT_HOLD used to in FSX…same goes for AP_PANEL_HEADING_HOLD is now what AP_HDG_HOLD used to…

both AP_ALT_HOLD and AP_HDG_HOLD seem to select the present values and select nearest hundred feet or nearest itnteger heading and hold it instead of what is pre-selected into the AP itself.

Not sure if this helps exactly, but putting it out there…also just posted the above in it’s own topic. There is also a AP_VS_HOLD that is yet undocumented I found just by trying it as a FS Event Tag.

Solved ?

I get the same issue and have another solution.

The value you are looking for (i.e. the altitude displayed on the FCU) is
AUTOPILOT ALTITUDE LOCK VAR:3

It is indexed.

1 Like

@Pliskin2330:
You made my day! Yes, that seems to be what I was searching for. I just changed my software to use the index 3 on AUTOPILOT ALTITUDE LOCK VAR and now my display simply shows me the same value I see in the sim.

Without the index, my display showed me the value the FMS used which differs e.g. during an approach when you select 3000 ft. for the IAF and command “manged state” but a restriction keeps the FMS from descending to 3000 ft. Instead, it stays at 4000 ft. until the waypoint with the restriction “4000 or higer” is reached. Without the index, I saw the 4000 in the display although having entered 3000 before. This does not happen any longer with the index.

Thanks a lot, Pliskin2330, for gibing me that information. I would never have tried it on my own. I always thought that indexed variables were there to handle multiple instances of the same setting/instrument/value or so.

Regards,
Jens