XPPanelsVR goggles iconXPPanelsVR for Apple Vision Pro

XPPanelsVR Help

Guide updated September 30, 2026. Support: aldoapps@gmail.com.

Before You Start

For entertainment only. Not for real-world aviation or certified flight training.

XPPanelsVR is a cockpit interface, not a flight simulator. It runs on Apple Vision Pro with visionOS 26 or later and controls X-Plane on a separate computer. The current native cockpit mappings target the ToLiss A320. The simulator, aircraft add-on and any required licenses are separate purchases; they are not included.

This implementation has been developed against X-Plane 12 and ToLiss A320 v1.2.1 on macOS. Do not assume all aircraft versions, X-Plane 11, other A320 products or every Windows configuration have been validated. Check your aircraft's license for the intended use before enabling external displays or building a simulator setup. See Safety & Compatibility in Settings.

Use a seated, clear space. Virtual panels provide no physical support. Pause the simulator during setup and keep its normal controls available.

Connect to X-Plane

  1. Start X-Plane on the computer and load the supported aircraft. Connect the computer and Vision Pro to the same trusted private network. A wired computer connection can reduce contention.

  2. Open Settings using the gear icon in the cockpit menu. Enter the computer's LAN IPv4 address or local host name. Do not enter a URL or port in the address field. 127.0.0.1 refers to the headset itself, not your simulator computer.

  3. Select X-Plane UDP (CMND/DREF) and the simulator's UDP port, normally 49000. For features requiring timed command hold/begin/release, install the matching XPPanels command bridge on the computer and select Custom JSON (plugin), normally 49001. These two transports are alternatives. The bridge must match the selected port.

  4. Choose Save & Connect and allow Local Network access when visionOS asks. Existing settings show Reconnect instead. Incoming simulator samples, not merely an open UDP socket, determine the connection indicator. The app chooses its local reply port automatically.

  5. Allow X-Plane and the required bridge through the computer's firewall on the private network. Guest Wi-Fi, client isolation or a VPN may prevent communication. Do not expose or forward these ports to the internet.

Position the Cockpit

Choose Open Cockpit. Sit in your intended position, choose Move, then pinch and drag the cockpit to align it. Scale is available while placement is unlocked. Choose Locked when finished: green means locked; amber means unlocked. Placement lock prevents cockpit movement, not simulator control inputs.

Choose Captain or First Officer in Viewpoint (POV) at the top of the cockpit menu. This selector stays visible when scrolling, before and after opening the cockpit. Each seat automatically saves its own cockpit position, heading, scale and placement lock. Switching seats restores that seat's saved adjustments; a seat without a saved position aligns to your headset on its first use. Reopening the app restores the last selected seat and its settings.

Each seat also remembers Outside View settings, instrument display visibility, both EFB modes, physical-control cutouts and interaction preferences. Changes save automatically, without a Save button. The simulator connection and the actual EFB panel designs remain shared between seats.

The calibrated cockpit scale is 1.00x, equal to the previous 4.00 model scale. Both the slider and pinch scaling are limited to 0.80x-1.20x. The reset arrow beside Scale returns only the selected seat's scale to 1.00x, keeping its eye point in place. Existing settings migrate automatically; scales outside the new range are limited to its nearest endpoint.

The person-in-circle button resets the selected seat's eye point to your current headset position and horizontal forward direction. Face the direction you want the cockpit to face when pressing it. Reset keeps the cockpit level, preserves scale and the placement-lock setting, and saves the new position for that seat only. The other seat's preset is unchanged. It uses headset orientation, not eye gaze. If tracking is unavailable, placement is left unchanged and a message asks you to retry. Physical alignment can still need adjustment after moving the headset's play space. Align before operating controls and recheck alignment before reaching toward real hardware.

Choose Close Cockpit to leave immersion. This does not pause or shut down X-Plane. A mixed immersive space reveals your surroundings, but does not guarantee that another app, including Mac Virtual Display, remains visible. The optional Outside View stream renders inside our cockpit and does not require Mac Virtual Display.

