FGCom (before 3.0): Difference between revisions

Jump to navigation Jump to search
m
Small enhancements, will continue tomorrow
m (Small enhancements, will spend some more time on the looks of this article.)
m (Small enhancements, will continue tomorrow)
Line 65: Line 65:
|}
|}
<br>
<br>
===Prequisites===
====Hardware Requirements====
If you are satisfied with the operation and responsetimes of your current FlightGear installation, then you should see no significant difference after adding the FGCom. If your FlightGear installation runs already a little marginal, then you might experience some delays when many new airplane-models etc. must be loaded. This may happen  when starting up at a busy airport. You can monitor/verify such a "short-time overload" in the FlightGear command-window.
For details see the [http://www.flightgear.org/hardwarereq.html common hardware and driver requirements].
Of course you will also need a connection to the internet for this real-time, worldwide voice communication.
====Software requirements====
{| border="1"
|align="center" width="90px" |'''FlightGear''' ||The basic [[FlightGear]] Flight Simulation installation. This must be installed prior to installing FGCom ''(except if installing the Linux "Git complete" version which can install FGCom and FlightGear concurrently)''.
|-
|align="center" |'''Multiplayer'''||[[Howto: Multiplayer|“Multiplayer”]] is not an installable program but an integrated function of FGFS. As the name says, it enables communication of several players via a chat-function (until now per keyboard - now also with this vocal interface: FGCom).
|}
====Nice to have====
{| border="1"
|align="center" width="90px" | '''FGrun'''||This [[FlightGear Launch Control]] (also known as FG Wizard), is a graphical front end to start the FGFS. This makes it very easy to startup the FGFS with all it's possible options. In some newer distributions this is already part of the basic FGFS installation package
|-
|align="center" |'''MPMap'''||[[MPMap]] is a pure browser application based on Google Maps, so it does not need any installation, except a Web-Browser. With MPMap you can watch all Multiuser-planes worldwide on a road-map, satellite picture or a composite of both. It includes most of the airports, navigational aids, and current weather informations. So it can be used for preflight planning, without having the FGFS started or even installed. But it needs a constant connection to the internet - on the other hand you can do your preflight planning anywhere where there is a PC, connected to the internet.
|-
|align="center" |'''Runwayfinder'''||[http://www.runwayfinder.com  This standalone Browser-Application] does present a fantastic Fight-Planning tool, showing similar aspects like the "MPMap" but adds an Aeronatical map. It does not link to FGFS, MPMap or Multiplayer -- and covers only the domestic USA.
|-
|align="center" |'''Atlas'''||[[Atlas]] displays the current position of your airplane on an landscape type of map together with navigational informations. It derives its data direct out of the installed FGFS databases. So you do not need any connections to the internet.
|-
|align="center" |'''Festival'''||[http://www.flightgear.org/Docs/getstart/getstartch5.html#x10-1080005.7 Festival] is a TTS (Text To Speech) system that can convert all in the FGFS displayed written text (ATC, Chat, etc.) into speech and put it on your loudspeakers.
|}
===Installing FGCom===
===Installing FGCom===
====Install on Linux====
====Install on Linux====
For Linux-Systems there are 3 ways to install:
For Linux-Systems there are three ways to install:


'''1) Downloading from the “Distributor” (Debian, Ubuntu, Red Hat, Suse, etc.).'''  
# '''Downloading from the “Distributor” (Debian, Ubuntu, Red Hat, Suse, etc.).'''  
*'''Advantage:''' This is the easiest way and ensures that maintenance and services for this package and all concurrencies to it are provided automatically for a reasonable time-frame.
#* '''Advantage:''' This is the easiest way and ensures that maintenance and services for this package and all concurrencies to it are provided automatically for a reasonable time-frame.
*'''Disadvantage:''' The availability of those packages is usually very late and most Distributors do not cover all FGFS-features. To our knowledge none of the Distributors has an FGCom package available as of March 2009.
#* '''Disadvantage:''' The availability of those packages is usually very late and most Distributors do not cover all FGFS-features. To our knowledge none of the Distributors has an FGCom package available as of March 2009.
*'''Installation:''' Follow the usual procedures of your distributer on how to install additional packages.
#* '''Installation:''' Follow the usual procedures of your distributer on how to install additional packages.
<br>
# '''Installing a “Git complete”'''  
'''2) Installing a “CVS complete”'''  
#* '''Advantage:''' It is the very easiest form of installation and installs in one step all prerequisite/companion modules (FGFS, FGrun, FGcom, PLIB, OSG, Simgear, AT). Also it can be added and removed from the system without disturbing the rest of the system (Libraries, Menus, Structures, etc.). It was tested on several Ubuntu and Debian systems.
*'''Advantage:''' It is the very easiest form of installation and installs in one step all prerequisite/companion modules (FGFS, FGrun, FGcom, PLIB, OSG, Simgear, AT). Also it can be added and removed from the system without disturbing the rest of the system (Libraries, Menus, Structures, etc.). It was tested on several Ubuntu and Debian systems.
#* '''Disadvantage:''' No automated maintenance available. The handling is a little different from the standard Menu-driven practice.
*'''Disadvantage:''' No automated maintenance available. The handling is a little different from the standard Menu-driven practice.
#* '''Installation:''' [[Scripted Compilation on Linux Debian/Ubuntu]]
*'''Installation:'''   [[Scripted Compilation on Linux Debian/Ubuntu]]
# '''Compiling it locally:'''
<br>
#* '''Advantage:''' After a successful installation it is integrated into the system like a package from the distributor.
'''3) Compiling it locally: ''' http://code.google.com/p/fgcomgui/wiki/Linux_Installation
#* '''Disadvantage:''' No automated maintenance available. Also the user should have some basic knowledge of his system and its devices.
*'''Advantage:''' After a successful installation it is integrated into the system like a package from the distributor.
#* '''Installation:''' [http://code.google.com/p/fgcomgui/wiki/Linux_Installation instructions]
*'''Disadvantage:''' No automated maintenance available. Also the user should have some basic knowledge of his system and it's devices.
*'''Installation:''' See the Instruction on: http://code.google.com/p/fgcomgui/wiki/Linux_Installation
<br>
'''Then continue with testing on: ''' [[FGCOM Testing]]
<br>


====Install on Windows====
Then continue with testing on [[FGCOM Testing]].
Please use the Windows-Installation description on [[FGCOM for Windows]].


<br>
====Install on Mac====
====Install on Mac====
You can download the "MAC OSX Binary" from the FGFS download-center ( http://www.flightgear.org/Downloads/binary.shtml#mac ). The current version of the code does contain the FGCOM.  
You can download the "MAC OSX Binary" from the [http://www.flightgear.org/Downloads/binary.shtml#mac FlightGear download-center]. The current version of the code does contain the FGCom.  


But '''you do need OS X 10.5''' as prerequisite. With lower versions you will end up with a generic "bus error" message!
But '''you do need OS X 10.5''' as prerequisite. With lower versions you will end up with a generic "bus error" message!


<br>
====Install on Windows====
Please use the Windows installation description, available through [[FGCOM for Windows]].
 
===Testing===
During testing we will test/adjust:
# the basic FGCom functions without FlightGear
# FGCom together with FlightGear
# the microphone and loudspeaker system
 
For these tests please refer to [[FGCOM Testing]].
 
===Functional test & user briefing===
Experiences pointed out, that the cooperation between FGCom and FlightGear works more reliable, if FlightGear is started first. So we will start with setting up a flight-test-environment:
 
====Start FlightGear====
We suggest to use [[FGRun]] to define required and/or proposed settings, in order to avoid typo-errors etc. If you keep the “Show command line” active (compare item 3 following), you also get the correct writing for all the command-options (in case you later want to start from a command-line and/or out of a script). In the following we will just point out those commands which are significant for FGCom-operation:
 
If you don't have an icon available to start FGrun, then start FlightGear manually:
 
# Start a [[Command line|command-window]]
# Change into the directory in which FGFS was installed
# Execute the following command or something similar
{|border="1"
||Linux
||fgrun
|-
||Linux Git:
||cd ~/fgfs<br>sh ./run_fgrun.sh
|-
||Mac||
|-
||Windows||C:<br>cd 'C:\Program Files\Flightgear\win32'<br>fgrun.exe
|}
 
Wait for the program window to start and then define:
 
# Start by '''choosing an airplane'''. For this first try we suggest the [[Cessna C172]]P, so we have a common understanding in the following. Also be aware of some airplane-designers reassigning keyboard-keys (e.g. the “space-bar”), thus you may not have the PTT-key (“Push To Talk”) available. See [[FGCOM#Tips and Tricks]].<br>→ Click "Next".
# As '''starting place''' please define the [[airport]] KPAO (Palo Alto) runway 13, so we all see the same messages in the following reports. A second reason for KPAO is of course that KPAO comes already with the basic scenery-package, and thus is available for everybody.<br>→ Click "Next".[[Image:FGrun_base.jpg|thumb|Basic & multiplayer options]]
# Define the '''Multiplayer options:''' (see [[Howto: Multiplayer]] for details).
#* “AI models” must be activated in order to see all traffic
#* “Multiplayer” must be activated
#* type “'''mpserverXX.flightgear.org'''” into the field “Hostname:”, replace “XX” with the server number nearest you - select it in http://pigeond.net/flightgear/mpstatus/. Actually it does not matter which server you take (as long as it is online and not as overcrowded as mpserver02) - you might try which server gives you the best response-times.
#* Insert your “Callsign:” (max. 7 characters)
#* define the “in” and “out” ports both with the standard “5000”
#* With "Load/Save as" you may build up yourself a library of settings for different airports.<br>→ Click "Advanced".[[Image:FGrun_IP.jpg|thumb|Advanced: Initial Position]]
# In the “'''Advanced Options'''” check the following sections (click/select them in the left column):
#* General: Those settings were defined before. Check “Control”, if needed select your input device (Joystick, Keyboard, or Mouse).
#* Features: “AI Traffic” should be activated already
#* Initial Position: You may define here an unique “starting/parking” position outside a runway. Thus you could avoid starting on top of another player, because most of them pile up at the end of a runway. You can look up a position in the MPMap: ''(see next item)''
#** ''Be aware that any data defined here override already predefined data (e.g. also an airport and runway). So '''do not forget''' to change/delete the here defined positions if some time you want to start from another airport.'' Of course you may save/reload settings for different airports, see "Load/save as" on the main window.[[image:MPmap.jpg|thumb|Preflight]]
#Open the '''[http://mpmap01.flightgear.org MPMap]'''
#*if the control-panel is not visible click onto "FGMap | mpserver01:5000 | pilots: 7”
#*click on “nav”
#*disable all options except “apt code”
#*type “KPAO” into the filed “Navaids lookup”
#*hit ENTER or click onto the reading-glass symbol
#*click onto the appearing line “Airport KPAO Palo Alto Arpt Of Santa Clara Co”
#*now you could/should support your preflight planning by clicking onto the wedge in the upper right corner after the airport name and then analyze all data given under “info”, “atc”, metar”, and “links”
#*then zoom into the airport
#*set the mouse over the wanted “Parking lot” and read that position in the upper right corner of the screen
#*type those long/lat values into the field below and also the wanted heading of the plane while parking[[Image:FGrun_net.jpg|thumb|Preflight]]
# '''Network:''' Those data you have already predefined on the Base-Page. But in case you have network-problems (may be due to many PC's on a home-network with even more LAN-cards) you may specify here your actual IP-Adress.
#* WARNING: When saving these settings and reloading them again, FGRun might replace the given IP-Nr. by the PC-name. As of March 2009 you then have to replace that again with the IP-Nr. So use it only if you have to - first try it by adding nothing between the ",,". Keep it as "in,10,,5000".
#* If you need to '''define the unique IP-Address''', open a [[Command line|command-window]] and type
{|border="1"
|width="100"|OS
|width="75"|'''to type'''
|width="40"|Cap. ||returned values
|-
||Linux ||ifconfig ||eth0 ||
Link encap:Ethernet  HWaddr 00:1d:92:80:a6:ab
<br>inet addr:'''192.168.178.23'''  Bcast:192.168.178.255  Mask:255.255.255.0
|-
||Windows||ipconfig /all ||et ||
Physikalische Adresse . . . . . . : 00-16-E6-40-AB-BF
<br>DHCP aktiviert. . . . . . . . . . : Ja
<br>Autokonfiguration aktiviert . . . : Ja
<br>IP-Adresse. . . . . . . . . . . . : '''192.168.178.20'''
<br>Subnetzmaske. . . . . . . . . . . : 255.255.255.0
<br>IP-Adresse. . . . . . . . . . . . : fe80::216:e6ff:fe40:abbf%4
|}
The  '''192.168.178.23''' (or '''20''') is the number you would have to input between the two commas. Be very careful and double-check that you do not mistype “.” and “,”!!
 
'''6) Input/Output:'''
{|
|+
|-
|width=420|[[image:FGrun_IO.jpg|thumb|left|400px|Preflight]]
|You do need a "generic" line as shown, because '''this defines the interface between FGFS and FGCom'''.
<br><br><br>
To input a new line: Start by selecting “generic” in the field “Protocol”. Then hit “New” and define the rest as shown.<br><br>
Editing an existing line: Start by clicking onto the existing one, then change as required.<br><br>
Deleting an existing Line: Click onto the line to be deleted, then hit "Delete"
 
|}
 
'''7) Avionics:''' let's define:
{|
|+
|-
|width="50"|
|width="60"|Nav1:
|width="100"|114.10 ||San Jose VOR
|-
| ||Nav2: || 115.80 ||SF  VOR
|-
| ||ADF: || 379 || Brijj, beacon at SF
|}
and activate: DME  to Nav1<br><br>
There is no field to input COM-radios, but remember them for setting them later manually:
{|
|+
|-
|width="50"|
|width="60" |Com1
|width="100" |118.60 ||Paolo Alto
|-
| ||Com2 || 120.50 || San Francisco
|}
 
'''8) Properties:'''
Here you can define any presetting for any values in the FGFS.<br>see e.g.: FGFS-menu-bar --> File --> “Browse Internal Properties”
{|
|+
|-
|width=520|[[image:FGrun_prop.jpg|thumb|left|500px|Preflight]]
|
e.g. I personally do not want the plane to start rolling without me telling it to. So I set the parking break as default at startup.
<br><br>Input a new line: Just hit “New” and type your string.
<br><br>Edit a line: Be sure first to click onto an existing item and then edit this “Property”
<br><br>Delete a line: Click onto the line to be deleted then hit "Delete"
|}
Hit “OK” → “Run” and watch the FGFS starting. If screen-place allows you may want to pull the shown "FGFS Report-Window" to the side and watch how busy your PC is while loading the other multi-player models.<br>
 
====Start the FGCom====
Open a [[Command line|command-window]] and change into the directory in which FGCom was installed (probably the same as the FGFS) and start the FGCom. Do not use any other options than the server address “-Sfgcom.flightgear.org.uk”:
{|border="1"
|+
|-
|width="150"|for linux CVS e.g.:
|width="250"|cd ~/fgfs<br>sh ./run_fgcom.sh
||for this “CVS complete” you do not need to specify the server address, because it is embedded in the script-file.
|-
||for Std. Linux e.g.: ||fgcom -Sfgcom.flightgear.org.uk ||"-Sfgcom..." with capital "S"
|-
||for Windows e.g.: ||cd 'C:\Program Files\Flightgear\win32'<br>fgcom.exe -Sfgcom.flightgear.org.uk ||"-Sfgcom..." with capital "S"
|-
||for Mac: || ||
|}
For the following test position this command-window somewhere, where you can monitor it throughout the test.
 
The first response should be:
  /fgcom - a communication radio based on VoIP with IAX/Asterisk
  (c)2007 by H. Wirtz <wirtz@dfn.de>
  Version 1.2.2 build 206M
  Using iaxclient library Version SVN 206M
 
  Successfully parsed command-line options.
  Reading list of airports...done.
  Initializing IAX client as guest:xxxxxxxxxxx@fgcom.flightgear.org.uk
If your printout up to that line is different go back to chapter [[FGCOM#Test the basic function|Test the basic function]]
 
{|
|+
|-
|width="300"| ||
|-
|1) If, due to a prior flight, COM1 was set to anything else but 118.600 (e.g. to 119.650) you will see the following 2 lines added to the initialization of the FGCom-window: ||
|-
|
Selected frequency: 119.650
Call rejected by remote
|
Instead of  “119.650” there will be shown the last used frequency. In this case the source of the nearest ATC-Freq. 119.650 is more than 50km away from your actual position of the airplane, so FGCom rejects a connection to it. If the last frequency used would have been within 50 km you get an indication very similar to the next item.
|-
|2) Switch COM1 to 118.60 (needed at Palo Alto):
|-
|
Selected frequency: 118.600
Hanging up call 0
Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 0.6 km)
Call 0 accepted
Call 0 answered
Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 0.6 km)
|This last line will be repeated according the to time span you defined in the “Input/Output” command “--generic=socket,in,'''10''',,5500,tcp”, you may change that value later according to your preferences.
|-
|<br>3) Press your PTT (PushToTalk on space-bar and joystick, as available):
|-
|
[SPEAK] unmute mic, mute speaker
[LISTEN] mute mic, unmute speaker
[SPEAK] unmute mic, mute speaker
[LISTEN] mute mic, unmute speaker
|Only in between “SPEAK” and “LISTEN” you are able to talk to others.
|-
|<br>Now lets set/verify the other Radios:
*COM2 = 120.50 San Francisco
*NAV1  = 114.10 San Jose
*NAV2  = 115.80 San Francisco
4) Pressing Upper+Space will switch to the next radio: '''NAV1'''
|-
|
Radio-Select: NAV1
Selected frequency: 114.100
Hanging up call 0
Call rejected by remote
[LISTEN] mute mic, unmute speaker
|Compare this to the NAV2 indication 2 steps later: something is wrong – and it wasn't your fault: Although this NAV is valid (see ...FGFS/data/Airports/apt.dat.gz), it is missing in the FGCom listing .../FGCom/positions.txt. I encountered this problem several times, as well for Airports as also for VOR's. If this happens with your most beloved airport you can add those missing data with a text-editor. But before changing be sure to save the original data somewhere - just in case!
|-
|<br>5) Pressing Upper+Space once more switches to '''COM2'''
|-
|
Radio-Select: COM2
Selected frequency: 120.500
Airport San Francisco Intl (KSFO TWR at 120.500 MHz) is in range (29.1 km)
[LISTEN] mute mic, unmute speaker
Call 0 accepted
Call 0 answered
|That looks OK: San Francisco is about 29 km away<br><br>watch the “km” instead of miles!<br>'''10 km''' = '''6.2137 mi'''
|-
|<br>6) Pressing Upper+Space once more switches to '''NAV2'''
|-
|
Radio-Select: NAV2
Selected frequency: 115.800
Hanging up call 0
Airport SAN FRANCISCO VOR-DME (SFO VOR at 115.800 MHz) is in range (28.5 km)
Call 0 accepted
Call 0 answered
[LISTEN] mute mic, unmute speaker
|And Yes: The SF VOR is just a little closer than the airport(center)
|-
|<br>7) Pressing Upper+Space once more brings back '''COM1''':
|-
|
Radio-Select: COM1
Selected frequency: 118.600
Hanging up call 0
Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 0.6 km)
Call 0 accepted
Call 0 answered
[LISTEN] mute mic, unmute speaker
|-
|<br>8) Lets us start and continue flying in the direction about 130°:
|-
|
Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 0.4 km)
Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 0.2 km)
Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 0.7 km)
Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 1.3 km)
Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 1.9 km)
Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 2.4 km)
|notice that you first come closer (to the center of the airport) and after that getting away
|-
|<br>9) Let's switch to '''COM2''' (San Francisco) and watch:
|-
|
Radio-Select: COM2
Selected frequency: 120.500
Airport San Francisco Intl (KSFO TWR at 120.500 MHz) is in range (37.8 km)
Call 0 accepted
Call 0 answered
[LISTEN] mute mic, unmute speaker
Airport San Francisco Intl (KSFO TWR at 120.500 MHz) is in range (38.6 km)
Airport San Francisco Intl (KSFO TWR at 120.500 MHz) is in range (39.5 km)
..
Airport San Francisco Intl (KSFO TWR at 120.500 MHz) is in range (49.7 km)
Hanging up call 0
Radio-Select: NAV2
Selected frequency: 115.800
Call rejected by remote
[LISTEN] mute mic, unmute speaker
|That means: at about 50KM we are getting out of range and thus the on COM2 active SF getts terminated. Notice that also the inactive NAV2 gets terminated, because it exceeded the allowable range at about the same time!
|}
10) You could turn now and watch the opposite: At about the same distance those two will become active again (automatically, if you did not change the settings).
<br><br>
If you got here without any (technical) problems your FGCom is fully functional. Have fun when using it.
 
===Testing===
===Testing===
During testing
During testing

Navigation menu