aircraft icon indicating copy to clipboard operation
aircraft copied to clipboard

feat(mcdu): Company Routes Implementation

Open Lucky38i opened this issue 2 years ago • 13 comments

Fixes #1656

To do

  • [x] Ingest company route and fill out the route and from/to in the FMS
  • [x] Provide a reinforcing set of scratchpad messages during the following conditions:
    • local-api server is down
    • company route cannot be found
    • company route failed validation
  • [x] Provide a way to view stored company routes
  • [x] Bundle the server exec in the addon

Optional To-Do

  • [x] Migrate MCDU Server to local-api
  • [x] Create config file to mcdu server
  • [x] Liase with installer team to provide UI page to update the config file

Summary of Changes

Provides users the ability to load company routes that are stored in the addon folder under resources/coroutes.

This is to be used in conjunction with the SimBridgerunning, company routes can be downloaded via simbrief xml datafile

Screenshots (if necessary)

References

  • A few a320 drivers on the discord

The init A page in reference to the Honeywell Pegasus Step 1A (Rev 0), 2009 edition manual Screenshot 2021-12-24 at 19 20 30

Additional context

Discord username (if different from GitHub):

Testing instructions

Co route loading

  1. generate a simbrief flight plan and download the XML datafile.
  2. run the local-api.exe in the root addon folder, this will create the resources folder structure
  3. dump the xml file in the coroutes folder and rename it to whatever you want BUT less than 9 characters
  4. start the sim, load your aircraft and enter the coroute name in the coroute field, the FROM/TO and route (excluding SIDs and STARs) should be populated
  5. modify the route in anyway, observe Co Route field is now blank (Not implemented)

Coroute viewing

  1. Enter a FROM/TO which has the ICAOs that match that of a coroute (not filename, this is regarding the origin and destination ICAO within the XML) you have in the coroutes folder.
  2. Observe the ROUTE page outlining the details of your coroute, press insert
  3. (optional) if you have multiple coroutes with the same ICAOs as the entered FROM/TO in the coroute folder, observe the multiple pages in the ROUTE page,
  4. (optional) if the route is especially long you may have the optional to scroll, observe this by pressing the up and down keys on the MCDU
  5. Press insert, observe the from/to populated as-well as the route (Excluding SIDs and STARs, CI, CRZ FL etc. as suggested by IRL pilots, as these parameters vary greatly).

MCDU Server NOTE: steps 1-5 won't be needed when using the installer, if #6993 gets merged then this testing step is no longer needed

  1. open local-server.exe
  2. The console will print a list of printers img
  3. copy the name of the printer (for example: HP ENVY 5000 series [03F136]) that you use and set that in the properties file found resources/properties.json and enable the printer img
  4. restart the server
  5. navigate to localhost:3838/interfaces/mcdu(or whichever port the server console says) and observe mcdu web client
  6. Ensure the mcdu web client performs as it did previously

How to download the PR for QA

Every new commit to this PR will cause a new A32NX artifact to be created, built, and uploaded.

  1. Make sure you are signed in to GitHub
  2. Click on the Checks tab on the PR
  3. On the left side, click on the bottom PR tab
  4. Click on the A32NX download link at the bottom of the page

Lucky38i avatar Dec 24 '21 19:12 Lucky38i

@Lucky38i Is this still current? It probably needs rebasing. What about the remaining items on your TODO? Are those done, or should we mark this PR as WIP again?

beheh avatar Feb 17 '22 18:02 beheh

@Lucky38i Is this still current? It probably needs rebasing. What about the remaining items on your TODO? Are those done, or should we mark this PR as WIP again?

Yep we need to put it back into draft

Lucky38i avatar Feb 17 '22 18:02 Lucky38i

Alright, done 👍

beheh avatar Feb 17 '22 18:02 beheh