Outside View (Mac)

The first version captures X-Plane's main window on a Mac and displays it on a curved screen behind the virtual cockpit. It is a monoscopic 2D view, not stereoscopic scenery. Windows outside-view capture and audio streaming are not included in this version. The existing Windows instrument bridge is unchanged.

  1. Run XPPanelsVR Companion, which includes Display Bridge, on the Mac. Start Sharing and enable Allow Outside View. With the standalone Display Bridge helper, use Outside View Sharing in its menu-bar menu instead. This local permission is off by default and is separate from macOS Screen Recording permission. Disable it to stop or reject outside-view connections.
  2. Open X-Plane's main window and choose the desired simulator view. The video bridge does not change simulator controls or the camera automatically. Keep required ToLiss instrument pop-outs open. If they go black in a no-cockpit view, the outside stream cannot fix the aircraft's source-rendering limitation.
  3. Set the simulator's Mac address in XPPanelsVR Settings, then open the immersive cockpit. Turn on Outside View in the cockpit menu.
  4. Open Outside Screen Settings. Automatic source selection requires exactly one eligible main window. Otherwise choose the correct X-Plane Window. Refresh sources after replacing or reopening a window. Identified instrument pop-outs are excluded from the main-window candidates.
  5. Start with 720p / 30 fps on a slower computer or network. For more detail, try 1440p / 30 fps, then 2160p / 30 fps with Display Bridge 0.3 or later. The 1080p presets also allow 30 or 60 fps. Capture uses the Mac window's native Retina pixels. Presets cap image dimensions without stretching or inventing detail beyond the source. A 3024x1964 source remains 3024x1964 at the 2160p setting. Ultrawide sources retain their aspect ratio; an ordinary 16:9 window does not become an ultrawide camera view automatically.
  6. Adjust screen Distance, Curve, Height, Heading and Tilt. Placement is saved relative to the cockpit's pilot origin. Moving/resetting the cockpit moves the screen with it, but cockpit scale does not multiply the screen's meter-based dimensions. The video surface has no input targets and cannot intercept cockpit pinches.

Turning Outside View off, closing the cockpit, or backgrounding the immersive scene stops capture and decoding. A paused/static picture uses small keepalive packets. Broken streams reconnect automatically; window resizing restarts capture at the new aspect ratio. One headset can receive outside video at a time.

Performance testing: compare the same simulator view at 1080p, 1440p and 2160p, keeping 30 fps and the screen curvature unchanged. In Outside Screen Settings, Performance shows decoded/uploaded video FPS, decoder milliseconds per frame, video traffic, superseded frames, horizontal screen pixel density and headset thermal state. These are not X-Plane's simulation FPS, headset render FPS or end-to-end latency. Some frame supersession is intentional to keep the latest image instead of building latency. Sustained FPS loss, increasing skips or serious/critical thermal state are reasons to reduce quality. A wider screen curve spreads the same pixels over more of your view. Higher capture resolution cannot recover detail lost to low simulator rendering resolution or upscaling.

Outside View uses Companion's local HTTP server on TCP 49200, alongside the instrument streams and separately from simulator UDP. Install the signed and notarized Mac Companion and connect both devices to the same trusted private network. No cloud video service or router port forwarding is needed. The local protocols do not add transport encryption; follow the private-network setup guidance.

Ultrawide Sources

Display Bridge 0.4 adds 5120 x 1440 / 30 fps / HEVC and experimental 7680 x 2160 / 30 fps / HEVC. Use a matching physical ultrawide display, or install BetterDisplay separately on the Mac and choose Virtual Ultrawide: 5120 x 1440 in the bridge menu. BetterDisplay's trial/licence terms apply; it is not included or purchased by XPPanelsVR. The helper creates only XPPanelsVR Outside; the menu can disconnect it afterwards.

