Citation X cockpit profile: full Primus 2000 suite (PFD/MFD/EICAS/AP/RMU)
Add a switchable cockpit-profile selector (Garmin G1000 / Cessna Citation X / GA steam) and recreate the Citation X Honeywell Primus 2000 avionics line-for- line from the X-Plane Citation X + FMS manuals: - CitPFD: attitude w/ FD command bars, speed tape (Vmo barber-pole, Vfe, low- speed red/amber bands), AOA index, altitude tape + trend, VSI, round HSI with CDI/course pointer + VOR/ADF bearing pointers, radar altimeter, minimums, STD/BARO/CRS/HDG bezel. - CitEICAS: twin FAN%/ITT bar gauges, OIL °C/PSI, FUEL (flow/qty PPH·LBS), ELECTRICAL, HYDRAULICS, slat chevron, STAB trim, FLAPS, CAS message stack, softkeys NORM/FUEL-HYD/ELEC/CTRL-POS/ENG + control-position overlay. - CitMFD: Honeywell heading-up arc map, FMS route (magenta active/white future), TCAS, terrain/WX, range arc, ETE/SAT/TAS/GSPD block, clock + ET/FT timer, V-SPEEDS reference card, MFD-setup overlays (TRAFFIC/TERRAIN/APTS/VOR). - CitAP: HDG/NAV/APP/BC · ALT/VNAV/BANK/STBY · FLC/C-O/VS · pitch wheel · AP/YD/M-TRIM/PFD-SEL, FMA bar + lamps from per-mode *_status datarefs. - CitRMU: COM/NAV active+standby tuning, transponder, ADF, TCAS range/mode, IDENT + Nav Source Selector (NAV1/2/FMS, VOR/ADF/FMS bearing source). Integration: all avionics stream live via the X-Plane Web API (new datarefs for N1/N2/ITT, radar-alt, AOA, hydraulics, trim, flaps/slats/gear, control positions, ADF, mach, yaw-damper); the existing fms-sync.lua drives the Citation's built-in FMS (aircraft-agnostic XPLM FMS SDK). Demo seeds added so every panel renders offline. Verified headless via Playwright (no console errors; G1000/GA profiles unaffected). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -126,6 +126,45 @@ export const DATAREFS = {
|
||||
flcStatus: 'sim/cockpit2/autopilot/speed_status',
|
||||
gsStatus: 'sim/cockpit2/autopilot/glideslope_status',
|
||||
vnavStatus: 'sim/cockpit2/autopilot/vnav_status',
|
||||
|
||||
// ====================================================================
|
||||
// CESSNA CITATION X (model 750) — twin Rolls-Royce AE3007C turbofans.
|
||||
// Honeywell Primus 2000 suite: PFD / MFD / EICAS / dual CDU.
|
||||
// All of these are universal sim datarefs, streamed live with no Lua;
|
||||
// only the FMS flight-plan needs the FlyWithLua bridge (fms-sync.lua).
|
||||
// ====================================================================
|
||||
// --- engine (arrays index 0 = LH, 1 = RH) ---
|
||||
n1: 'sim/cockpit2/engine/indicators/N1_percent', // Fan RPM % (EICAS FAN%)
|
||||
n2: 'sim/cockpit2/engine/indicators/N2_percent', // Core RPM % (standby panel)
|
||||
itt: 'sim/cockpit2/engine/indicators/ITT_deg_C', // Interstage Turbine Temp °C
|
||||
fuelPress: 'sim/cockpit2/engine/indicators/fuel_pressure_psi',
|
||||
throttle: 'sim/cockpit2/engine/actuators/throttle_ratio', // per-engine commanded thrust
|
||||
// --- Citation PFD extras ---
|
||||
radioAlt: 'sim/cockpit2/gauges/indicators/radio_altimeter_height_ft_pilot', // RA (<2500 ft AGL)
|
||||
mach: 'sim/cockpit2/gauges/indicators/mach_pilot', // PFD Mach / FLC target
|
||||
aoa: 'sim/flightmodel/position/alpha', // angle of attack (deg) → normalised
|
||||
adf1Brg: 'sim/cockpit2/radios/indicators/adf1_relative_bearing_deg',
|
||||
adf2Brg: 'sim/cockpit2/radios/indicators/adf2_relative_bearing_deg',
|
||||
adf1: 'sim/cockpit2/radios/actuators/adf1_frequency_hz',
|
||||
adf2: 'sim/cockpit2/radios/actuators/adf2_frequency_hz',
|
||||
// --- EICAS systems ---
|
||||
hydPress: 'sim/cockpit2/hydraulics/indicators/hydraulic_pressure_psi', // array A/B (PSI)
|
||||
elevTrim: 'sim/cockpit2/controls/elevator_trim', // -1..1 → STAB deg
|
||||
flapRatio: 'sim/cockpit2/controls/flap_ratio', // 0..1 → SLAT/5/15/FULL
|
||||
flapDeploy: 'sim/flightmodel2/controls/flap1_deploy_ratio', // actual trailing-edge flap
|
||||
slatRatio: 'sim/flightmodel2/controls/slat_ratio', // leading-edge slat status
|
||||
gearHandle: 'sim/cockpit2/controls/gear_handle_down', // 0 up / 1 down
|
||||
gearDeploy: 'sim/flightmodel2/gear/deploy_ratio', // array: per-gear 0..1
|
||||
speedbrake: 'sim/cockpit2/controls/speedbrake_ratio',
|
||||
parkBrake: 'sim/cockpit2/controls/parking_brake_ratio',
|
||||
// control-position graphic (CTRL POS page): commanded surface ratios -1..1
|
||||
ailDefl: 'sim/cockpit2/controls/yoke_roll_ratio',
|
||||
elevDefl: 'sim/cockpit2/controls/yoke_pitch_ratio',
|
||||
rudDefl: 'sim/cockpit2/controls/yoke_heading_ratio',
|
||||
battVolt: 'sim/cockpit2/electrical/battery_voltage', // array per battery
|
||||
battTemp: 'sim/cockpit2/electrical/battery_temp_C', // ELEC page (append)
|
||||
// --- yaw damper / mach-trim annunciation (Citation AP YD / M TRIM) ---
|
||||
ydOn: 'sim/cockpit2/switches/yaw_damper_on',
|
||||
};
|
||||
|
||||
// Datarefs the frontend may WRITE (e.g. turning the heading bug knob).
|
||||
@@ -164,6 +203,16 @@ export const COMMANDS = {
|
||||
hdgUp: 'sim/autopilot/heading_up',
|
||||
hdgDown: 'sim/autopilot/heading_down',
|
||||
xpdrIdent: 'sim/transponder/transponder_ident',
|
||||
|
||||
// --- Citation X autopilot (Honeywell Primus) extras ---
|
||||
// The mode buttons reuse the universal AP commands above (hdg/nav/apr/bc/
|
||||
// altHold/flc/vs/vnav). These add the Citation-specific master functions.
|
||||
yawDamper: 'sim/systems/yaw_damper_toggle', // YD button (engages w/ AP too)
|
||||
apStby: 'sim/autopilot/control_wheel_steer', // STBY → basic pitch/roll (CWS), drops modes
|
||||
spdUp: 'sim/autopilot/airspeed_up', // pitch wheel in FLC = target IAS/Mach
|
||||
spdDown: 'sim/autopilot/airspeed_down',
|
||||
vsUp: 'sim/autopilot/vertical_speed_up', // pitch wheel in V/S = target fpm
|
||||
vsDown: 'sim/autopilot/vertical_speed_down',
|
||||
};
|
||||
|
||||
// Per-radio standby tuning (coarse = MHz, fine = kHz) + active/standby flip.
|
||||
|
||||
Reference in New Issue
Block a user