---
name: "fgfs"
section: "1"
platform: "linux"
package: "flightgear"
version: "1:2020.3.19+dfsg-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/fgfs"
---

# fgfs(1)

the FlightGear flight simulator

## NAME

fgfs - the FlightGear flight simulator

## SYNOPSIS

**fgfs** \[*options...*\]

## DESCRIPTION

**fgfs** is the main executable for FlightGear, a free, open-source, multi-platform and sophisticated flight simulator framework for the development and pursuit of interesting flight simulator ideas.

## OPTIONS

Options are first read from the command-line arguments passed to **fgfs**. The program then checks for the existence of *~/.fgfsrc.hostname* (where *hostname* is the hostname of the machine) and of *~/.fgfsrc*; if at least one of those files exists, it is read and parsed (see the [**fgfsrc**(5)](/fgfsrc/5.md) man page for the full specifications of the file format).

If conflicting options are given, the ones read last will prevail.

### General options

- **--help**, **-h**

  Display usage information about the most relevant command-line options and exit.

- **--verbose**, **-v**

  When combined with **--help**/**-h**, display usage information about all command-line options, not just the most relevant ones.

- **--version**

  Display version information about **fgfs** and some of the libraries used by the program (SimGear, OpenSceneGraph, PLIB), then exit.

- **--fg-root=***path*

  Set the FlightGear data root directory (**$FG\_ROOT**) to *path*. If this option is not set, **fgfs** uses the path specified in the **FG\_ROOT** environment variable or, absent that, the FlightGear data directory chosen at the time the program was compiled.

- **--fg-scenery=***path*

  Set the FlightGear scenery directories (**$FG\_SCENERY**) to *path*.

  You can specify multiple directories by separating them with colons (**:**), as in */first/path***:***/second/path* (on Microsoft Windows operating systems, multiple paths should be separated by semicolons instead): in that case, **fgfs** will follow the order the paths are written in to search for scenery files, stopping as soon as a match is found.

  If this option is not set, **fgfs** uses the path specified in the **FG\_SCENERY** environment variable or, absent that, the **Scenery** subdirectory inside **$FG\_ROOT**.

- **--fg-aircraft=***path*

  Load additional aircraft from *path* besides the **Aircraft** subdirectory inside **$FG\_ROOT**. Alternatively, you can use **--aircraft-dir** to target a specific aircraft in a given directory.

- **--download-dir=***path*

  Store aircraft and scenery downloaded via the simulator in *path*.

  The TerraSync directory may be specifically set with the **--terrasync-dir** option.

- **--allow-nasal-read=***dirs*

  Allow Nasal aircraft scripts to read files from the directories listed in *dirs* (separate multiple paths with colons, or semicolons on Microsoft Windows operating systems).

  By default, Nasal scripts are allowed to read data only from **$FG\_ROOT** and **$FG\_HOME**, as a security measure.

- **--read-only**

  Make **$FG\_HOME** (the location where user-specific FlightGear data is stored) read-only.

- **--language=***code*

  Set the language used by the simulator to *code*, where *code* is an ISO 639-1 two-letter locale code (for example, **en** or **it**).

- **--restore-defaults**

  Reset all user settings to their defaults.

- **--enable-save-on-exit**, **--disable-save-on-exit**

  Save/do not save user settings when the program exits.

- **--ignore-autosave**

  Ignore the user settings saved the previous time FlightGear was run. This option implies **--disable-save-on-exit**.

- **--browser-app=***path*

  Use the Web browser specified in *path* to open aircraft documentation.

- **--prop:**\[*type***:**\]*name***=***value*

  Set the property *name* to *value*. You can optionally specify the property type by setting *type* to **string**, **double**, **float**, **long**, **int** or **bool**.

- **--config=***path*

  Load additional configuration directives from *path*. The file should follow the format described in [**fgfsrc**(5)](/fgfsrc/5.md).

- **--no-default-config**

  Do not load any configuration files unless they were explicitly specified with **--config**.

- **--units-feet**

  Use feet as the internal measure unit for distances.

- **--units-meters**

  Use meters as the internal measure unit for distances.

- **--console**

  Display a console window for simulator/aircraft debugging purposes.

  This option is recognized only on Microsoft Windows operating systems; on other systems, debug messages are always printed to standard output/standard error.