In X-Plane Settings > Graphics, select that display and resolution for the main simulator view. Keep instrument pop-outs open on the physical display. In the headset, refresh sources, select the ultrawide X-Plane window and choose the matching HEVC quality. At 160 degrees, a 5120-wide source provides an average 32 horizontal pixels per degree; 7680 provides 48. Creating a virtual display alone does not move X-Plane to it or increase the resolution of an existing window.

The updated XPPanelsBridge command plugin adds reversible camera controls in Outside Screen Settings > X-Plane Camera, plus Plugins > XPPanels Outside View in the simulator. Restart X-Plane after updating the plugin. Apply a horizontal FOV, or use Match Screen Curve. Restore Previous Field of View restores the value before your first adjustment. No camera changes occur on startup. These controls affect the primary horizontal FOV only; select resolution and monitor assignment in Graphics.

Matching FOV numbers does not turn a rectilinear camera image into a true panoramic projection. At very wide FOVs, perspective distortion remains. Start at 5120x1440, 30 fps; 7680x2160 costs 2.25 times as many source pixels and needs separate sustained headset/network testing. Simulator rendering, hardware video encoding and Wi-Fi all affect performance. If the encoder cannot support a requested mode, select a lower quality.

Cockpit Displays and the Bridge

Display Bridge is for use only with X-Plane running a ToLiss A320 or A321 aircraft, with working detached display pop-outs. Other aircraft and simulators are not supported. The current Mac implementation has been tested with X-Plane 12.4.3 and ToLiss A320 v1.2.1; A321 and other versions still need separate verification. This does not extend the native A320 cockpit control mappings to another aircraft automatically.

Display Bridge is an independent AldoApps product, not affiliated with or endorsed by ToLiss or Laminar Research. Their names identify compatibility only. Aircraft and simulator licences are separate, and their restrictions still apply.

The display bridge and the command bridge are different components. Cockpit displays use HTTP 49200, not command UDP 49000/49001. Fixed cockpit displays use the simulator address in Settings and the standard display bridge port.

On macOS, run XPPanelsVR Companion (which includes Display Bridge) or the standalone Display Bridge helper, not both. Allow Screen Recording for the Mac application, not the Vision Pro app, and restart it if macOS requests it. On Windows, install the supplied Display Bridge plugin under X-Plane's Resources/plugins folder, restart X-Plane, and allow it through the firewall on private networks. Existing internal plugin-folder names are unchanged.

In Companion, Instruments > Open Missing Displays opens and arranges the sources; Use Default Sizes reapplies the instrument sizes. Please wait and a spinner remain visible while setup runs. It can take about a minute, sometimes longer. Leave the mouse untouched until setup finishes and check the final status for any windows that still need attention.

Open the aircraft displays as separate operating-system pop-out windows, not just floating views inside X-Plane. On the simulator computer, visit http://127.0.0.1:49200/ to check the bridge. On another device on the same network, use the simulator computer's LAN address instead of 127.0.0.1.

Cockpit Displays in the main menu controls visibility of the captain and first-officer PFD/ND, upper/lower ECAM, ISIS and both MCDU screens. Their locations and sizes are fixed to the 3D model. The MCDU stream is the LCD only; its 3D keypad sends commands separately.

MCDU screens use our display bridge. Their key interactions are implemented in XPPanelsVR, and their LCD images come from ToLiss. Flight-management calculations remain in the aircraft simulator. The EFB panel editor's ToLiss Display device can show MCDU 1 or MCDU 2, and the MCDU Recorder uses the MCDU 1 stream while retaining its custom keypad and recording controls.

Older saved WebFMC viewer devices migrate to the matching MCDU 1 or MCDU 2 bridge display, keeping their identity, label, position and size. Their old service port and full-web-keypad setting are not reused: the replacement is an LCD-only stream on bridge port 49200. Use the native cockpit keys or custom panel controls for input. The optional WebFMC viewer and editor are no longer available.

