MCDU Web Interface
Overview
The MCDU Web Interface allows you to display and control the MCDU on a browser including browsers on mobile devices like phones or tablets.
See list of compatible and tested browsers: Compatible Browsers
MCDU Web Interface
It also allows to use your real printer on to be used as a cockpit printer for the MCDU.
Starting the MCDU Web Interface
Start the MCDU Web Interface Server
To be able to use the MCDU Web Interface you need to start the web server which will provide the application to your browser.
To do this locate the flybywire-aircraft-a320-neo
folder in your MSFS Community folder. Within this folder you will find a folder called MCDU SERVER
. Open this folder.
Double-click on the server.exe
file to start the MCDU Server.
You can also use the command prompt to start the server manually
See advanced startup options below: Advanced Start Options
Once started the MCDU Server application will ask if you want to use your real printer instead of the virtual printer in the cockpit.
If you choose to use your real printer then press Y, after which you need to select which printer you want to use. The MCDU Server will list all printers available in your Windows.
If you do not want to use your printer select N.
After this the MCDU Server will start and will provide you with links for your local browser to access the MCDU Web Interface.
You will need to keep this window open and the MCDU Server running to use the MCDU Web Interface.
MCDU Server Connection Attempts Timeout
Due to issues in the Microsoft Flight Simulator Coherent Engine (Javascript Engine) continuous connection attempts lead to performance problems for some users because of how the engine handles unsuccessful connections.
Therefore, a timeout mechanism has been built into the MCDU limiting the number of connection attempts the MCDU will execute.
A setting in the fylPad EFB Sim Options page has been introduced to allow users to restart the connection attempts or to turn off the attempts to connect to the MCDU Server completely.
The three settings are:
- Auto:
- The MCDU attempts to connect to the MCDU Server for 5min after pressing "Ready to Fly" (
Active
is shown). - If this setting is selected the MCDU will try to connect to the MCDU Server for 5min after every start of a new flight.
- After 5min of unsuccessful connection attempts the MCDU will stop any further attempts and
Inactive
will be shown. - If
Inactive
is shown but you want to connect to the MCDU server just click onOff
and thenAuto
again.
- The MCDU attempts to connect to the MCDU Server for 5min after pressing "Ready to Fly" (
- Off:
- The MCDU will not make any attempts to connect to the MCDU Server.
Browser on Local PC
If you want to use a browser on the same machine on which you are running the Microsoft Flight Simulator and the MCDU Server it is very easy to connect to the MCDU Web Interface.
Just use Ctrl+Left Click on the localhost
link in the command window and it should open the MCDU Web Interface in your default browser.
If you want to start with only the MCDU display and not the whole MCDU panel then add "/fullscreen" to the url.
http://localhost:8125/fullscreen
Browser on Remote Device
If you want to use the MCDU Web Interface from a remote device (e.g. tablet, phone, 2nd PC, etc.) you need to first make sure you can access the MCDU Web Interface on your PC by allowing incoming network connections to the server through your Windows Firewall. See how to do this here: Firewall Configuration.
The MCDU Server command window tries to detect your IP address. Use the http://xxx.xxx.xxx.xxx:8125
address and enter it into your browser on the remote device.
Unknown IP Address (click to expand)
Sometimes the MCDU Server is not able to detect your IP address. To find your correct IP address follow this guide: How to Find Your IP Address on Windows 11
The port is set to 8125 per default and can be changed be command line options (see Advanced Start Options) .
Enter the correct IP address and port into the remote device's browser address line and hit enter.
Example: http://192.168.16.1:8125
If you want to start with only the MCDU display without the MCDU panel then add "/fullscreen" to the url.
How to Use the MCDU Web Interface
The MCDU Web Interface can then be used by mouse or touch depending on your device.
It is also possible to click on the MCDU screen items themselves to actually click the corresponding LSK (Line Select Key).
You can hold the CLR key for >1.5sec to clear all of the scratchpad's content as it is possible in the cockpit itself.
Changes done in the MCDU Web Interface will be reflected immediately in the cockpit and vice versa. Any change in the cockpit will be immediately shown in the MCDU Web Interface.
Fullscreen Display
If you only want the MCDU display to be shown then tap on the top-most part of the MCDU display. To return to the full MCDU view tap anywhere on the display.
If you want to start with only the MCDU display visible then add /fullscreen
to the url.
Sound
You can enable click sounds when pressing buttons on the MCDU by adding /sound
to the url.
Day and Night Mode
It is possible to switch between a day and night mode MCDU visualization be clicking/touching the BRT/DIM button in the Web MCDU.
Using Your Local Printer
If you chose a local printer when starting the MCDU Server, every print you will make from the MCDU to the cockpit printer will also be printed using your previously selected printer.
The printers available are those known to the PC where you run Microsoft Flight Simulator and the MCDU Server is on. It is not relevant if your remote device where you use the MCDU Web Interface actually knows this printer.
For different printers and paper size the server allows to specify the paper size and font size. See Advanced Start Options
Websocket Port
The websocket port is the port where the MCDU Web Interface will communicate with the actual MCDU. It sends and receives data through this connection.
This will allow to have different UI implementations or even hardware MCDUs in the future. We plan to eventually also create separate documentation for using this websocket connection directly.
We recommend to not change the default port for the websocket if not required. If you have to change this port because it is already occupied on your machine you need to change it as well in the EFB Sim Options Settings page.
Compatible Browsers
With hundreds of different browsers available today it is not possible to test and support all browsers and their different versions.
In general we expect this feature to work with the common modern standard browsers on Windows, iOS, Android.
However, there will be browsers where this will not work. In this case we recommend to use a standard browser.
We have tested these browsers (current versions) during the development and these should therefore work ok:
- Windows: Edge, Firefox, Chrome
- iOS: Safari, Firefox, Edge, Chrome, duckduckgo, Brave, Bing
- Android: Chrome, Edge
- Mac OS: Safari, Firefox, Edge, Chrome
- Samsung phone: Chrome, Firefox, duckduckgo
- Linux: Firefox
- Amazon Kindle Fire HD 10 : Silk
(App Version 94.2.2.4606.119.10 Android 5.1.1, Fire OS 5.6.9.0)
Always use the latest versions of the operating system and the browser.
We have not tested older operating systems or browsers and can't support them. They might or might not work.
Known unsupported operating systems or browsers:
- Samsung Internet Browser
- iOS 9.x, iOS 10.x
- Very old browsers not supporting Web Sockets. See Can I use Web Sockets
Advanced Configuration
Advanced Start Options
The MCDU Server application has several additional command line options to control the startup configuration.
>server.exe -h
Usage:
server [options]
Options:
--debug shows full error details and logs websocket traffic
--font-size=... sets font size for printing (default: 19)
-h, --help print command line options
--http-port=... sets port for http server (default: 8125)
--margin=... sets margin for printing in points
--no-printer skips prompt to select printer
--paper-size=... sets paper size for printing (default: A4)
--printer=... enables printing to the specified printer
--websocket-port=... sets port for websocket server (default: 8380)
- debug:
- Additional error output and logs websocket traffic
- font-size
- This defines the font size the printer out will use.
- Default is 19 but for smaller printouts (e.g. thermal printer) a smaller size may be required.
- http-port:
- This is the port you need to add to your URL in the browser to access the MCDU Web Interface.
- E.g. 8125 for this URL: http://localhost:8125
- margin:
- This defines the margins for the print out
- no-printer:
- To skip the prompt asking to choose a printer and not have a local printer configured. This option is required if you want to start the server without any manual interaction (e.g. starting it with the sim).
- paper-size:
- This defines the paper size the printer out uses.
- See a list of all supported paper sizes below.
- printer:
- To skip the prompt asking to choose a printer and have a specific local printer configured. This option is required if you want to start the server without any manual interaction (e.g. starting it with the sim).
- websocket-port:
- The port where the MCDU Web Interface will communicate with the MCDU itself.
This is not the port you need to access the MCDU Web Interface with your browser.We recommend to only change this if absolutely required (e.g. port is already occupied). See Websocket Port for details.
Supported Paper Sizes (click to expand)
Based on this list: PDFKIT Paper Sizes
- A-series: A0 ... A10
- B-series: B0 ... B10
- C-series: C0 ... C10
- RA-series: RA0 ... RA4
- SRA-series: SRA0 ... SRA4
- Common U.S. sizes
- EXECUTIVE
- LEGAL
- LETTER
- TABLOID
- Other
- 4A0
- 2A0
- FOLIO
The exact size can be found here: Overview_of_ISO_paper_sizes
To use advanced startup options you can use a Windows Powershell or Windows Command Prompt.
Alternatively you can create a Windows Shortcut for the server.exe file and add the parameters to the target field.
Network Configuration
To access the MCDU Server from a remote device you need to make sure that this device is on the same network as the PC running the MCDU Server.
This is typically the case if both, the PC and the device use the same Internet router and the same WiFi.
To check this you can look at the IP address the MCDU server has listed in its command window.
In the example above the IP address is 192.168.1.19
.
Your device should typically also have an IP address starting with 192.168.1.x
in this case.
You can check this in the device's network configuration.
Examples for Device Network Information (click to expand)
iPad:
Samsung Android:
If you still can't connect to the MCDU server your firewall might block the traffic. See next chapter.
Firewall Configuration
Disclaimer
Changing Windows settings, especially security settings like the firewall comes with certain risks. Please do not change these settings if you are not comfortable doing so. FlyByWire Simulations cannot take any responsibility for any issues caused by your changes to Windows or security settings.
If you can't reach your MCDU server from your browser on your device or on your local PC then it is very likely that your PC firewall is blocking this network traffic.
To test and confirm this turn off your firewall and try again to reach your MCDU via your browser. If you now can access your MCDU from your browser you have confirmed that it is indeed the firewall that blocks this access.
Turn the firewall back on again.
(never run a PC without a firewall)
We now know we need to open the ports we want to use. The default ports are TCP 8125 and TCP 8380 and these must be allowed to pass the firewall.
There are several ways to open ports on your PC firewall.
For the Windows Firewall you can follow this guide here:
Opening a Port on Windows Firewall Instructions
Alternatively you can open a Command Line prompt as Administrator and use this command:
netsh advfirewall firewall add rule name="MCDU Server" dir=in action=allow protocol=TCP localport=8380,8125
For an advanced guide of this command see the Microsoft documentation:
netsh advfirewall firewall
Remove Autogenerated Rules (click to expand)
Sometimes Windows has already automatically generated some rules after showing you a firewall dialog when starting the MCDU Server.
If you still can't connect to the MCDU Server these rules might be the cause. After adding your own rule as described above you don't need these anymore and they can be deleted.
They usually look like this:
Windows Dialog creating these automatic rules looks likes like this:
This should now allow access from your browser to the MCDU.
Occupied Port
Sometimes the default ports 8380 or 8125 are already used by other services on your PC.
In this case you should get error messages similar to this:
Error: Port 8125 is already in use
Error: Port 8380 is already in use
How To Check If a Port is Already In Use? (click to expand)
You can see if a port is occupied by making sure the MCDU Server is off and then running this command:
Windows Command Line:
netstat -ano | find "8380"
netstat -aon | findstr 8380
If the corresponding port is already in use the output should be similar to this:
TCP 0.0.0.0:8380 0.0.0.0:0 LISTENING 4
TCP [::]:8380 [::]:0 LISTENING 4
...
Webserver Port is Occupied
If the port for the webserver 8125 is already in use you can simply start the MCDU server with a different web server port with this option:
server.exe --http-port=8126
Of course now the firewall might need to be opened for this new port.
Websocket Port is Occupied
If the port for the MCDU Websocket Server is occupied you need to first change this port in the flyPad EFB Sim options page.
You can then start the MCDU server using the new websocket port with this option:
server.exe --websocket-port=8381
Of course now the firewall might need to be opened for this new port.
Starting the MCDU Server with Microsoft Flight Simulator
Microsoft Flight Simulator has the possibility to automatically start external applications during its own startup.
We can use this feature to also automatically start the MCDU Server.
Be aware that this feature has some drawbacks and we do not offer support for this MSFS feature
For this configuration we need to edit a file called exe.xml
in the MSFS configuration folder.
You can find this folder here:
%localAppData%\Packages\Microsoft.FlightSimulator_8wekyb3d8bbwe\LocalCache
%appData%\Microsoft Flight Simulator
This file should similar to this although it already might have entries not shown in this example:
<?xml version="1.0" encoding="Windows-1252"?>
<SimBase.Document Type="SimConnect" version="1,0">
<Descr>SimConnect</Descr>
<Filename>SimConnect.xml</Filename>
<Disabled>False</Disabled>
<!-- NEW APPLICATIONS TO START HERE -->
</SimBase.Document>
Add the following section before the </SimBase.Document>
tag and change the YOUR_COMMUNITY_FOLDER
placeholder with the path to your Community folder.
<Launch.Addon>
<Name>FlyByWire MCDU Server</Name>
<Disabled>False</Disabled>
<Path>YOUR_COMMUNITY_FOLDER\flybywire-aircraft-a320-neo\MCDU SERVER\server.exe</Path>
<CommandLine>--no-printer</CommandLine>
</Launch.Addon>
Unfortunately MSFS does not stop the automatically stated applications after shutting down and you need to close the MCDU Server window manually.
If you do not do this there will be an error message the next time you start MSFS or the MCDU Server as it is already running.
MCDU Server Architecture
The MCDU Server uses a web application running in the browser to send and receive data via the Web Socket protocol from the MCDU.
To open the web application the browser will connect to the MCDU Server's webserver via http protocol (default port 8125) and download and run the MCDU Web Interface application (HTML/CSS/JavaScript).
The MCDU Web Interface application will open a data connection to the MCDU via Web Socket protocol (default port 8380) and receive data (screen content) and send data (user input like button pushes) from and to the MCDU.
For this to work the browser must be able to reach the MCDU Server via the two TCP ports 8380 and 8125 (these defaults can be changed) which means users might need to reconfigure their network and firewall settings accordingly (see documentation above).
Troubleshooting
No MCDU SERVER Folder
The MCDU Server is only available in the Development Version.
MCDU Server Error: Port 8125 is already in use
The http port 8125 is already in use.
Solution: Webserver Port is Occupied
MCDU Server Error: Port 8380 is already in use
The web socket port 8380 is already in use.
Solution: Websocket Port is Occupied
MCDU Server: Waiting for Simulator...
Although Flight is Started
The MCDU Server continues to show Waiting for simulator ...
although the flight is started and aircraft is loaded.
Two known causes:
- The web socket port 8380 is already in use.
- MCDU Server Connection Timeout
Solution:
MCDU Server Error: Failed to load printers
If you you start the server and get this error messages:
Error: Failed to load printers.
Make sure the "Print Spooler" Windows service is running.
You can find the Services Manager by pressing Win+R and then type services.msc
.
MCDU Server Error: ...Encoding not recognized...
When you start the server and and it crashes immediately with an error message mentioning ...Encoding not recognized...
you Windows most likely uses a rare UTF-8 based encoding.
Solution:
- Open Windows Control Panel -> Region.
- Go to the Administrative tab and click Change system locale
- Make sure the check mark next to Beta: Use UTF-8 for worldwide language support is selected.
- Click OK and restart your computer.
Browser Can't Connect to MCDU Web Interface
You browser can't connect to the MCDU Web Interface and times out eventually.
Cause: This is most likely a network or firewall issue.
Solutions:
Browser Shows MCDU Web Interface but Display Remains Black
You browser can't connect to the MCDU Web Socket port.
Cause: This is most likely a network or firewall issue.
Solutions:
Cause: Aircraft has no Power / MCDU is still off.
Solution: Power up the aircraft.
Browser Shows MCDU Web Interface only partly or garbled
Your browser can connect to the server but does not show the MCDU Web Interface correctly or not at all.
Cause: This is most likely an incompatible browser.
Solutions:
- Use a different browser.
- See tested browsers: Compatible Browsers
Printout format incorrect / receipt printer
The default format the printer uses is paper size A4 and font size 19.
For some printer especially receipt printer a different paper size and font size must be used to make the output look good.
We recommend to experiment with this a bit to find good values for your printer. In our tests we found paper size C8 and font size 10 a good starting point.