- **--launcher**

  Start the FlightGear Launcher, a graphical Qt-based interface to the simulator.

  This option is available only if FlightGear was compiled with Qt support enabled.

- **--json-report**

  Print a report in JSON format on the standard output. The report will give useful information for debugging purposes, such as the FlightGear version, the scenery/aircraft paths in use, the TerraSync and the data download directories and the paths to navigation data files.

### Features

- **--enable-panel**, **--disable-panel**

  Enable/disable the pop-up aircraft instrument panel if the chosen airplane has it.

- **--enable-hud**, **--disable-hud**

  Enable/disable the heads-up display (HUD) if the chosen airplane has it.

- **--enable-anti-alias-hud**, **--disable-anti-alias-hud**

  Enable/disable heads-up display antialiasing.

- **--enable-hud-3d**, **--disable-hud-3d**

  Enable/disable the 3D version of the heads-up display.

- **--hud-tris**

  Display the number of triangles rendered when painting the heads-up display.

- **--hud-culled**

  Display the number of triangles culled when painting the heads-up display.

- **--enable-random-objects**, **--disable-random-objects**

  Show/hide random scenery objects, such as buildings. Scenery objects increase realism, but require more resources (memory and graphic card power).

- **--enable-random-vegetation**, **--disable-random-vegetation**

  Show/hide random vegetation.

- **--enable-random-buildings**, **--disable-random-buildings**

  Show/hide random buildings.

- **--enable-ai-models**, **--disable-ai-models**

  Enable/disable the internal AI subsystem, which is required for multiplayer gaming, AI traffic and many other animations. **Disabling the internal AI** **subsystem is deprecated.**

- **--enable-ai-traffic**, **--disable-ai-traffic**

  Enable/disable artificial plane traffic.

- **--ai-scenario=***scenario*

  Add and enable the AI scenario *scenario*. This option may be repeated multiple times to enable multiple scenarios.

- **--enable-freeze**

  Start the simulator in a frozen (paused) state.

- **--disable-freeze**

  Start the simulator in a running (unpaused) state.

- **--enable-fuel-freeze**

  Do not consume any fuel (keep its quantity in the tanks constant).

- **--disable-fuel-freeze**

  Consume fuel normally.

- **--enable-clock-freeze**

  Do not let the clock advance while running the simulation.

- **--disable-clock-freeze**

  Let the clock advance normally.

- **--failure=pitot**\|**static**\|**vacuum**\|**electrical**

  Fail the aircraft pitot, static, vacuum or electrical systems. This option may be repeated multiple times to fail more than one system.

- **--load-tape=***tape*

  Load and replay the flight recorder tape *tape*.

### Audio options

- **--show-sound-devices**

  Show a list of available audio devices and exit.

- **--sound-device=***name*

  Set the sound device to use to *name*, where *name* is the device name shown by the **--show-sound-devices** option.

- **--enable-sound**, **--disable-sound**

  Enable/disable sound in the simulator.

### Rendering options

- **--terrain-engine=tilecache**\|**pagedLOD**

  Choose the terrain engine to use. **tilecache** is the "traditional" terrain engine (recommended); **pagedLOD** is a new, experimental terrain engine designed to minimize memory usage by loading more detailed versions of scenery objects on demand.

  The **pagedLOD** engine is available only if FlightGear was compiled with GDAL support.

- **--lod-levels=***levels*

  Set the level of detail levels to *levels*, where *levels* is a space-separated list of numeric levels. This option is available only if the terrain engine in use is **pagedLOD**.

- **--lod-res=***resolution*

  Set the terrain mesh resolution to *resolution*. This option is available only if the terrain engine in use is **pagedLOD**.

- **--lod-texturing=bluemarble**\|**raster**\|**debug**

  Set the terrain texture method. This option is available only if the terrain engine in use is **pagedLOD**.

- **--lod-range-mult=***multiplier*

  Set the range multiplier (the breakpoint from a low to a high level of detail) to *multiplier*. This option is available only if the terrain engine in use is **pagedLOD**.

- **--enable-rembrandt**, **--disable-rembrandt**

  Enable/disable the Rembrandt engine ⟨http://\\:wiki.flightgear.org/\\:Project\_Rembrandt⟩, which adds deferred shading (rendering all properties of an object, such as shading, lighting, fog) in more than one pass.

