Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: enable transition from done phase to preflight phase #9664

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

Saschl
Copy link
Contributor

@Saschl Saschl commented Dec 15, 2024

Fixes #[issue_no]

Summary of Changes

Currently the plane never transitions to done phase, which prevented turnarounds from working properly as it was impossible to enter a new flightplan and performance data (the data is being cleared but the MFD fields are not editable). Added the logic to transition to preflight phase.

Not sure if this is the right way to approach this, suggestions welcome :)

Screenshots (if necessary)

References

Additional context

Discord username (if different from GitHub):

Testing instructions

  1. Take off from the runway with the Perf page open on the MFD. Make sure the V speeds become read only.
  2. Abort the takeoff, come to a halt and turn off the engines (ensure the APU is on so you still have power, to be on the safe side)
  3. After the engines are below 20% N2, the mfd should switch automatically to the status page.
  4. Switch to INIT or fuel/load or perf page again and make sure all the fields can be filled again.
  5. A full flight doing the same checks would be welcome as well of course but not mandatory

How to download the PR for QA

Every new commit to this PR will cause new A32NX and A380X artifacts 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, find and click on the PR Build tab
  4. Click on either flybywire-aircraft-a320-neo, flybywire-aircraft-a380-842 (4K) or flybywire-aircraft-a380-842 (8K) download link at the bottom of the page

@Saschl Saschl added the A380X Related to the A380X aircraft label Dec 16, 2024
@G-DRAW
Copy link

G-DRAW commented Dec 16, 2024

The above sounds very good. I have a few suggestions, during landing the FMS should also reset to the Status page automatically 30 seconds after landing.
APPR to DONE FMS Phase

@G-DRAW
Copy link

G-DRAW commented Dec 16, 2024

The FMS on the A380 can also transition from and to any flight phase. Hope this helps.
A380 FCOM Flight Phases
A380 FCOM Phase List
A380 FCOM Phase List 2
A380 FCOM Phase List 3
A380 FCOM Phase List 4
A380 FCOM Phase List 5
A380 FCOM Phase List 6
A380 FCOM Phase List 7
A380 FCOM Phase List 8

@G-DRAW
Copy link

G-DRAW commented Dec 17, 2024

#9498 (comment)

@Saschl
Copy link
Contributor Author

Saschl commented Dec 18, 2024

Thanks a lot for the input 👍 I think the missing switch to the status page on FMS2 can be addressed in another PR, as this one is meant to allow for turnarounds in the first place. We will look into that for sure

Copy link
Contributor

@flogross89 flogross89 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good

