AP Value Variables
-
Firstly, great to finally get my hands on this! Starting to work out some of the differences in flying this compared to others but it's challenging in a good way!
However, for us home cockpit hardware users, some of what's been done in terms of variables is a nightmare. To output the selected altitude needs variables to hide some values where the altitude is 4 figures or less, and to display them requires reading multiple values and stitching them together (e.g. variables AFCAS_HD_Window_1, AFCAS_HD_Window_2 and AFCAS_HD_Window_3 just to display the heading selected!).
Could we please request that the following be combined into singular variables for output to hardware:
- Altitude
- Heading
- IAS/Mach
- Vertical Speed
Additionally, looking in Developer Mode, the ILS CRS value should be getting output in ILS_KNOB_CRS. However, if turning this in the cockpit itself, not via hardware) at a reasonable pace (due to course being nearer South from it's load in value of 000), then the value output in that variable does not match that in the cockpit.
Thanks!
-
Firstly, great to finally get my hands on this! Starting to work out some of the differences in flying this compared to others but it's challenging in a good way!
However, for us home cockpit hardware users, some of what's been done in terms of variables is a nightmare. To output the selected altitude needs variables to hide some values where the altitude is 4 figures or less, and to display them requires reading multiple values and stitching them together (e.g. variables AFCAS_HD_Window_1, AFCAS_HD_Window_2 and AFCAS_HD_Window_3 just to display the heading selected!).
Could we please request that the following be combined into singular variables for output to hardware:
- Altitude
- Heading
- IAS/Mach
- Vertical Speed
Additionally, looking in Developer Mode, the ILS CRS value should be getting output in ILS_KNOB_CRS. However, if turning this in the cockpit itself, not via hardware) at a reasonable pace (due to course being nearer South from it's load in value of 000), then the value output in that variable does not match that in the cockpit.
Thanks!
@ScotchMist If you are using Spad Next, Ive done a snippet (17282) to fix all these issues.
Here are the expressions for each of the windows that will show exactly what you see on the plane. But I agree, we shouldn't need to write this code ourselves to interpret these windows. Sharing it so everyone can enjoy flying the plane with their hardware:
Altitude:
Display Expression-Result Format '000'If( [LVAR:AFCAS_ALT_Window_1] == 254 && [LVAR:AFCAS_ALT_Window_2] == 254 && [LVAR:AFCAS_ALT_Window_3] == 254 && [LVAR:AFCAS_ALT_Window_4] == 254, '', ( If([LVAR:AFCAS_ALT_Window_1] == -16 || [LVAR:AFCAS_ALT_Window_1] == 254, 0, [LVAR:AFCAS_ALT_Window_1]) * 10000 + If([LVAR:AFCAS_ALT_Window_2] == -16 || [LVAR:AFCAS_ALT_Window_2] == 254, 0, [LVAR:AFCAS_ALT_Window_2]) * 1000 + If([LVAR:AFCAS_ALT_Window_3] == -16 || [LVAR:AFCAS_ALT_Window_3] == 254, 0, [LVAR:AFCAS_ALT_Window_3]) * 100 + If( [LVAR:AFCAS_ALT_Window_4] == -16 || [LVAR:AFCAS_ALT_Window_4] == 31 || [LVAR:AFCAS_ALT_Window_4] == 254, 0, [LVAR:AFCAS_ALT_Window_4] ) * 10 ))Heading:
Display Expression-Result Format '000'If( [LVAR:AFCAS_HDG_Window_1] == 254 && [LVAR:AFCAS_HDG_Window_2] == 254 && [LVAR:AFCAS_HDG_Window_3] == 254, '', If( [LVAR:AFCAS_HDG_Window_1] == 255 && [LVAR:AFCAS_HDG_Window_2] == 255 && [LVAR:AFCAS_HDG_Window_3] == 255, '---', If([LVAR:AFCAS_HDG_Window_1] == -16 || [LVAR:AFCAS_HDG_Window_1] == 254, 0, [LVAR:AFCAS_HDG_Window_1]) * 100 + If([LVAR:AFCAS_HDG_Window_2] == -16 || [LVAR:AFCAS_HDG_Window_2] == 254, 0, [LVAR:AFCAS_HDG_Window_2]) * 10 + If([LVAR:AFCAS_HDG_Window_3] == -16 || [LVAR:AFCAS_HDG_Window_3] == 254, 0, [LVAR:AFCAS_HDG_Window_3]) ))Speed:
If( [LVAR:AFCAS_SPD_Window_1] == 254 && [LVAR:AFCAS_SPD_Window_2] == 254 && [LVAR:AFCAS_SPD_Window_3] == 254, '', If( [LVAR:AFCAS_SPD_Window_1] == 255 && [LVAR:AFCAS_SPD_Window_2] == 255 && [LVAR:AFCAS_SPD_Window_3] == 255, '---', ( If([LVAR:AFCAS_SPD_Window_1] == -16, 0, [LVAR:AFCAS_SPD_Window_1]) * 100 + If([LVAR:AFCAS_SPD_Window_2] == -16, 0, [LVAR:AFCAS_SPD_Window_2]) * 10 + If([LVAR:AFCAS_SPD_Window_3] == -16, 0, [LVAR:AFCAS_SPD_Window_3]) )))Vertical speed:
If( [LVAR:AFCAS_VS_Window_1] == 254 && [LVAR:AFCAS_VS_Window_2] == 254 && [LVAR:AFCAS_VS_Window_3] == 254 && [LVAR:AFCAS_VS_Window_4] == 254 && [LVAR:AFCAS_VS_Window_5] == 254, '', If( [LVAR:AFCAS_VS_Window_1] == 255 && [LVAR:AFCAS_VS_Window_2] == 255 && [LVAR:AFCAS_VS_Window_3] == 255 && [LVAR:AFCAS_VS_Window_4] == 255 && [LVAR:AFCAS_VS_Window_5] == 255, '-----', If([LVAR:AFCAS_VS_Window_1] == 253, 1, -1) * ( If([LVAR:AFCAS_VS_Window_2] == -16, 0, [LVAR:AFCAS_VS_Window_2]) * 1000 + [LVAR:AFCAS_VS_Window_3] * 100 )))