- **--renderer=***name*

  If the Rembrandt engine is enabled, use the rendering pipeline described in *$FG\_ROOT/Effects/*name*.xml*.

- **--enable-splash-screen**, **--disable-splash-screen**

  Show/hide the simulator splash screen while loading the aircraft/scenery.

- **--enable-mouse-pointer**, **--disable-mouse-pointer**

  Force enable display/do not force display the mouse pointer at startup.

- **--max-fps=***frequency*

  Limit the maximum frame rate of the simulator to *frequency* Hz (frames per second).

- **--bpp=***depth*

  Use a color depth of *depth* bits per pixel to display the aircraft and scenery.

- **--fog-disable**, **--fog-fastest**, **--fog-nicest**

  Choose the fog/haze rendering technique. **--fog-disable** will disable fog/haze entirely; **--fog-fastest** will explicitly ask the graphics card driver to choose the most efficient, but possibly less accurate, fog/haze rendering algorithm; **--fog-nicest** will leave the algorithm choice to the driver, leading to higher quality results.

- **--enable-enhanced-lighting**, **--disable-enhanced-lighting**

  Enable/disable enhanced runway lighting. **This option is deprecated.**

- **--enable-distance-attenuation**, **--disable-distance-attenuation**

  Enable/disable runway light distance attenuation (the runway lights become less intense as distance increases).

- **--enable-horizon-effect**, **--disable-horizon-effect**

  Enable/disable the celestial body growth illusion near the horizon.

- **--enable-specular-highlight**, **--disable-specular-highlight**

  Enable/disable specular reflections on textured objects.

- **--fov=***degrees*

  Set the field of view angle (FOV) to *degrees*. High field of view angles allow you to see a wider part of the world; low angles allow you to "zoom in" on details.

- **--aspect-ratio-multiplier=***factor*

  Set the horizontal and vertical aspect ratio multiplier to *factor*.

- **--enable-fullscreen**, **--disable-fullscreen**

  Enable/disable fullscreen mode.

- **--shading-flat**, **--shading-smooth**

  Use flat/smooth shading. If flat shading is active, the simulator uses the same color to paint the face of an object: this is faster, but makes edges more pronounced. Smooth shading smooths color changes between vertices, leading to higher-quality results, at an expense in performance.

- **--materials-file=***file*

  Load the definitions of the materials used to render the scenery from *file*. By default, materials are loaded from *$FG\_ROOT/regions/materials.xml*.

- **--texture-filtering=***value*

  Set the anisotropic texture filtering to *value*. The acceptable values are **1** (default), **2**, **4**, **8** or **16**.

- **--enable-wireframe**, **--disable-wireframe**

  Enable/disable the wireframe drawing mode (in which only object edges are painted).

- **--geometry=***width***x***height*

  Set the window geometry (size) to *width***x***height* (both *width* and *height* are in pixels).

- **--view-offset=LEFT**\|**RIGHT**\|**CENTER**\|*value*

  Specify the default forward view direction as an offset from straight ahead. The allowed values are **LEFT** (-90°), **RIGHT** (90°), **CENTER** (0°) or a specific number in degrees.

### Aircraft options

- **--aircraft=***name*, **--vehicle=***name*

  Load an aircraft/vehicle from a set file named name*-set.xml*. The file is searched for in *$FG\_ROOT/Aircraft*, in the directory pointed to by the environment variable **FG\_AIRCRAFT** and in the directories passed to [**fgfs**(1)](/fgfs/1.md) using the **--fg-aircraft** option.

- **--aircraft-dir=***path*

  Explicitly specify the directory in which the **-set.xml** file should be searched for. If this argument is used, the path cache stored in *~/.fgfs/autosave\_X\_Y.xml*, the directories passed with the **--fg-aircraft** option and the directory specified in the **FG\_AIRCRAFT** environment variable are not taken into account.

- **--show-aircraft**

  Print a list of available aircraft and exit.

- **--min-status=alpha**\|**beta**\|**early-production**\|**production**

  Do not list aircraft having a status level (development status) lower than the one specified. See the FlightGear wiki "Aircraft rating system" page ⟨http://\\:wiki.flightgear.org/\\:Aircraft\_rating\_system⟩ for an extended description of aircraft ratings.

- **--fdm=jsb**\|**larcsim**\|**yasim**\|**magic**\|**balloon**\|**ada**\|**external**\|**null**

  Select the core flight dynamics model to use among the following ones:

  - •

    **jsb**: the JSBSim flight dynamics model ⟨http://\\:www.jsbsim.org/⟩, which takes a data-driven approach to modeling: given the performance data for an aircraft (mass and balance, ground reactions, propulsions, aerodynamics...), it assembles it together to produce the global aircraft dynamics;

  - •

    **larcsim**: the LaRCsim flight dynamics model ⟨http://\\:www.jsbsim.org/⟩, the original model used in FlightGear up to 2000, developed at NASA, now inactive;

  - •

    **yasim**: the YASim flight dynamics model ⟨http://\\:wiki.flightgear.org/\\:YASim⟩, which, given the physical and flying characteristics of an aircraft, attempts to solve for them;

  - •

    **magic**: the "Magic Carpet" flight model;

  - •

    **balloon**: a hot air balloon simulation;

  - •

    **ada**: an externally-driven flight dynamics model designed by the Aeronautical Development Agency of Bangalore, India;

  - •

    **external**/**null**: use an external flight dynamics model (the **external** option has the same meaning as **null** and is maintained for backward compatibility purposes).

