Version: MSFS 2024 V 1.3.23 SDK V1.2.4
Frequency: Always ?? mostly ??
Severity: High
Similar MSFS 2020 issue: N/A
Context: WASM fsPlannedRouteGetEfbRoute returns Leg Data Via not to spec.
Attachments: N/A, but can be provided upon request
Bug description:
Using fsPlannedRouteGetEfbRoute() does not always data according to spec.
from PLN but more so when importing from SimBrief
as I don’t know if the problem is in MSFS and/or the plugin I file it here first
e.g. FPlan LSZH to LSGG
Using SimBrief Import
After calling SimBrief Latest Flight:
Route: LSZH/34 NO297F140 VEBIT2K VEBIT T50 ROTOS Z669 ULMES ULMES2R LSGG/22
which is OK as requested
Action: Click Import Route -result: green Mark / OK
EFB shows:
Dep: LSZH Rw 34
DepProc: VEBI2K (direct)
Enroute:
VEBIT
ROTOS
BADEP
ULMES
i.e. expanded Waypoints, no airways / seems to internally maintain airways
ArrProc: ULME2R (direct)
Appr: none
Dest: LSGG Rw22
/see screenshot below
Calling WASM fsPlannedRouteGetEfbRoute() returns:
(where the fields are stringified to be readable)
RTE;TYP;VFR
RTE;DEP;LSZH;LS;34;0
RTE;SID;VEBI2K
RTE;SIDT;
RTE;CRS;14000;1
RTE;ENR;0;;Waypoint;VEBIT;LS;VEBI2K;0;0;0.000000;0.000000; ;;-1;-1 <---Wrong 1)
RTE;ENR;0;;Waypoint;ROTOS;LS;T50;0;0;0.000000;0.000000; ;;-1;-1
RTE;ENR;0;;Waypoint;BADEP;LS;Z669;0;0;0.000000;0.000000; ;;-1;-1 <---Wrong 2)
RTE;ENR;0;;Waypoint;ULMES;LS;Z669;0;0;0.000000;0.000000; ;;-1;-1
RTE;STAR;ULME2R
RTE;START;
RTE;APP;0;;0;0
RTE;APPT;
RTE;ARR;LSGG;LS;22;0
Which are not to spec
- via field: VEBI2K is not an airway but a procedure
- via field: Airway should be placed at the exit only
i.e. ROTOS; T50 is OK
but BADEP should not be here at all I think
then ULMES; Z669 is OK again
from SDK Doc:
via: An eight-character maximum null-terminated string containing the name of the airway via which this leg fix is reached.
If used, this leg should be where the airway is exited.
The airway legs that connect the previous leg (airway entry) and this leg will be automatically handled by consumers and must not be included in the route.
Using PLN file Import
Exported to PLN file (content see below)
Import the PLN file from export
WASM fsPlannedRouteGetEfbRoute() returns:
RTE;TYP;VFR
RTE;DEP;LSZH;;34;0
RTE;SID;VEBI2K
RTE;SIDT;
RTE;CRS;14000;1
RTE;ENR;0;VEBIT;Waypoint;VEBIT;LS;VEBI2K; 0;0;0.000000;0.000000; ;;-1;-1 <---Wrong 1)
RTE;ENR;0;ROTOS;Waypoint;ROTOS;LS;T50; 0;0;0.000000;0.000000; ;;-1;-1
RTE;ENR;0;ULMES;Waypoint;ULMES;LS;Z669; 0;0;0.000000;0.000000; ;;-1;-1
RTE;STAR;ULME2R
RTE;START;
RTE;APP;0;;0;0
RTE;APPT;
RTE;ARR;LSGG;;22;0
Which is not to spec
- via field: VEBI2K is not an airway but a procedure
Rated High because one has to patch the received data not knowing when the VIA field is correct and when not which usually leads to errors and customer dissatisfaction…
Attachments:
Exported PLN File (HAS VEBI2K in the ATCAirway field which is Not OK):
<?xml version="1.0" encoding="UTF-8"?>
<SimBase.Document>
<FlightPlan.FlightPlan>
<DepartureID>LSZH</DepartureID>
<DestinationID>LSGG</DestinationID>
<Title>LSZH - LSGG</Title>
<Descr>Flight from LSZH to LSGG</Descr>
<FPType>IFR</FPType>
<CruisingAlt>14000.000</CruisingAlt>
<AppVersion>
<AppVersionMajor>12</AppVersionMajor>
<AppVersionMinor>1</AppVersionMinor>
<AppVersionBuild>282174</AppVersionBuild>
</AppVersion>
<DepartureDetails>
<RunwayNumberFP>34</RunwayNumberFP>
<DepartureFP>VEBI2K</DepartureFP>
</DepartureDetails>
<ATCWaypoint id="VEBIT">
<ATCWaypointType>Intersection</ATCWaypointType>
<ATCAirway>VEBI2K</ATCAirway>
<ICAO>
<ICAORegion>LS</ICAORegion>
<ICAOIdent>VEBIT</ICAOIdent>
</ICAO>
</ATCWaypoint>
<ATCWaypoint id="ROTOS">
<ATCWaypointType>Intersection</ATCWaypointType>
<ATCAirway>T50</ATCAirway>
<ICAO>
<ICAORegion>LS</ICAORegion>
<ICAOIdent>ROTOS</ICAOIdent>
</ICAO>
</ATCWaypoint>
<ATCWaypoint id="ULMES">
<ATCWaypointType>Intersection</ATCWaypointType>
<ATCAirway>Z669</ATCAirway>
<ICAO>
<ICAORegion>LS</ICAORegion>
<ICAOIdent>ULMES</ICAOIdent>
</ICAO>
</ATCWaypoint>
<ArrivalDetails>
<RunwayNumberFP>22</RunwayNumberFP>
<ArrivalFP>ULME2R</ArrivalFP>
</ArrivalDetails>
</FlightPlan.FlightPlan>
</SimBase.Document>
EFB after Importing either SimBrief or PLN file (seems OK)