To clarify, this is intending to implement nav database company routes (some airlines still use that if they don't have datalink f-pln capability), and not pilot stored company routes, or both?

tracernz avatar Feb 27 '22 03:02 tracernz

To clarify, this is intending to implement nav database company routes (some airlines still use that if they don't have datalink f-pln capability), and not pilot stored company routes, or both?

Umm well pilot stored I suppose. How would we differ both?

Lucky38i avatar Feb 27 '22 08:02 Lucky38i

This PR is not a draft, but has items that remain unchecked in its description. Are you expecting a code review at this point in time?

davidwalschots avatar Mar 13 '22 18:03 davidwalschots

This PR is not a draft, but has items that remain unchecked in its description. Are you expecting a code review at this point in time?

The TODOs are either currently not possible or WIP but not blockers to the reviews of this PR.

Lucky38i avatar Mar 13 '22 18:03 Lucky38i

or WIP

WIP for another PR I assume then? I'd suggest removing those items from your description, as it might stop developers from reviewing your code at this point in time. 😀

davidwalschots avatar Mar 13 '22 19:03 davidwalschots

Quality Assurance Trainee Report

Object of testing: #6411 Tier of Testing:1 Date: 16/03/2022

Testing Process:

Co route loading - done - checked

Coroute viewing

  • Enter a FROM/TO which has the ICAOs that match that of a coroute (not filename, this is regarding the origin and destination ICAO within the XML) you have in the coroutes folder. - checked
  • Observe the ROUTE page outlining the details of your coroute, press insert - checked
  • (optional) if you have multiple coroutes with the same ICAOs as the entered FROM/TO in the coroute folder, observe the multiple pages in the ROUTE page, - checked
  • (optional) if the route is especially long you may have the optional to scroll, observe this by pressing the up and down keys on the MCDU - not checked
  • Press insert, observe the from/to populated as-well as the route (Excluding SIDs and STARs, CI, CRZ FL etc. as suggested by IRL pilots, as these parameters vary greatly). - checked

Remote MCDU - not tested - too smoothbrained

Negatives: Testing Results: Passed

Media: image

ShadowFrost3 avatar Mar 16 '22 18:03 ShadowFrost3

Quality Assurance Tester Report

Discord : mico#3145 Object of testing: #6411 Tier of Testing : 1 Date : 17/03/2022

Testing Process:

Co route loading run the local-api.exe in the root addon folder, this will create the resources folder structure - OK start the sim, load your aircraft and enter the coroute name in the coroute field, the FROM/TO and route (excluding SIDs and STARs) should be populated - OK modify the route in anyway, observe Co Route field is now blank (Not implemented) - OK

Coroute viewing Enter a FROM/TO which has the ICAOs that match that of a coroute you have in the coroutes folder. - OK Observe the ROUTE page outlining the details of your coroute, press insert - OK (optional) if you have multiple coroutes with the same ICAOs as the entered FROM/TO in the coroute folder, observe the multiple pages in the ROUTE page, - OK (optional) if the route is especially long you may have the optional to scroll, observe this by pressing the up and down keys on the MCDU - OK Press insert, observe the from/to populated as-well as the route (Excluding SIDs and STARs, CI, CRZ FL etc. as suggested by IRL pilots, as these parameters vary greatly). - OK

MCDU Server navigate to localhost:3838/interfaces/mcdu and observe mcdu web client - OK Ensure the mcdu web client performs as it did previously - OK

Negatives:
N/A

Testing Results: Passed

Conclusions: Nice work 🚀

Media:
image

mico975 avatar Mar 17 '22 12:03 mico975

Do company routes normally use ICAO codes or IATA? e.g. Should that one be FRASPU rather than EDDFLDSP, or: image

tracernz avatar Mar 17 '22 13:03 tracernz

Do company routes normally use ICAO codes or IATA?

I think it can be anything as long as it's less than 9 characters. This was just my naming convention for testing 🤣 Simbrief downloads the xml with ICAO and STKP gives me IATA by default.

mico975 avatar Mar 17 '22 13:03 mico975

Quality Assurance Tester Report

Discord: Mr.Blank#6197 The object of testing: #6411 Tier of Testing: 1 Date: 30/03/2022

Testing Process: -All as per test instructions --within SOP Flight --within Non-Sop Flight --from cold&dark --from quick start

Negatives: N/A

Testing Results: Passed

Conclusions: All systems worked as expected

dragold avatar Mar 31 '22 17:03 dragold