- **--aero=***name*

  Load the aircraft aerodynamics model from the file name*.xml* in the aircraft directory.

- **--model-hz=***n*

  Run the flight dynamics model at a frequency of *n* Hz (*n* times per second).

- **--speed=***n*

  Run the flight dynamics model *n* times faster than real time.

- **--trim**, **--notrim**

  Trim/do not attempt to trim the model. This option is only valid if the flight dynamics module in use is JSBSim.

- **--on-ground**

  Start the aircraft on the ground. This is the default option.

- **--in-air**

  Start the aircraft in the air. This option is implied if **--altitude** is specified.

- **--enable-auto-coordination**, **--disable-auto-coordination**

  Enable/disable auto coordination (joint control of rudder and ailerons).

- **--livery=***name*

  Load the aircraft livery from a file named *name*.

- **--state=***value*

  Set the initial aircraft state to *value*. The states that can be used are aircraft-dependent.

### Time options

- **--timeofday=real**\|**dawn**\|**morning**\|**noon**\|**afternoon**\|**dusk**\|**evening**\|**midnight**

  Start the simulator at the specified time of day:

  - •

    **real**: real clock time;

  - •

    **dawn**: the time when the Sun is 90° E on the horizon;

  - •

    **morning**: the time when the Sun is 75° E on the horizon;

  - •

    **noon**: the time when the Sun is 0° on the horizon;

  - •

    **afternoon**: the time when the Sun is 75° W on the horizon;

  - •

    **dusk**: the time when the Sun is 90° W on the horizon;

  - •

    **evening**: the time when the Sun is 100° W on the horizon;

  - •

    **midnight**: the time when the Sun is 180° on the horizon.

- **--season=summer**\|**winter**

  Load summer/winter textures.

- **--time-offset=**\[**+**\|**-**\]*hh***:***mm***:***ss*

  Add a time offset to the startup time specified with the **--timeofday** option.

- **--time-match-real**

  Synchronize the simulator time with real world GMT time.

- **--time-match-local**

  Synchronize the simulator time with real world local time.

- **--start-date-sys=***yyyy***:***mm***:***dd***:***hh***:***mm***:***ss*

  Specify the simulator starting date and time with respect to the local timezone of the system.

- **--start-date-gmt=***yyyy***:***mm***:***dd***:***hh***:***mm***:***ss*

  Specify the simulator starting date and time with respect to the Greenwich Mean Time.

- **--start-date-lat=***yyyy***:***mm***:***dd***:***hh***:***mm***:***ss*

  Specify the simulator starting date and time with respect to the timezone of the starting airport.

### Initial position and orientation

- **--airport=***ID*

  Start the simulator at the airport having *ID* as its ICAO code.

- **--parking-id=***name*

  Place the aircraft at the parking position *name*. This option requires the **--airport** option to be present.

- **--runway=***number*

  Place the aircraft on runway *number*. This option requires the **--airport** option to be present.

- **--carrier=***name*\|*ID*

  Place the aircraft on the AI carrier named *name*/having the ID *ID*.

- **--parkpos=***name*

  Place the aircraft at the starting position *name*. This option requires the **--carrier** option to be present.