On macOS the bridge uses unique window names or the aircraft's popup-coordinate telemetry to identify sources, leaving ambiguous sources unassigned. On Windows, use the bridge's Flash window and assignment controls if window titles are not unique. Confirm captain/first-officer identity after rearranging windows or updating the aircraft. Keep source windows open; making them smaller reduces image detail.

Black pop-outs in X-Plane cannot produce a valid picture in the headset. Aircraft version, view mode, rendering behavior and license restrictions can affect their availability. Verify the original window first; this bridge does not bypass aircraft restrictions.

Buttons and Rotary Controls

Look at a control and pinch. The white highlight identifies the target. FCU numeric readouts also target their associated rotary controls. Pinch and move your hand vertically to turn FCU, EFIS and most pedestal encoders. Release to end the interaction. Overhead rotaries use lateral movement.

For FCU SPD, HDG, ALT and V/S, a short stationary pinch is push; a double stationary pinch is pull. Movement is a rotary gesture, not a push/pull. Nearby controls are blocked during a rotary gesture and briefly afterward; the same knob can be used again immediately.

Direct Hand Touch enables fingertip interactions with supported overhead controls and requires hand-tracking permission. Gaze-and-pinch remains the alternative. The Interaction Settings section can separately enable the overhead and the FCU/instruments/pedestal. Turning off a group does not disconnect or pause the simulator.

3D Gesture Helpers optionally shows a solid white 3D cue only for the highlighted knob or lever. Each cue hovers directly over its control, parallel to the base panel. Arrows illustrate the pinch-drag direction; a miniature hand closes twice for the parking brake's double pinch. Small repeating movements demonstrate the action; visionOS Reduce Motion makes them static. This setting is saved separately for each seat and does not require Direct Hand Touch. Pushbuttons, Korrys and MCDU keys do not have helpers. The push/pull actions described above remain unchanged.

Knobs and levers use a stronger cool-blue gaze highlight to stand out against light-colored parts. Buttons retain white highlighting. Helpers do not accept pinches themselves; keep targeting the control or its linked FCU readout.

EFIS ADF/OFF/VOR: pinch and drag each switch horizontally to select its bearing source. Captain and copilot switches independently control their respective NDs.

Disconnect buttons: a short pinch on either thrust handle's red side button disconnects A/THR. A short pinch on either sidestick's red thumb button disconnects the autopilot. Sidestick priority/takeover hold functions are not implemented.

Levers and Protected Actions

Landing gear: pinch and drag up for UP or down for DOWN. A/SKID & N/W STRG: drag up for ON or down for OFF. A stationary pinch does not toggle either control.

Engine masters: pinch and drag vertically, up for ON and down for OFF. ENG MODE SEL and SWITCHING selectors use a vertical pinch-drag. Parking brake: double stationary pinch toggles ON/OFF; a single pinch or drag does nothing.

Flaps: drag down to extend one notch or up to retract one notch. Release and start a new pinch for the next notch. Longer travel cannot skip several notches.

Thrust levers: drag up to advance one detent or down to retard one detent. Release between steps. The sequence is MAX REV, IDLE REV, IDLE, CLB, FLEX/MCT, TOGA. Under Interaction Settings, choose Both, Separate or By Grip Area. By Grip Area links the inner portions; each handle's outermost 15% operates only that lever. Verify the simulator's indications, especially after changing hardware or aircraft versions.

Trim wheels: target the outboard rim away from the thrust levers. Drag up for pitch down, down for pitch up. Rudder trim: pinch and move left/right; release to stop. The reset button centers rudder trim.

Rudder trim over Native UDP requires the updated XPPanelsBridge plugin. Its short, renewable command holds automatically expire if the headset stops sending. Restart X-Plane after updating the plugin.

