Technical reference

Lower DU (milestone 4c)

docs/LOWER_DU.md

Status date: 2026-11-03. Systems module build 10.

The centre lower DU shows Zibo's PANEL_3D Lower DU group — the secondary engine page (ENG), the systems page (SYS: hydraulics, brake temperatures, flight control surfaces) — exactly as the upper EICAS does it (docs/EICAS.md: same extractor, drawing and data module). The MFD ENG / SYS buttons and everything that selects the pages are Zibo's logic in the systems module.

Pages#

lowerDU_page lowerDU_page2 Lower DU Upper DU
1 0 ENG: N2 dials, FF, oil pressure / temperature / quantity, VIB normal
0 1 SYS normal
0 0 blank normal
2 0 blank compact format (secondary engine data on the upper DU, warning box)

Zibo's rules (zibomod CMD_mfd_eng, CMD_mfd_sys, B738_eng_out, EICAS_warning, Annun_timers, blink_timers, Systems; wasm/src/core/display/display_units.*):

  • ENG cycles the page 0 → 1 → 2 → 0 and clears SYS; SYS toggles page2 and blanks the ENG page. Without AC transfer bus 2 the page is forced to 1 (so after a cold start the ENG page shows as soon as the lower DU has power), and the buttons do nothing else.
  • Page build (LevelUp lu_init): when page2 changes or the page becomes 1, 2 for 0.6 s, 1 for 0.6 s. The ENG page is drawn in three stages (background_eicas2a: boxes and scales; 2b: limit marks and OIL QTY; 2: N2 dials), the hydraulic quantities appear at the end — as a real DU redraws. Option: L:LU737_DU_PAGE_BUILD_OFF = 1 shows the full page at once (default 0: as Zibo).
  • Auto display of the ENG page, once per event: engine out (N2 < 50 with fuel on, ground speed

    31 m/s or failure, start switch not GRD), a start lever at CUTOFF when airborne (radio height 10 ft), engine fire; and on a blank lower DU a new secondary-engine exceedance.

  • Exceedances: oil pressure ≤ 13 psi (red) or 13–22 (amber) above 19 % N1, oil temperature ≥ 165 °C (red) or 153–165 (amber), N2 ≥ 101.5 % (red), oil quantity ≤ 19 % or VIB ≥ 4 (other). In the compact format the warning box flashes for 10 s (0.2 s blink), then stays.
  • Was red latches (upper EICAS): N1 ≥ 104.1 %, N2 ≥ 101.5 %, EGT ≥ 950 °C in flight, shown when the engine is shut down in flight, cleared with the battery switch.

Published by the systems module: L:LU737_LOWER_DU_PAGE, _LOWER_DU_PAGE2, _FF_EICAS_SHOW, _DU_LU_INIT, _EICAS_WARN, _ENGn_OUT, _ENGn_WAS_N1_RED / _WAS_N2_RED / _WAS_EGT_RED. The lower DU is powered (L:LU737_DU_LOWER_PWR) from DC bus 2 after its warm-up: with AC power (ground power, APU or engine generators), not on the battery alone — as in Zibo.

Sources of the page values (avionics/src/du/DuSource.ts)#

Kind Datarefs
exact N2, FF, oil pressure / temperature, VIB, EICAS energise flags (systems module); pages, transition, warnings (systems module)
msfs flight controls: AILERON LEFT/RIGHT DEFLECTION, ELEVATOR DEFLECTION, RUDDER DEFLECTION (deg), flight spoilers SPOILERS LEFT/RIGHT POSITION × 38° — direction to be confirmed in the sim
pending hydraulic pressures (40 psi) and quantities (86 / 90 %), brake temperatures (0.1), oil quantity (MSFS ENG OIL QUANTITY; the systems module runs Zibo's engines with full oil), FUEL FLOW USED, flight-deck camera page
option effects/flight_control, effects/brake_temp (1: shown), oil quantity in quarts (oil_qty_pct_qts 1), page build off (L:LU737_DU_PAGE_BUILD_OFF)

Verification#

  • Oracle trace xphost/test/sci/lowerdu_trace.json (start sequence + MFD SYS / ENG presses); ten snapshots in avionics/test/data/lowerdu_oracle.json; every exact source matches Zibo (avionics/test/du_data.test.ts).
  • Native tests lower_du_pages_and_compact_warning (page sequence, transition timing, compact warning flash as in the oracle probe) and lower_du_engine_page_on_start_lever_cutoff_in_flight.
  • Drawing compared with the reference PANEL_3D interpreter (ENG, SYS, compact, deflected controls, hot brakes): anti-aliasing differences only. End-to-end renders: docs/lowerdu_*.png.

Open#

Hydraulic system and brake temperature model (their own subsystems), the fuel system (FUEL FLOW USED), flight-control surface directions (owner check), engine failures and fire (the auto display conditions are in place), the flight-deck camera page, the DU selectors (lower DU content moved to the inboard DUs).