- **--vor=***ID*

  Place the aircraft over the VOR *ID*.

- **--vor-frequency=***frequency*

  Set the frequency of the VOR to *frequency*. This option requires the **--vor** option to be present.

- **--ndb=***ID*

  Place the aircraft over the NDB *ID*.

- **--ndb-frequency=***frequency*

  Set the frequency of the NDB to *frequency*. This option requires the **--ndb** option to be present.

- **--fix=***ID*

  Place the aircraft over the fix *ID*.

- **--offset-distance=***nm*

  Place the aircraft *nm* statute miles away from the reference point specified by the previous options.

- **--offset-azimuth=***degrees*

  Place the aircraft at a heading of *degrees* degrees with respect to the reference point specified by the previous options.

- **--lon=***degrees*, **--lat=***degrees*

  Place the aircraft at the point with the coordinates (*lat*, *lon*). Northern longitudes/eastern latitudes must be positive; southern longitudes/western latitudes must be negative.

- **--altitude=***value*

  Place the aircraft at an altitude of *value* feet (meters if the **--units-meters** option was specified).

- **--heading=***degrees*

  Specify the initial heading (yaw) angle (psi) of the aircraft.

- **--roll=***degrees*

  Specify the initial roll angle (phi) of the aircraft.

- **--pitch=***degrees*

  Specify the initial pitch angle (theta) of the aircraft.

- **--uBody=***units\_per\_sec*

  Specify the initial velocity along the body X axis.

- **--vBody=***units\_per\_sec*

  Specify the initial velocity along the body Y axis.

- **--wBody=***units\_per\_sec*

  Specify the initial velocity along the body Z axis.

- **--vNorth=***units\_per\_sec*

  Specify the initial velocity along the body North-South axis.

- **--vEast=***units\_per\_sec*

  Specify the initial velocity along the body West-East axis.

- **--vDown=***units\_per\_sec*

  Specify the initial velocity along the body vertical axis.

- **--vc=***knots*

  Set the initial airspeed of the aircraft to *knots* knots.

- **--mach=***number*

  Set the initial airspeed of the aircraft to Mach *number*.

- **--glideslope=***degrees*

  Set the flight path angle to *degrees* degrees. The value can be positive.

- **--roc=***fpm*

  Set the initial rate of climb to *fpm* feet per minute. The value can be negative.

### Route/waypoint options

- **--wp=***ID*\[**@***alt*\]

  Enter the waypoint (VOR, NDB, fix) *ID* into the autopilot. The optional part **@***alt* can be used to specify the altitude at which *ID* should be crossed.

- **--flight-plan=***file*

  Read a flight plan from *file*.

### Avionics options

- **--com1=***frequency*

  Set the COM1 frequency to *frequency* MHz.

- **--com2=***frequency*

  Set the COM2 frequency to *frequency* MHz.

- **--nav1=**\[*radial***:**\]*frequency*

  Set the NAV1 frequency to *frequency* MHz. You can optionally specify a radial by prefixing the frequency with the heading and a colon.

- **--nav2=**\[*radial***:**\]*frequency*

  Set the NAV2 frequency to *frequency* MHz. You can optionally specify a radial by prefixing the frequency with the heading and a colon.

- **--adf1=**\[*rotation***:**\]*frequency*, **--adf=**\[*rotation***:**\]*frequency*

  Set the ADF1 frequency to *frequency* kHz. You can optionally specify the rotation angle of its compass card by prefixing the frequency with the angle and a colon. **The --adf option is deprecated.**

- **--adf2=**\[*rotation***:**\]*frequency*

  Set the ADF2 frequency to *frequency* kHz. You can optionally specify the rotation angle of its compass card by prefixing the frequency with the angle and a colon.

- **--dme=nav1**\|**nav2**\|*frequency*

  Slave the automatic direction finder to the NAV1/NAV2 radio or set its internal frequency to *frequency*.

### Environment options

- **--metar=***METAR*

  Simulate the weather conditions described by the METAR string *METAR*. This option implies **--disable-real-weather-fetch**.

- **--enable-real-weather-fetch**, **--disable-real-weather-fetch**

  Enable/disable METAR-based real weather fetching. This feature requires an active Internet connection.

- **--enable-clouds**, **--disable-clouds**

  Enable/disable 2D (flat) cloud layers.

