Troubleshooting problems: Difference between revisions

From FlightGear wiki
Jump to navigation Jump to search
m (→‎Related: minor edit)
(moved section to "Requsting Techincal Help")
Line 3: Line 3:
'''If you are having problems getting [[FlightGear]] to work for you, this page is dedicated to helping you.'''
'''If you are having problems getting [[FlightGear]] to work for you, this page is dedicated to helping you.'''


* Step 1 - Try to Solve the Problem Yourself Using The Resources Below
'''* First - Try to solve the problem using the resources on this page'''
** If you are having a problem with software crashes, please read [[System Crashes]]
** If you are having a problem with software crashes, please read [[System Crashes]]
** If you are having problems with video, please check the list of [[Problematic Video Cards]] known to have poor OpenGL support which may not work with FlightGear.  Also check out [[Hardware Recommendations]] for information about video cards and other hardware that is compatible with FlightGear  
** If you are having problems with video, please check the list of [[Problematic Video Cards]]
** Check out [[Hardware Recommendations]] for more information about video cards and other hardware that works with FlightGear  


* Step 2 - If You Are Unable to Solve the Problem Yourself, see [[Requesting Technical Help]]
'''* Request technical help from volunteers in the FlightGear community'''
** Only after trying the suggestions on this page first, try [[Requesting Technical Help]]




You need to realize that, in order for other people to be able to help you sorting out any FlightGear related problems, you need to provide certain information about your platform and the nature of the problem you are encountering. This is due to the fact that we don't have access to your machine and thus cannot see what you are (or were) doing, so you need to be our eyes and ears. Also, it is important that you try not to mix up different symptoms that may not necessarily be related with each other.


Even if some of the information we ask for is not always necessarily required in order to fix a particular issue, it can tremendously simplify and shorten the troubleshooting process, for example by allowing us to exclude certain problem sources. So, if at all possible please try to comply with our requests, if anything is unclear or you don't know how to obtain certain information please ask for clarification rather than ignoring a particular request.
= Common FlightGear Problems and Solutions =
 
If you are facing issues while interacting with the community, please see: http://catb.org/~esr/faqs/smart-questions.html
 
 
= Making proper issue reports =
'''In general, you should always try to provide the following information in your requests/reports:'''
 
 
== OpenGL related ==
* Do you have a non NVIDIA/ATI graphics card (i.e. Intel)
* Are you currently able to run other OpenGL (non-DirectX) 3D-software with your current system configuration using hardware acceleration?
* Have you previously run other OpenGL software on your current system?
* What's the average framerate you get when running FlightGear in a location without scenery?
 
On *nix systems:
* the output from running glxgears
* the output from running glxinfo
 