@@ -139,6 +151,23 @@ export class FlightManagementComputer implements FmcInterface {
// TODO remove this cyclic dependency, isWaypointInUse should be moved to DataInterface
private dataManager: DataManager | null = null;

private readonly flightPhase = ConsumerSubject.create<FmgcFlightPhase>(null, this.flightPhaseManager.phase);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
private readonly flightPhase = ConsumerSubject.create<FmgcFlightPhase>(null, this.flightPhaseManager.phase);
private readonly flightPhase = ConsumerSubject.create<FmgcFlightPhase>(this.sub.on('fmgc_flight_phase'), this.flightPhaseManager.phase);

You can do this, if you pull private sub = this.bus.getSubscriber<FlightPhaseManagerEvents & MfdUIData>()
to the class methods, saves you two lines of setConsumer calls

@Ueeew
Copy link

Ueeew commented Dec 29, 2024

@Saschl i tested it and it works really good. There are you a few things left which I still need to check. I have just a small request for you, could you bring this "pull request" up to date again by merging the "master" file again into this "PR", so i can perform a full flight and test it again. Thank you

@Saschl Saschl force-pushed the fix/turnaround-pt2 branch from 3f8786b to 29a2169 Compare January 2, 2025 13:43
@BravoMike99
Copy link
Contributor

Quality Assurance Tester Report

Discord Username : bruno_pt99
Object of testing : #9664
Aircraft : A380X
Tier of Testing : 1
Date : 02/01/2025

Testing Process:

  1. Performed a takeoff and verified V speeds were not editable
  2. Performed RTO and shut down the engines. After N2 went below 20% the MFD went into the status page.
  3. Was able to edit data in INIT, Fuel & load & PERF pages
  4. Performed a full flight and verified automatic status page switching after landing.
  5. Verified again that it is possible to edit data in the INIT/PERF/FUEL & Load pages.

Testing Results:
Passed

Negatives:
Block & Fuel planning not visible in FUEL & Load page after done phase. Most likely related to enginesWereStarted in line 916 of FlightManagementComputer.ts not resetting as once it becomes true it cannot be affected again 😅
Sometimes V2 doesn't seem to reset on the PERF page.

Conclusions:
Leaving it as pass as per comment in discord QA channel
Media:

2025-01-02.18-32-35.mp4

Vspeeds

@G-DRAW
Copy link

G-DRAW commented Jan 2, 2025

On the INIT A Page, the CPNY RTE and ALTN RTE fields with NONE in them are meant to be cyan blue instead of white.

A380X FMS

@Ueeew
Copy link

Ueeew commented Jan 2, 2025

First I want to say that this is really nice and is already working quite good. But their are a few problems which I noticed while making 2 flights with a turnaround in between. I don’t know if this is related to your PR but I just wanted to list them up. But before starting to list up things which aren’t working yet as they should I wanted to say thank you for what you did so far.

BTV reset is not correct (the BTV Rwy remains on ND)
checklist does not reset itself
FMS 2 does not automatically go to the acft status page during reset but only to the init page (without resetting data) only after clicking the init button again does the init page on the fms 2 reset itself.
when starting the engine after the turnaround, only the normal shutdown phase is displayed for the first 5-10 s. e.g. the engine start box is not displayed at first, but then appears after 5-10 s. then the engine starts normally.
ECAM to memo shows normal after turnaround, but the to. Config normal test already shows in green, even if it is not clicked after turnaround. So only the to config normal is not reset. Problem also in 32nx.

The trim shows an incorrect pre-trim value. 387 tons with a zfwcg of 34.4 and a cg of 35.5 show me a ths value of 33.0, which I should set for takeoff. then I have this exact 33.0 percent ths set and at takeoff role, as soon as I set my throttle above cl notch, the ECAM shows the warning. THS is not set for takeoff.

Importantly, these things only showed up after landing(BTV bug and FMS 2 reset) and after turnaround ( everything else)

@G-DRAW
Copy link

G-DRAW commented Jan 2, 2025

Overall this looks really good.

@Ueeew
Copy link

Ueeew commented Jan 2, 2025

Overall this looks really good.

It does and it works really good too.

@BravoMike99
Copy link
Contributor

BravoMike99 commented Jan 2, 2025

First I want to say that this is really nice and is already working quite good. But their are a few problems which I noticed while making 2 flights with a turnaround in between. I don’t know if this is related to your PR but I just wanted to list them up. But before starting to list up things which aren’t working yet as they should I wanted to say thank you for what you did so far.

BTV reset is not correct (the BTV Rwy remains on ND) checklist does not reset itself FMS 2 does not automatically go to the acft status page during reset but only to the init page (without resetting data) only after clicking the init button again does the init page on the fms 2 reset itself. when starting the engine after the turnaround, only the normal shutdown phase is displayed for the first 5-10 s. e.g. the engine start box is not displayed at first, but then appears after 5-10 s. then the engine starts normally. ECAM to memo shows normal after turnaround, but the to. Config normal test already shows in green, even if it is not clicked after turnaround. So only the to config normal is not reset. Problem also in 32nx.

The trim shows an incorrect pre-trim value. 387 tons with a zfwcg of 34.4 and a cg of 35.5 show me a ths value of 33.0, which I should set for takeoff. then I have this exact 33.0 percent ths set and at takeoff role, as soon as I set my throttle above cl notch, the ECAM shows the warning. THS is not set for takeoff.

Importantly, these things only showed up after landing(BTV bug and FMS 2 reset) and after turnaround ( everything else)

Thanks for the feedback. The checklists are not supposed to reset themselves immediately , it takes 50 minutes for the automatic reset to happen if you didn't manually reset a checklist yourself (if its not doing this in the development version please create an issue). Regarding the other things which are not related to the FMS/MFD it would also be a good idea to create an issue as the original intent of this PR is to only fix the FMS fields not being editable across flights.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A380X Related to the A380X aircraft QA Passed QA Tier 1
Projects
Status: 🟣 QA Review: Ready to Test
Development

Successfully merging this pull request may close these issues.

5 participants