- **--enable-clouds3d**, **--disable-clouds3d**

  Enable/disable 3D (volumetric) cloud layers.

- **--visibility=***meters*

  Set the initial visibility to *meters* meters.

- **--visibility-miles=***miles*

  Set the initial visibility to *miles* miles.

- **--wind=***dir*\[**:***maxdir*\]**@***speed*\[**:***gust*\]

  Specify the direction the wind blows from (*dir*) and its speed (*speed* knots). If the wind is not meant to blow from a fixed direction, but rather from a range of directions, specify the range as *dir***:***maxdir*, where *dir* and *maxdir* are the minimum and maximum angles in degrees. If you want the simulator to model wind gusts as well, set *gust* to their maximum intensity in knots.

- **--random-wind**

  Randomize the direction and speed of the wind.

- **--turbulence=***intensity*

  Set the turbulence intensity to *intensity*. The intensity can range from **0.0** (calm) to **1.0** (severe).

- **--ceiling=***ft\_asl*\[**:***thickness\_ft*\]

  Create an overcast ceiling at a height of *ft\_asl* feet above the mean sea level. You can optionally specify a thickness by appending a colon (**:**) and the desired thickness in feet; if you omit it, the simulator will default to 2000 ft.

### Network options

- **--callsign=***value*

  Set the multiplayer callsign to *value*. The callsign must be at most ten characters long and must contain only numbers, letters of the English alphabet, dashes (**-**) and underscores (**\_**); longer callsigns are truncated, and characters not matching those listed above are replaced with dashes.

- **--multiplay=**{**in**\|**out**}**,***hz***,***address***,***port*

  Specify the multiplayer communication settings.

  The first field specifies whether the settings apply to inbound (**in**) or outbound (**out**) communications. The second field (*hz*) specifies the frequency (in Hz, times per second) at which data should be sent. The third field (*address*) must be set to the IP address of the network interface that FlightGear should use to send/receive data, or left blank to let the simulator use all available interfaces. The fourth field (*port*) should be set to the port to use (usually **5000**).

- **--proxy=**\[*username***:***password***@**\]*host***:***port*

  Specify the proxy server and port to use. The username and password are optional; if they are present, they should be given as MD5 hashes.

  This option is only useful if **--real-weather-fetch** is enabled.

- **--httpd=**\[*address***:**\]*port*

  Enable the Phi interface (HTTP server) on the specified address and port. The address is optional.

- **--telnet=***port*

  Enable the Telnet interface on the specified port.

- **--jpg-httpd=***port*

  Enable the screenshot HTTP server interface on the specified port. **This** **option is deprecated: use the Phi interface instead.**

- **--enable-terrasync**, **--disable-terrasync**

  Enable/disable automatic scenery/object downloads.

- **--terrasync-dir=***directory*

  Set the directory where the downloaded scenery will be stored to *directory*.

- **--enable-fgcom**, **--disable-fgcom**

  Enable/disable the FGCom (voice ATC) integration.

### I/O options