'''Note:''' While you should normally get to see something like "''direct rendering: Yes''" indicating working hardware acceleration, this doesn't have to be the case if you are running an OpenGL X server such as Xgl-still hardware acceleration may be working. However, it is important to realize that running OpenGL applications on top of current Xgl implementations may rather '''severely''' affect overall application performance, in fact FlightGear may be slowed down by a factor of 2.5 or even more, in addition more complex OpenGL features (such as multi-texturing and shaders) may not work as expected (e.g. the latest shader-based clouds in CVS/HEAD are unlikely to work with current Xgl implementations).
So if you are using an GL-accelerated X-server (i.e. to run Compiz/Fusion) under Linux and are experiencing performance issues or other graphics related problems, please verify if these problems persist after having disabled Xgl support, this can usually be accomplished using xgl-switch --disable
 
For Linux, there's now an OpenGL benchmarking test suite available [http://www.phoronix-test-suite.com/ here] ([http://www.phoronix-test-suite.com/download.php?file=phoronix-test-suite-1.4.0 download]) that provides useful information about your system's degree of OpenGL support, if you are unsure about your system's OpenGL support and if you are experiencing performance issues in FlightGear, you may want to try running this test suite first in order to ensure that OpenGL is properly set up on your system.
 
 
== General Hardware Info ==
 
* CPU
* RAM
* SOUND CARD
* GRAPHICS CARD
** Manufacturer
** Type/Model
** texture memory size
 
 
== Software Specs ==
 
* OS (Version, Kernel, Servicepacks etc)
* any other software that may be running while FlightGear is running (i.e. antivirus tools)
* driver versions for relevant hardware (graphics, sound, input hardware)
 
 
== Input Hardware ==
(This is only likely to be required if FlightGear itself seems to be working properly otherwise)
 
* KEYBOARD (language/country encoding)
* MOUSE
* JOYSTICK
* YOKE
* PEDALS
 
 
== FlightGear related Info ==
 
=== Basic Info ===
* version of FlightGear you are trying to get to work for you
* where you obtained it from (URL)
* in what format you obtained it (executables/binaries vs. source code)
* if you built it yourself, how you did do that (compiler,flags etc)
* how and where you installed FlightGear (file system location)
* how you are starting FlightGear (GUI frontend vs. shell/console)
* if you have previously only tried starting it via GUI frontend, the output of trying to run it from a console
* startup parameters you use, and information whether using the defaults (i.e. no arguments at all), works for you or not
* runtime settings you use
* any console messages (warnings and errors) you may see (preferably the complete redirected output from STDERR)
* whether the same machine/OS (unmodified) has previously been used to run FlightGear successfully, if so what version of FlightGear
* if FlightGear works properly using the default settings
 
 
=== Sound Issues ===
* type, manufacturer, make/model of your sound card/system
* driver version
* whether you are able to use other sound applications (i.e.  media players such as winamp)
* settings in sound dialog (must be enabled and set to sufficient volume)
* under Linux:if you are able to use other OpenAL programs
* whether any other audio software might be running on your system
 
 
=== In Flight Issues ===
If you experience any problems during flight, please save the active flight and make the saved file available for further investigation (i.e. in order to post it to a forum or send it to a [[mailing list]])
 
'''If you are facing scenery-related problems (i.e. no scenery visible), please also try to provide the following information:'''
 
* whether FlightGear's default airport KSFO (San Francisco) works for you or not
* whether you can see any scenery (i.e. runways) from the cockpit view
* whether you can see any scenery (i.e. runways) from non-cockpit views (i.e. outside view: using the v/V key to cycle through all views)
* what daytime settings you are using and whether changing this setting has any effect
* what environmental settings you are using (clouds, visibility)
* which tiles you downloaded, and from where-including the size of each file or its MD5 sum
* whether you are able to open the downloaded scenery tiles using an archiver such as WinZip, PowerZIP, IzArc - and if you get to see any warnings or errors
* which areas/airports specifically are causing trouble, and what you are (not) seeing (i.e. terrain/water?)
* how exactly you installed the scenery tiles, did you extract the scenery tiles properly?
* the location of your FlightGear base package (data) folder
* whether you made any modifications to your base package, if so: if using a fresh copy of the base package results in the same problem
* whether you customized any user-specific FlightGear settings, if so: whether deleting/renaming your fgfs home folder, still results in the same problem
* if you are using the FG_ROOT and FG_SCENERY variables, their contents
* the contents of the folder under $FG_ROOT/Terrain
* ICAO code and runway of airport, as well as your actual longitude/latitude retrieved from the property browser: /sim/position/longitude-deg & /sim/position/latitude-deg
* the value of /sim/rendering/draw-otw using the property browser (needs to be true)
* any screenshots depicting the problem
 
 
=== Input Hardware related Issues ===
'''If you are facing problems related to your input hardware, please also try to provide the following information:'''
 
* the nature of your problem
* whether the symptoms appear to be in any way specific to the aircraft you are using
* what input hardware you are trying to use with FlightGear
* whether the corresponding hardware works under the same OS with other applications
* how the input hardware is connected to your machine
* if there is any other input hardware connected to your machine
* if the symptoms disappear when you disconnect either single components of your input hardware or all of it together
 
TODO: we need to evaluate the forum and mailing discussions of the last 2-3 months in order to determine which issues were the most frequently reported ones (i.e. FreeGLUT, RenderTexture,3D Clouds,non calibrated hardware etc), so that we can summarize these issues here, and possibly even directly provide solutions later on.
 
 
== Troubleshooting Segmentation Faults ==
If you experience segmentation faults while trying to start FlightGear, please try to provide additional information (using default settings & configuration) such as:
* full OSG debug info (by setting the environment variable OSG_NOTIFY_LEVEL=debug)
* full fgfs startup info using --log-level=bulk
* backtrace obtained via gdb
* system call trace obtained via strace
 
This sort of info will help to determine whether the problem is actually caused by FlightGear (or one of its dependencies) or by local, system-specific issues.
 
 
= Solutions =
 
==Common errors and solution==
{{main article|Howto: Get rid of common errors}}
{{main article|Howto: Get rid of common errors}}



Revision as of 19:28, 4 December 2009

Cleanup.png This article may require cleanup to meet the quality standards of the wiki. Please improve this article if you can.

If you are having problems getting FlightGear to work for you, this page is dedicated to helping you.

* First - Try to solve the problem using the resources on this page

* Request technical help from volunteers in the FlightGear community


Common FlightGear Problems and Solutions

1rightarrow.png See Howto: Get rid of common errors for the main article about this subject.


Slow Framerate with OpenGL Card

a) If you have a card that fully supports OpenGL and FlightGear is still running slow, then there may be a somewhat esoteric fix to your problem.

Change the color depth to match that of your OS's desktop!

b) Identify if your graphic card use software OpenGL support

When Flightgear was launched, it display a message like this in Flighgear launcher's console window: (before you need to enable log in info mode, Flighgear launcher (fgrun.exe) -->button "advanced" in the third window --> tab "debuuging", select info for "log level" --> click button OK )

Finished command line arguments Initializing splash screen GeForce4 MX 440 with AGP8X/AGP/SSE2/forceSW Max texture size = 2048 Depth buffer bits = 16 Loading Airport Database ... Data file version = 810

Warning! If you see anything like "ForceSW" or "Software Emulation", it was a bad thing for you because you do not have HARDWARE OpenGL support, or your drivers are not configured properly. If you have SOFTWARE OpenGL support, your CPU work a lot to display the graphics. Source : http://ocw.mit.edu/ans7870/6/6.370/contestants/software.htm#issues


Slow Framerate with Graphic Card with Nvidia chip

a) First, Identify if your graphic card use software OpenGL support

When Flightgear was launched, it display a message like this in Flighgear launcher's console window: (before you need to enable log in info mode, Flighgear launcher (fgrun.exe) -->button "advanced" in the third window --> tab "debuuging", select info for "log level" --> click button OK )

Finished command line arguments Initializing splash screen GeForce4 MX 440 with AGP8X/AGP/SSE2/forceSW Max texture size = 2048 Depth buffer bits = 16 Loading Airport Database ... Data file version = 810

Warning! If you see anything like "ForceSW" or "Software Emulation", it was a bad thing for you because you do not have HARDWARE OpenGL support, or your drivers are not configured properly. If you have SOFTWARE OpenGL support, your CPU work a lot to display the graphics. Source : http://ocw.mit.edu/ans7870/6/6.370/contestants/software.htm#issues

b) Second, use this workaround for Windows 2000/XP to correct this problem.

I have a nvidia Geforce 4 MX440-AGP 8x and this workaround correct the slow framerate with my graphic card. The detailed problem analysis is here : http://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg14993.html This workaround is to downgrade your nvdia driver to 45.33 or 4.5.3.3. You can find it here : http://www.nvidia.com/object/pc_winxp-2k_45.33.html This 45.33 driver supports over five generations of NVIDIA GPUs - from TNT to GeForce FX(Geforce Fx = Geforce5).

Don't use driver upper than 45.33, because in the upper version, there is a software OpenGL support. It was not the GPU (nvidia chip) that work to support the software OpenGL features but your CPU. And with this configuration, your CPU is used at 98% by fgfs.exe or the flightgear binary.

Note : I do tests with Graphic card with Nvidia Geforce 6200-AGP8X-256MB (NV44A2) and with 7.7.7.2 and 9.4.2.4 nvidia drivers on Windows 2000 SP4 (CPU : Celeron D 2,66Ghz, RAM : 512 MB). I made tests with Flightgear 0.9.10 and 1.0.0, I have only 1 fps with these 2 drivers and 2 flighgear versions. This card is not yet powerful for flightgear and there is no workaround for it.


Corrupt Textures on ATi Cards

Several users have reported corrupted textures running FlightGear on ATi graphics cards. The ATi drivers are the subject of intensive improvement, but can still be problematic for some users. Try this:

Start FG in the normal way. Select 'View' drop-down menu (one from the left- you may not be able to read the labels!) Select 'Rendering Options' (fourth choice) Uncheck 'Use Point Sprites for Runway Lights' (fourth check-box)

When you come to quit FG, do so by menu: File...Exit, rather than closing the window to save this setting.

If you can't read the Menu titles (because of corrupted graphics) you can manually edit the config files $FG_HOME/autosave.xml and/or $FG_ROOT/preferences.xml before even starting FlightGear. The file autosave.xml is created the first time FlightGear is closed and settings in it override the defaults in $FG_ROOT/preferences.xml. Use your operating system's search facilities to find the files if you don't know where to look for them. Close Flightgear and change the line

<point-sprites type="bool">true</point-sprites>

to

<point-sprites type="bool">false</point-sprites>

in both files (if you don't have an autosave.xml it is sufficient to make the change in preferences.xml) and start FlighGear again. This is the same as changing the above mentioned option in the rendering dialog but does not require FlightGear running.

Examples of corrupted graphics with an ATI card:

ATI point-sprites corrupted 1.jpg ATI point-sprites corrupted 2.jpg


USB Joystick Fails to Work

FlightGear is designed to recognize automatically any USB joystick that it is aware of (has a configuration on file for it). Configuration for USB joysticks is located in the Inputs folder. For example:

Input/Saitek/X45.xml

The name reported by the joystick through the hardware of your system must match the name specified in the configuration file. If the stick identifies itself as

Saitek Saitek X45 Flight Control Stick

but the configuration file specifies

Saitek X45 USB Flight Stick

Flight Gear will fail to recognize it.

This happens with some frequency. It has been known for the same stick in a manufacturer's line to report different identifier strings. If you encounter a problem getting your usb stick to be recognized by FlightGear, it is helpful to first check to see

  • a configuration file matching the name of your stick exists
  • the configuration joystick name matches the name the stick actually reports to your computer


USB Joystick exhibits permanent offset / requires repeated recalibration

USB Joystick drivers should automatically zero and calibrate the joystick on plugin. Some examples of some types of joystick can be faulty where the fault is exhibited as an offset from the zero position when this process is completed. In Kubuntu this can be fixed for the session by use of the Joystick calibration tool under "Keyboard and Mouse" of "System Settings", or equivalent tools with other distributions, but the problem will recur.

In some cases this may be caused by improper connector seating or other loose connections within the joystick. This can sometimes be remedied by unscrewing the base or other case element to access the circuit board and then reseating the connectors. Also check for faulty solder joints and discrete components bent over onto the circuit board. Before attempting any repair unplug the device and remove any batteries.


Configuring CH Products Under Windows Vista

The CH Products Yoke and Pedals are among the most popular flight sim controls. Flight Gear provides excellent configuration files for both the Yoke and Pedals manufactured by CH. Windows Vista recognizes and configures the USB versions of these products by default. However, it reports them as "Generic Controls." This creates an issue when Flight Gear tries to assign the appropriate controller configuration.

To overcome this you need to edit your Joystick.xml (Filghtgear\Data\Joystick.xml) file to manually assign a configuration file for Flight Gear to use.

Eg:

If you have the Yoke as MS-Windows Controller 0 and Pedals as Controller 1 then you include the following lines:

  <js n="0" include="Input/Joysticks/CH/pro-yoke-usb.xml"/>
  <js n="1" include="Input/Joysticks/CH/pro-pedals-usb.xml"/>


[Enter] does not work for rudder control

First of all: if [0] doesn't work, check if toggling num-lock solves the issue.

Open file $FG_ROOT/keyboard.xml with your preferred Editor. and search for those lines (it's close to the top, around line 40):

     ## uncomment this line to get keycode reports printed to the terminal window
     #setlistener("devices/status/keyboard/event", func(n) debug.dump(n.getValues()));

Read the first one and uncomment the second one. To uncomment it remove the leading "#".
Save the file and run FlightGear as usual but with the log-level set to "alarm" (no need to do anything if it wasn't used/changed before!).
When FlighGear is running press [Enter] and immediately after this, without doing anyting on the keyboard, click on FlightGears log window and you'll see something like this in the last two lines of the log:

{ key: 13, modifier: { meta: 0, shift: 0, alt: 0, super: 0, ctrl: 0, hyper: 0 }, pressed: 1 }
{ key: 13, modifier: { meta: 0, shift: 0, alt: 0, super: 0, ctrl: 0, hyper: 0 }, pressed: 0 }

The first line is for pressing the [Enter]-Key, the second for releasing it. Keep the first number, named "key", in this exaple shown as "13", in mind.

Open file $FG_ROOT/keyboard.xml again and search for "enter". You should find following:

<key n="10">
 <name>Enter</name>
 <desc>Move rudder right</desc>

Now replace the value of key n= with the one you had to keep in mind earlier. Save file and run FlightGear to test it.

If the [Enter] key doesn't work at all for some reason one solution would be to assign the key right hand next to (not the num-block-)[0], if it is not already assigned to something else. Procedure is the same as shown with the [Enter] key.

Last thing to do, in any case, disbable the keycode reports by replacing the "#" which we removed earlier.


Possible pitfalls when modifying base package files

At some point, most users will probably want to modify FlightGear in some way or another. Many interesting modifications can be done by editing base package resources, such as for example aircraft files, instrumentation files, GUI files, Nasal scripts etc.

However, once you do modify the base package, it is important to keep track of your changes and to make sure that files are modified properly. Here are some things to watch out for:

  • When referencing file names or paths, always make sure that files and paths actually do exist
  • When referencing file names or paths, make sure that they're used properly i.e. watch out for whitespaces, separators and case:
    • On most modern operating systems, filenames and paths are indeed case sensitive, so make sure to watch out for this, as well
  • Also, most modern multi-user operating systems feature support for file permissions, so that files and paths need to have the proper permissions set in order to be accessible
  • Once you start editing XML files, you will want to ensure that your edits are valid and don't corrupt the XML syntax, that is make sure that tags are properly closed - if you are not sure whether your edits were properly done or not, you may want to use a so called "xml validator", there are numerous free/open source tools available to help you validating XML documents, under *nix you could for example simply use "xmllint". Invalid XML files cannot be used by FlightGear anymore (there are also various web-based validator available, where you can simply paste contents or upload files to be checked).
  • Also, while the majority of FlightGear XML files follows the basic PropertyList format, the various individual FlightGear components support different functionality and features, so tags and attributes that may be available and usable in one type of files such as i.e. GUI files are usually not necessarily also available in files for different subsystems/components, as features are so far being individually implemented for each single component rather than globally. So, even if a certain syntax or feature is supported in a different part of FlightGear, it may simply not yet be available in other ones.

Please note that it is easily possible to corrupt your base package simply by modifying files in the wrong way, so that FlightGear may no longer work without getting a fresh base package, thus you may want to keep your modifications separate from the rest of the base package. Or at least consider using a Source Code Management system such as for example svn or git.

If you do encounter problems getting your modifications to work for you, you may want to run FlightGear with an increased log/warning level, so that you get to see more completely which parts of FlightGear could be successfully completed and which ones failed, this can be achieved by using the --log-level=bulk parameter


Related