Speed brake: double stationary pinch arms, one stationary pinch retracts, drag down extends and drag up retracts. ECAM EMER CANCEL: double pinch. Normal MCDU and transponder keys use a short pinch.

EFB Tablet Panels

Each side has an independent Editable Panel or See-through mode. With Editable Panel selected, choose Edit Panel to open that tablet's design window. Add simulator devices, edit their properties and supply the correct commands/datarefs. The immersed EFB runs the resulting controls without the editing toolbar.

In Edit Devices or Edit Lines mode, double-pinch an item to select it. Double-pinch more items to extend the selection, or a selected item to deselect it. Drag a selected item to move the selection together. The selection menu provides Copy, Duplicate, Delete, layer ordering and Done. Select All is available in both modes; Select All Devices or Select All Lines follows the current editing mode. Done clears the selection.

The design toolbar's Undo/Redo applies to editing and selection actions that change the design. Selection itself is not a simulator action. Use Edit Properties for exact positions, dimensions and bindings. Resizing the design window scales the editing view; it does not change the tablet's immersed physical size. Export .xppvr backups before large edits; imported legacy .xppanels layouts may need adjustment.

With See-through, the virtual screen and obstructing tablet parts disappear. Position your physical tablet behind the opening yourself. The app neither tracks your tablet nor connects to it automatically. Switching back retains your editable design.

Physical Hardware

Thrust Levers See-through hides the virtual thrust controls and their input targets. Front Panel Cutout offers Virtual Controls, FCU Only, or FCU + ECP. ECP here means both EFIS control panels. The outer CHRONO, master warning/caution, AUTO LAND and priority annunciators remain available.

The openings reveal passthrough, not a live feed supplied by this app. Connect and configure your physical hardware in X-Plane independently. Cutouts do not install drivers, detect hardware or automatically align it. Hidden virtual controls do not accept input.

Troubleshooting

Waiting for simulator: check LAN address, transport and UDP port, Local Network permission, aircraft loading and firewall. Open Settings > Diagnostics for packet counts and a read-only dataref probe. An unknown dataref may return no useful value even when the network works.

Some readings are blank while others work: the app retries individual stale dataref subscriptions automatically and paces initial requests. Settings > Diagnostics lists missing/stale paths and the retry count. This also applies to HDG and the captain's QNH; closing the cockpit should not be necessary to recover a dropped subscription. Invalid or aircraft-version-specific datarefs still require correcting the binding. A busy or paused simulator may temporarily stop replying.

Connection refused on displays: check that the display bridge is running on the computer, listening on TCP 49200 and reachable on the LAN. UDP success does not establish an HTTP connection. If an editable display device reports a different port, check its properties; fixed cockpit displays and the MCDU Recorder use 49200.

Wrong, blank or missing display: check the original pop-out, bridge source assignment and visibility toggle. Keep pop-outs open. A lit aircraft and an active display source are separate requirements. Do not attempt to defeat a third-party license restriction.

Controls unavailable: lock placement after positioning; check the Interaction Settings toggles and hardware cutouts. For direct touch, check Hand Tracking permission in visionOS Settings. Some rendered parts are decorative or not yet mapped. Clock DATE/manual setting, side-panel brightness and loudspeaker controls are not implemented.

Slow response: first compare control latency with display latency. Disable unneeded streams, reduce source-window size moderately, and try a wired simulator computer on an uncongested network. The app's display stream does not improve the simulator's own frame rate.

Support and Permissions

Email aldoapps@gmail.com with your app version/build (shown in Settings), visionOS version, simulator/aircraft versions, computer OS and steps to reproduce. Attach logs or screenshots only after checking them for private information. Nothing is attached automatically by Contact Support. Do not send passwords, aircraft activation keys or full third-party aircraft assets.

System permissions are controlled by visionOS Settings. Denying Local Network prevents simulator communication; denying Hand Tracking disables direct-touch overhead input, not normal system pinch selection. See the Privacy Policy for local storage, network traffic and deletion information.