- **--generic=***params*, **--atlas=***params*, **--atcsim=***params*, **--AV400=***params*, **--AV400Sim=***params*, **--AV400WSimA=***params*, **--AV400WSimB=***params*, **--garmin=***params*, **--hla=***params*, **--hla-local=***params*, **--igc=***params*, **--joyclient=***params*, **--jsclient=***params*, **--native-ctrls=***params*, **--native-gui=***params*, **--native-fdm=***params*, **--native=***params*, **--nmea=***params*, **--opengc=***params*, **--props=***params*, **--pve=***params*, **--ray=***params*, **--rul=***params*

  Open a connection to drive external programs or hardware.

  Specify the protocol by using the correct command-line option:

  - •

    **generic**: a predefined communication interface and a preselected communication protocol;

  - •

    **atlas**: the Atlas protocol;

  - •

    **atcsim**: the ATCsim (atc610x) protocol;

  - •

    **AV400**: the Garmin AV400 protocol, required to drive a Garmin 196/296 series GPS;

  - •

    **AV400Sim**: the set of AV400 strings required to drive a Garmin 400-series GPS;

  - •

    **AV400WSimA**, **AV400WSimB**: the set of strings required to drive a Garmin WAAS GPS (where the **A** channel uses a variant of the AVSim400 protocol and the **B** channel communicates with the GPS unit);

  - •

    **garmin**: the Garmin GPS protocol;

  - •

    **hla**, **hla-local**: the HLA protocol, either remote or local;

  - •

    **igc**: the International Glider Commission protocol;

  - •

    **joyclient**: the protocol used by Agwagon joysticks;

  - •

    **native-ctrls**: the FlightGear Native Controls protocol;

  - •

    **native-gui**: the FlightGear Native GUI protocol;

  - •

    **native-fdm**: the FlightGear Native FDM protocol;

  - •

    **native**: the FlightGear Native protocol;

  - •

    **nmea**: the NMEA protocol (used to drive most GPS units);

  - •

    **opengc**: the protocol used by OpenGC, a software used to render high-quality glass cockpit displays for simulated flightdecks;

  - •

    **props**: the interactive property manager protocol;

  - •

    **pve**: the PVE protocol;

  - •

    **ray**: the Ray Woodworth motion chair protocol;

  - •

    **rul**: the RUL protocol.

  The parameters (*params*) must be in the form *medium***,***direction***,***hz***,***medium\_options* where *medium* is the medium used by the protocol (**serial**, **socket**, **file**...), *direction* is the communication direction (**in**, **out** or **bi**), *hz* is the frequency the channel should be processed at (floating point values are accepted) and *medium\_options* are:

  - •

    for serial protocols, *device***,***baud*, where *device* is the device name to be opened and *baud* is the communication baud rate;

  - •

    for socket protocols, *machine***,***port***,***style*, where *machine* is the machine name or the IP address of the server (if the simulator should act as a client) or is left empty (if the simulator should act as a server), *port* is the port to use (or is left empty to ask the operating system to choose an available port) and *style* is **tcp** or **udp**;

  - •

    for file protocols, *filename*, where *filename* is the name of the file data should be written to.

### Debugging options

- **--enable-fpe**

  Abort when a floating-point exception is encountered.

- **--fgviewer**

  View the scenery and the aircraft in a simple model viewer, without loading the entire simulator.

- **--log-level=bulk**\|**debug**\|**info**\|**warn**\|**alert**

  Set the minimum logging level. Log messages having a severity greater than or equal to the specified value are recorded; the others are discarded.

- **--log-class=all**\|**none**\|**ai**\|**environment**\|**flight**\|**general**\|**io**\|**network**\|**sound**\|**terrain**\|...

  Log only events belonging to the specified log classes (**all** logs all events, **none** logs none). Multiple classes can be specified by separating them with commas or pipes, for example: **--log-class=ai,flight**.

- **--log-dir=***dir*

  Save the logs in the directory *dir*. If *dir* is **desktop**, the logs are saved on the Desktop. This option may be given several times, using a different directory each time. Inside the specified directory, the log file will be named *FlightGear\_*YYYY*-*MM*-*DD*\_*num*.log*, where *YYYY-MM-DD* is the current date and *num* is a progressive number starting at **0**.

- **--trace-read=***property*, **--trace-write=***property*

  Trace the reads/writes for a property (print a log message whenever *property* is read from/written to).

- **--developer**

  Enable developer mode.

## EXIT STATUS

**fgfs** exits with **0** if the execution completes successfully, or with another status (usually **1** or **-1**) if an error occurred.

## ENVIRONMENT

- **COMPUTERNAME**

  Specifies the hostname of the system in use. This environment variable is only taken into account on Microsoft Windows operating systems.

- **FG\_AIRCRAFT**

  Specifies the path in which aircraft should be searched for.

- **FG\_LAUNCHER**

  If this environment variable is set and is not **0**, the Qt launcher will be shown. The variable is mainly used on Mac OS X operating systems to avoid the use of wrapper scripts.

- **FG\_ROOT**

  Specifies the root data directory to use.

- **FG\_SCENERY**

  Specifies the scenery directory to use.

- **HTTP\_PROXY**

  Specifies the HTTP proxy to use. Must be in the form **http://host:port/**.

- **LANG**

  Specifies the language to use.

## FILES

- *~/.fgfs*

  The main directory where FlightGear configuration files and data (downloaded aircraft/scenery) are stored.

- *~/.fgfsrc.hostname*, *~/.fgfsrc*

  Configuration files containing command-line options for [**fgfs**(1)](/fgfs/1.md).
