FGCom (before 3.0): Difference between revisions

Jump to navigation Jump to search
Switch to {{gitorious url}} and {{fgmeta url}} to fix the broken Gitorious links. This required a switch from <div> and <table> tags to <syntaxhighlight>.
(Switch to {{gitorious url}} and {{fgmeta url}} to fix the broken Gitorious links. This required a switch from <div> and <table> tags to <syntaxhighlight>.)
 
(15 intermediate revisions by 7 users not shown)
Line 1: Line 1:
{{cleanup}}
{{historical
| type  = article
| tense  = is
| text  = obsolete
| reason = The new version of FGCom is much more simple to use and a clean documentation is available at [[FGCom 3.0]]
| talk  =
| date  = 1 January 2015
| nocat  =
}}


{{Infobox Software
{{Infobox Software
Line 16: Line 24:
| type                  =  
| type                  =  
| license                = [[GNU General Public License]]
| license                = [[GNU General Public License]]
| website                = http://sourceforge.net/projects/fgcom/
| website                = {{gitorious url|fg|fgcom}}
}}
}}
'''FGCom''' is an addon for [[FlightGear]]. With FGCom (and the infrastructure behind it), FlightGear now has a realtime voice communication system which enriches the FlightGear capabilities, especially for [[Howto: Multiplayer|multiplayer]] events, like:


* Flying in groups, see the [http://www.flightgear.org/forums/viewforum.php?f=10 multiplayer events forum]
'''FGCom''' is an addon for [[FlightGear]]. With FGCom (and the infrastructure behind it), FlightGear has a realtime voice communication system which enriches the FlightGear capabilities, especially for [[Howto: Multiplayer|multiplayer]] events, like:
 
* Flying in groups, see the [http://forum.flightgear.org/viewforum.php?f=10 multiplayer events forum]
** Invite friends to a guided sightseeing tour in your most beloved area or do “Fly In's”
** Invite friends to a guided sightseeing tour in your most beloved area or do “Fly In's”
** Do military training like [[Howto: Air-Air Refueling|“Air-Air-Refuelling”]], “Dog fights”, “Escort flights”, etc.  
** Do military training like [[Howto:Aerial_refueling|“Air-Air-Refuelling”]], “Dog fights”, “Escort flights”, etc.  
* Offering additional services at an airport like [[Air traffic control|ATC]], [[Vehicle|snowplows, pushbacks]], [[FlightGear Race|racing-events]] etc.
* Offering additional services at an airport like [[Air traffic control|ATC]], [[Vehicle|snowplows, pushbacks]], racing-events, etc.
* Have a [[Dual control|real time flighttraining]] (e.g. pilot in Hongkong, teacher in Sydney), do [[Soaring|Glider-towing]], ask for on-line support during flight or just ask somebody flying a plane of interest about specifics.
* Have a [[Dual control|real time flighttraining]] (e.g. pilot in Hongkong, teacher in Sydney), do [[Soaring|Glider-towing]], ask for on-line support during flight or just ask somebody flying a plane of interest about specifics.
* Or just sit in a cockpit in Germany while sightseeing San Francisco in a [[Cessna C172|C172]], voice-chat with a Texan in a plane I dreamed of as a boy ([[Lockheed Constellation|Super Constellation]]) and both getting information from a New Zealand guy (it shall be a wonderful island – but do real people live there? He said: Yes!!).
* Or just sit in a cockpit in Germany while sightseeing San Francisco in a [[Cessna C172|C172]], voice-chat with a Texan in a plane I dreamed of as a boy ([[Lockheed Constellation|Super Constellation]]) and both getting information from a New Zealand guy (it shall be a wonderful island – but do real people live there? He said: Yes!!).
* And much more!
* And much more!


You can even use it in models without radios - just use the standard FlightGear [[menu]] (<tt>Equipment > Radio Settings</tt>).
You can even use it in models without radios - just use the standard FlightGear menu --> Equipment --> Radio Settings).


In the future FGCom surely will extend further and surely will get a “Speech to Text” capability in order to also integrate the text-based automated ATC-routines inside FlightGear, for details see previous discussions summarized at [[Integrating FGCom]], which also has a section on embedded TTS support through flite, which was previously discussed on the devel list by some core developers.
In the future FGCom surely will extend further and surely will get a “Speech to Text” capability in order to also integrate the text-based automated ATC-routines inside FlightGears.


== The Client installation ==
== The Client installation ==
Line 52: Line 61:
|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 its possible options. In some newer distributions this is already part of the basic FGFS installation package.
|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 its 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 information. 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" |'''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 information. 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 (with/or without FlightGear installed!).
|-
|-
|align="center" |'''SkyVector'''||[http://skyvector.com/ SkyVector] is a standalone Browser-Application. It does present a fantastic Fight-Planning tool, showing similar aspects like the "MPMap" - but is based on a an real Aeronatical map ("Sectional"). On it you can graphically plan your routes - see the "Help Video" icon in the Top-Menubar.
|align="center" |'''SkyVector'''||[http://skyvector.com/ SkyVector] is a standalone Browser-Application. It does present a fantastic Fight-Planning tool, showing similar aspects like the "MPMap" - but is based on a an real Aeronatical map ("Sectional"). On it you can graphically plan your routes.
But it does not directly link into FGFS, MPMap or Multiplayer -- and it covers only the domestic USA.
But it does not directly link into FGFS, MPMap or Multiplayer -- and it 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 information. It derives its data direct out of the installed FGFS databases. So you do not need any connections to the Internet.
|align="center" |'''Atlas'''||[[Atlas | Atlas]] displays the current position of your airplane on an landscape type of map together with navigational information. 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 in your loudspeakers.  
|align="center" |'''Festival'''||http://www.flightgear.org/Docs/getstart/getstart.html#QQ2-10-108 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 in your loudspeakers.  
|}
|}


=== Installing FGCom ===
=== Installing FGCom ===
==== Install on Linux ====
==== Install on Linux ====
For Linux-Systems there are various ways to install:
:For Linux-Systems there are various ways to install:
 
# '''"Integrated Installation” to be available with FGFS 3.0 spring 2014''', may be tested with GIT 2.99'''
# '''Scripted Installation''' (recommended)
#* '''Advantage:''' This will be the long expected "integration", i.e. users do not have to care about installing FGCOM manually. And you will be able to switch FGCOM on/off during flight (see http://wiki.flightgear.org/Integrating_FGCom)
 
#* '''Disadvantage:''' This is still in a "Test-mode", so you might have problems when testing
<pre>
#* '''Installation:''' Is done automatically when installing FGFS (starting FGFS 3.0 / GIT 2.99)
# '''Installation of a "Standalone FGCOM"
#* '''Advantage:''' you can use this "Standalone FGCOM" without using FGFS (e.g. when operating OpenRadar)
#* '''Disadvantage:''' There may be only a engineering test version available (as of today) - use that with care!
#* '''Installation:'''You can download the needed "Standalone FGCOM".zip from http://fgcom.flightgear.org/download/.
#*:: and unzip it into a directory of your choice
#*:: then you start fgcom in a terminal like:
::::<syntaxhighlight lang="sh>
cd /home/YourName/fgfs/bin
./fgcom
</syntaxhighlight>
# '''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.
#* '''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 a FGCom-package available as of Oct. 2013.
#* '''Installation:''' Follow the usual procedures of your distributor on how to install additional packages.
# '''Install today’s newst GIT or released version 
#* '''Advantage:''' It is the very easiest form of installation and installs in one step any (or 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 practices.
#* '''Installation:''' use the [[Scripted Compilation on Linux Debian/Ubuntu]]
::{{#tag:syntaxhighlight|
mkdir fgcom
mkdir fgcom
cd fgcom
cd fgcom
wget http://www.gitorious.org/fg/fgmeta/raw/download_and_compile.sh
wget {{fgmeta url|download_and_compile.sh}}
chmod +x ./download_and_compile.sh  
chmod +x ./download_and_compile.sh  
./download_and_compile.sh PLIB FGCOM
./download_and_compile.sh PLIB FGCOM
</pre>
| lang = "sh"
}}
... it will ask 2 x for the root password
... it will ask 2 x for the root password
then it looks like this:
then it looks like this:
<pre>
::<syntaxhighlight lang="sh">
[ 95%] Building CXX object CMakeFiles/fgcom.dir/src/fgcom.cpp.o
[ 95%] Building CXX object CMakeFiles/fgcom.dir/src/fgcom.cpp.o
[ 97%] Building CXX object CMakeFiles/fgcom.dir/src/fgcom_init.cpp.o
[ 97%] Building CXX object CMakeFiles/fgcom.dir/src/fgcom_init.cpp.o
Line 89: Line 118:
-- Installing: /big/home/mherweg/flightgear/fgcom/try/install/fgcom/share/fgcom/positions.txt
-- Installing: /big/home/mherweg/flightgear/fgcom/try/install/fgcom/share/fgcom/positions.txt
-- Installing: /big/home/mherweg/flightgear/fgcom/try/install/fgcom/share/fgcom/special_frequencies.txt
-- Installing: /big/home/mherweg/flightgear/fgcom/try/install/fgcom/share/fgcom/special_frequencies.txt
To start fgfs, run the run_fgfs.sh file
To start terrasync, run the run_terrasync.sh file
To start fgrun, run the run_fgrun.sh file
To start fgcom, run the run_fgcom.sh file
To start fgcom, run the run_fgcom.sh file
To start fgcom GUI, run the run_fgcomgui.sh file
To start fgcom GUI, run the run_fgcomgui.sh file
To start atlas, run the run_atlas.sh file
Usage: ./download_and_compile.sh -h
Usage: ./download_and_compile.sh -h
for help
for help
</pre>
</syntaxhighlight>
 
then you can start fgcom like this:
then you can start fgcom like this:
<pre>
::<syntaxhighlight lang="sh">
./run_fgcom.sh -Sdelta384.server4you.de
./run_fgcom.sh -Sfgcom.flightgear.org
</pre>
</syntaxhighlight>
 
 
 
 
# '''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.
#* '''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.
# '''Installing a “Git 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.
#* '''Disadvantage:''' No automated maintenance available. The handling is a little different from the standard Menu-driven practice.
#* '''Installation:''' [[Scripted Compilation on Linux Debian/Ubuntu]]
# '''Compiling it locally:'''
#* '''Advantage:''' After a successful installation it is integrated into the system like a package from the distributor.
#* '''Disadvantage:''' No automated maintenance available. Also the user should have some basic knowledge of his system and its devices.
#* '''Installation:''' [http://code.google.com/p/fgcomgui/wiki/Linux_Installation instructions]
 
Then continue with testing on [[FGCOM Testing]].


==== Install on Mac ====
==== Install on Mac ====
 
# '''MacFlightGear 1.9.1/2.0.0'''<br />
'''MacFlightGear 1.9.1/2.0.0'''<br />
#* You can download the "MacFlightGear"-Application from the [http://www.flightgear.org/Downloads/binary.shtml#mac FlightGear download-center]. Starting with version 2.0.0 the code does contain the FGCom and works for OSX >= 10.5. (with OSX versions < 10.5 you will end up with a generic "bus error" message).
You can download the "MacFlightGear"-Application from the [http://www.flightgear.org/Downloads/binary.shtml#mac FlightGear download-center]. The current version 2.0.0 of the code does contain the FGCom and works for OSX >= 10.5. (with OSX versions < 10.5 you will end up with a generic "bus error" message).
# '''Installation of a "Standalone FGCOM"
#* '''Advantage:''' you can use this "Standalone FGCOM" without using FGFS (e.g. when operating OpenRadar)
#* '''Disadvantage:''' There may be only a engineering test version available (as of today) - use that with care!
#* '''Installation:'''You can download the needed "Standalone FGCOM".zip from http://fgcom.flightgear.org/download/.


==== Install on Windows ====
==== Install on Windows ====
Please use the Windows installation description, available through [[FGCOM for Windows]].
# '''Please use the Windows installation description'''
#* available through [[FGCOM for Windows]].'''
# '''Installation of a "Standalone FGCOM"
#* '''Advantage:''' you can use this "Standalone FGCOM" without using FGFS (e.g. when operating OpenRadar)
#* '''Disadvantage:''' There may be only a engineering test version available (as of today) - use that with care!
#* '''Installation:'''You can download the needed "Standalone FGCOM".zip from http://fgcom.flightgear.org/download/.


=== 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 ===
To insure that we can differentiate between troubles
* that may be caused by the FGFS
* and those caused by FGCom
we will also describe the FGFS-Start and it's, for this test needed, settings in detail.  


=== 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 FGFS first:
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 ====
==== Start FlightGear ====
{{note|All of this has nothing to do with FGCom until the "--generic" paragraph (which is deprecated, see Talk page) }}
To set all required and/or proposed settings for this first functional test, we suggest to use
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:
*for Windows and Linux [[FGRun]]
*which for MAC-OSX is the integrated "GUI Launcher"
In the following we will just point out those commands which are significant for the FGCom-operation:


If you don't have an icon available to start FGrun, then start FlightGear manually:
If you don't have an icon available to start FGrun, then start it manually:


# Start a [[Command line|command-window]]
# Start a [[Command line|command-window]]
# Change into the directory in which FGFS was installed
# Change into the directory in which FGFS was installed
# Execute the following command or something similar
# Execute the following command or something similar
{|
::{|
! style="background:#efefef" | Linux
! style="background:#efefef" | Linux
|fgrun
|fgrun
|-
|-
! style="background:#efefef" | Linux Git:
|cd ~/fgfs<br />sh ./run_fgrun.sh
|-
! style="background:#efefef" | Windows
! style="background:#efefef" | Windows
|C:<br />cd 'C:\Program Files\Flightgear\win32'<br />fgrun.exe
|C:<br />cd 'C:\Program Files\Flightgear\win32'<br />fgrun.exe
Line 162: Line 173:


Wait for the program window to start and then define:
Wait for the program window to start and then define:
<ol>
<li> 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” which is used as PTT, may activate a "BombDrop" in a Fighter-jet!), thus you may not have the PTT-key (“Push To Talk”) available.  See [[FGCOM#Tips and Tricks]].<br />→ Click "Next".
</li><li> 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".[[File:FGrun_base.jpg|thumb|Basic & multiplayer options]]
</li><li> 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://mpserver15.flightgear.org/mpserverstatus/. 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".[[File:FGrun_IP.jpg|thumb|Advanced: Initial Position]]
</li><li> 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.[[File:MPmap.jpg|thumb|[[MPMap]]]]
</li><li> Open the '''[http://mpmap02.flightgear.org MPMap]'''
* if the control-panel is not visible click onto "FGMap | mpserver02: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”
* now you could/should support your preflight planning by clicking onto the wedge in the upper right corner after the airport name and then analyse 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[[File:FGrun_net.jpg|thumb|Advanced: Network]]
</li><li> '''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


# 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".[[File: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".[[File: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.[[File:MPmap.jpg|thumb|[[MPMap]]]]
# 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[[File:FGrun_net.jpg|thumb|Advanced: Network]]
# '''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
 
{|
! style="background:#efefef" | OS
! style="background:#efefef" | OS
! style="background:#efefef" | to type
! style="background:#efefef" | to type
Line 213: Line 224:
<br />IP-Adresse. . . . . . . . . . . . : fe80::216:e6ff:fe40:abbf%4
<br />IP-Adresse. . . . . . . . . . . . : fe80::216:e6ff:fe40:abbf%4
|}
|}
#* '''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 “,”!![[File:FGrun_IO.jpg|thumb|Advanced: Input/Output]]
:: '''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 “,”!![[File:FGrun_IO.jpg|thumb|Advanced: Input/Output]]
# '''Input/Output:'''  
</li><li> '''Input/Output:'''  
#* You do need a "generic" line as shown, because '''this defines the interface between FlightGear and FGCom'''.
* You do need a "generic" line as shown, because '''this defines the interface between FlightGear and FGCom'''.
#** To input a new line: Start by selecting “generic” in the field “Protocol”. Then hit “New” and define the rest as shown.
** To input a new line: Start by selecting “generic” in the field “Protocol”. Then hit “New” and define the rest as shown.
#** Editing an existing line: Start by clicking onto the existing one, then change as required.
** Editing an existing line: Start by clicking onto the existing one, then change as required.
#** Deleting an existing line: Click onto the line to be deleted, then hit "Delete"
** Deleting an existing line: Click onto the line to be deleted, then hit "Delete"
#* For fgo or the command line add --generic=socket,out,10,localhost,16661,udp,fgcom to the command line options
* For fgo or the command line add --generic=socket,out,10,localhost,16661,udp,fgcom to the command line options
# '''Avionics:''' let us define:
</li><li> '''Avionics:''' let us define:
{|
::{|
! style="background:#efefef" | Nav1:
! style="background:#efefef" | Nav1:
| 114.10  
| 114.10  
Line 234: Line 245:
| Brijj, beacon at SF
| Brijj, beacon at SF
|}
|}
#* And activate DME to Nav1
* And activate DME to Nav1
#* There is no field to input COM-radios, but remember them for setting them later manually:
* There is no field to input COM-radios, but remember them for setting them later manually:
{|
::{|
! style="background:#efefef" | Com1
! style="background:#efefef" | Com1
| 118.60  
| 118.60  
Line 245: Line 256:
| San Francisco
| San Francisco
|}
|}
</li><li> '''Properties:'''
* Here you can define any presetting for any values in the FGFS. See e.g.: <tt>File > Browse Internal Properties</tt> in the FlightGear [[menu]].[[File:FGrun_prop.jpg|thumb|Advanced: Properties]]
* 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.
** Input a new line: Just hit “New” and type your string.
** Edit a line: Be sure first to click onto an existing item and then edit this “Property”
** Delete a line: Click onto the line to be deleted then hit "Delete"
</li></ol>
Hit “OK” → “Run” and watch FlightGear 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.


# '''Properties:'''
#* Here you can define any presetting for any values in the FGFS. See e.g.: <tt>File > Browse Internal Properties</tt> in the FlightGear [[menu]].[[File:FGrun_prop.jpg|thumb|Advanced: Properties]]
#* 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.
#** Input a new line: Just hit “New” and type your string.
#** Edit a line: Be sure first to click onto an existing item and then edit this “Property”
#** Delete a line: Click onto the line to be deleted then hit "Delete"
# Hit “OK” → “Run” and watch FlightGear 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.


==== Start FGCom ====
==== Start FGCom ====
Open a [[Command line|command-window]] and change into the directory in which FGCom was installed (probably the same as FlightGear) and start FGCom. You must decide what server you want to use! Since Oct.2012 there are 2 FGCOM-servers available:
Open a [[Command line|command-window]] and change into the directory in which FGCom was installed (probably the same as FlightGear) and start FGCom. The server you want to use for events is '''fgcom.flightgear.org''' (fgcom.flightgear.org.uk was the originally used server and is not available any more).
# The original: '''fgcom.flightgear.org'''
# A new one: '''delta384.server4you.de'''
Due to technicalities it is not possible to speak from 1 server to the other - so try one and change if you notice that your friends are using the other.


So insert the server-address after a "-S" (watch: The "S" must be a capital!):
To start FGCom with the defined server you must insert the server address after a "-S" (watch: The "S" must be a capital!):
{|
::{| border="2" cellpadding="5"
! style="background:#efefef" |Linux  
! style="background:#efefef" |Linux||fgcom -Sfgcom.flightgear.org  
|fgcom -Sfgcom.flightgear.org  
|"-Sfgcom..." with capital "S"
|"-Sfgcom..." with capital "S"
|-
|-
! style="background:#efefef" |Linux Git
! style="background:#efefef" |Linux Git<br>
<small>(FS 3.00 or GIT 2.99)</small>
| cd ~/fgfs<br />sh ./run_fgcom.sh  
| cd ~/fgfs<br />sh ./run_fgcom.sh  
| for this “Git complete” you do not need to specify the server address, because it is embedded in the script-file.
| This is the new integrated version, which you will start and set options from inside the FGFS!
|-
|-
! style="background:#efefef" |Windows  
! style="background:#efefef" |Windows  
Line 274: Line 283:
|"-Sfgcom..." with capital "S"
|"-Sfgcom..." with capital "S"
|}
|}
For the following test position this command-window somewhere, where you can monitor it throughout the test.


The first response should be:
For the following tests, position the command-window somewhere, where you can monitor it throughout the test.
   /fgcom - a communication radio based on VoIP with IAX/Asterisk  
<br><br>
   (c)2007 by H. Wirtz <wirtz@dfn.de>  
'''''Be aware that the standard range for the FGCom is 50km, but some people have a version with a range of 100 km! So in the following description the "50 km" restriction might be replaced with 100km!!'''''
   Version 1.2.2 build 206M
<br><br>
   Using iaxclient library Version SVN 206M
'''1) The first response should be:'''
   fgcom - a communication radio based on VoIP with IAX/Asterisk
   Original (c) 2007-2011 by H. Wirtz <wirtz@dfn.de>
  OSX and Windows ports 2012-2013 by Yves Sablonier and Geoff R. McLane, resp.
   Version 3.1.0 compiled Mar  2 2014, at 00:21:19
   Using iaxclient library Version SVN 261
    
    
   Successfully parsed command-line options.  
   Successfully parsed commandline options
   Reading list of airports...done.
  Loaded file [/usr/share/flightgear/special_frequencies.txt].
   Reading airports [/usr/share/flightgear/positions.txt]
  loaded 47171 entries
   Initializing IAX client as guest:xxxxxxxxxxx@fgcom.flightgear.org
   Initializing IAX client as guest:xxxxxxxxxxx@fgcom.flightgear.org
If your printout up to that line is different go back to chapter [[FGCOM#Test the basic function|Test the basic function]]


{|
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 above shown initialization of the FGCom-window:
|+
|-
|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  
  Selected frequency: 119.650  
  Call rejected by remote
  Call rejected by remote
|
Instead of  “119.650” there will be shown the last used frequency. In the above example the source of the ATC-Freq. 119.650 is more than 50km away from your actual position, 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.
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.
<br><br>
|-
'''2) Switch COM1 to 118.60 (as needed at Palo Alto):'''
|2) Switch COM1 to 118.60 (needed at Palo Alto):
|-
|
  Selected frequency: 118.600  
  Selected frequency: 118.600  
  Hanging up call 0  
  Hanging up call 0  
Line 309: Line 313:
  Call 0 answered  
  Call 0 answered  
  Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 0.6 km)  
  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.
This last line will be repeated according the to time span you defined in the “Input/Output” command “--generic=socket,in,'''10''',,5500,tcp” (10 means all 10 sec.), you may change that value later according to your preferences.
|-
<br><br>
|<br />3) Press your PTT (PushToTalk on space-bar and joystick, as available):
'''3) Press your PTT (PushToTalk on space-bar and joystick, as available):'''
|-
|
  [SPEAK] unmute mic, mute speaker  
  [SPEAK] unmute mic, mute speaker  
  [LISTEN] mute mic, unmute speaker  
  [LISTEN] mute mic, unmute speaker  
  [SPEAK] unmute mic, mute speaker  
  [SPEAK] unmute mic, mute speaker  
  [LISTEN] mute mic, unmute speaker  
  [LISTEN] mute mic, unmute speaker  
|Only in between “SPEAK” and “LISTEN” you are able to talk to others.
Only in between “SPEAK” and “LISTEN” you are able to talk to others.
|-
<br><br>
|<br />Now lets set/verify the other Radios:
'''4) First let us set/verify the other Radios:'''
* COM2 = 120.50 San Francisco
COM2 = 120.50 San Francisco
* NAV1  = 114.10 San Jose
NAV1  = 114.10 San Jose
* NAV2  = 115.80 San Francisco
NAV2  = 115.80 San Francisco
4) Pressing Upper+Space will switch to the next radio: '''NAV1'''
<br>
|-
'''Then: Pressing Upper+Space will switch to the next radio: '''NAV1'''
|
  Radio-Select: NAV1  
  Radio-Select: NAV1  
  Selected frequency: 114.100  
  Selected frequency: 114.100  
Line 332: Line 333:
  Call rejected by remote  
  Call rejected by remote  
  [LISTEN] mute mic, unmute speaker  
  [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!
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 you know what/how you are doing and also save the original data somewhere - just in case!
|-
<br><br>
|<br />5) Pressing Upper+Space once more switches to '''COM2'''
'''5) Pressing Upper+Space once more switches to COM2'''
|-
|
  Radio-Select: COM2  
  Radio-Select: COM2  
  Selected frequency: 120.500  
  Selected frequency: 120.500  
Line 343: Line 342:
  Call 0 accepted  
  Call 0 accepted  
  Call 0 answered
  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'''
That looks OK: San Francisco is about 29 km away!<br />Watch the “km” instead of miles! '''10 km''' = '''6.2137 mi'''
|-
<br><br>
|<br />6) Pressing Upper+Space once more switches to '''NAV2'''
'''6) Pressing Upper+Space once more switches to NAV2'''
|-
|
  Radio-Select: NAV2  
  Radio-Select: NAV2  
  Selected frequency: 115.800  
  Selected frequency: 115.800  
Line 355: Line 352:
  Call 0 answered  
  Call 0 answered  
  [LISTEN] mute mic, unmute speaker  
  [LISTEN] mute mic, unmute speaker  
|And Yes: The SF VOR is just a little closer than the airport(center)
And Yes: The SF VOR is just a little closer than the airport-center
|-
<br><br>
|<br />7) Pressing Upper+Space once more brings back '''COM1''':
'''7) Pressing Upper+Space once more brings back '''COM1''':'''
|-
|
  Radio-Select: COM1  
  Radio-Select: COM1  
  Selected frequency: 118.600  
  Selected frequency: 118.600  
Line 367: Line 362:
  Call 0 answered  
  Call 0 answered  
  [LISTEN] mute mic, unmute speaker  
  [LISTEN] mute mic, unmute speaker  
|-
<br>
|<br />8) Lets us start and continue flying in the direction about 130°:
'''8) Lets us start and continue flying with a heading of 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.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.2 km)  
Line 377: Line 370:
  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 ( 1.9 km)  
  Airport Palo Alto (KPAO Tower at 118.600 MHz) is in range ( 2.4 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
notice that you first come closer (to the center of the airport) and after that getting away
|-
<br><br>
|<br />9) Let's switch to '''COM2''' (San Francisco) and watch:  
'''9) Let's switch to '''COM2''' (San Francisco) and watch:'''
|-
|
  Radio-Select: COM2  
  Radio-Select: COM2  
  Selected frequency: 120.500  
  Selected frequency: 120.500  
Line 397: Line 388:
  Call rejected by remote  
  Call rejected by remote  
  [LISTEN] mute mic, unmute speaker  
  [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!
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!
|}
<br><br>
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).
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).


If you got here without any (technical) problems your FGCom is fully functional. Have fun when using it.
If you got here without any (technical) problems your FGCom is fully functional. Have fun when using it.
Line 430: Line 421:
* For Linux the "gedit" works fine
* For Linux the "gedit" works fine


===== Copying-Printing this WIKI-Page''' =====
===== Copying-Printing this WIKI-Page =====
If you absolutely want to have a local copy of this on your PC or need a hard-copy, then:
If you absolutely want to have a local copy of this on your PC or need a hard-copy, then:


Line 440: Line 431:
** before printing I recommend: Menu --> File --> "Print Preview" and you see those many many pages!
** before printing I recommend: Menu --> File --> "Print Preview" and you see those many many pages!
** If you really want to wast that paper: Menu --> "File" --> "Print" and it will print on your favorite printer
** If you really want to wast that paper: Menu --> "File" --> "Print" and it will print on your favorite printer


===== Joystick compatibility between Operating Systems: =====
===== Joystick compatibility between Operating Systems: =====
Line 505: Line 495:
  fgcom --help
  fgcom --help
returns the following useful info
returns the following useful info
    fgcom - a communication radio based on VoIP with IAX/Asterisk
 
    (c)2007 by H. Wirtz <wirtz@dfn.de>
  fgcom - a communication radio based on VoIP with IAX/Asterisk
    Version 1.2.2 build 163M
  Original (c) 2007-2011 by H. Wirtz <wirtz@dfn.de>
    Using iaxclient library Version SVN 163M
  OSX and Windows ports 2012-2013 by Yves Sablonier and Geoff R. McLane, resp.
  Version 3.1.0 compiled Mar  2 2014, at 00:21:19
  Using iaxclient library Version SVN 261
    
    
  OPTION                                       DESCRIPTION
    OPTION                                               DESCRIPTION
    
    
  -d, -debug, --debug=                         show debugging information
    -d, -debug, --debug=                                 show debugging information
  -S, -voipserver, --voipserver=               voip server to connect to (default: 'fgcom.flightgear.org')
    -S, -voipserver, --voipserver=                       voip server to connect to (default: 'fgcom.flightgear.org')
  -s, -fgserver, --fgserver=                   network device to connect to  (default: 'localhost')
    -s, -fgserver, --fgserver=                           fg to connect to  (default: 'localhost')
  -p, -port, --port=                           where we should listen to FG (default: '16661')
    -p, -port, --port=                                   where we should listen to FG (default: '16661')
  -a, -airport, --airport=                     airport-id (ICAO) for ATC-mode
    -a, -airport, --airport=                             airport-id (ICAO) for ATC-mode
  -f, -frequency, --frequency=                 frequency for ATC-mode
    -f, -frequency, --frequency=                         frequency for ATC-mode
  -U, -user, --user=                           username for VoIP account (default: 'guest')
    -C, -callsign, --callsign=                            callsign to use (default: 'guest')
  -P, -password, --password=                   password for VoIP account (default: 'guest')
    -U, -user, --user=                                   username for VoIP account (default: 'guest')
  -i, -mic, --mic=                             mic input level (0.0 - 1.0)
    -P, -password, --password=                           password for VoIP account (default: 'guest')
  -o, -speaker, --speaker=                     speaker output level (0.0 - 1.0)
    -i, -mic, --mic=                                     mic input level (0.0 - 1.0)
  -b, -mic-boost, --mic-boost=                 enable mic boost
    -o, -speaker, --speaker=                             speaker output level (0.0 - 1.0)
  -l, -list-audio, --list-audio=               list audio devices
    -b, -mic-boost, --mic-boost=                         enable mic boost
  -r, -set-audio-in, --set-audio-in=           use <devicename> as audio input
    -t, -silence-threshold, --silence-threshold=          set silence threshold (-60.0 - 0.0)
  -k, -set-audio-out, --set-audio-out=         use <devicename> as audio output
    -l, -list-audio, --list-audio=                       list audio devices
  -c, -codec, --codec=                         use codec <codec> as transfer codec (default: 'u')
    -r, -set-audio-in, --set-audio-in=                   use <devicename> as audio input
    -k, -set-audio-out, --set-audio-out=                 use <devicename> as audio output
    -c, -codec, --codec=                                 use codec <codec> as transfer codec (default: 'u')
    -T, -positions, --positions=                          location positions file (default: '/usr/share/flightgear/positions.txt')
    -Q, -special, --special=                              location spl. frequency file (opt) (default: '/usr/share/flightgear/special_frequencies.txt')
    
    
  Available codecs:
    Available codecs:
        u - ulaw (default and best codec because the mixing is based onto ulaw)
          u - ulaw (default and best codec because the mixing is based onto ulaw)
        a - alaw
          a - alaw
        g - gsm
          g - gsm
        s - speex
          s - speex
        7 - G.723
          7 - G.723
    
    
  Mode 1: client for COM1 of flightgear:
        $ fgcom
  - connects fgcom to fgfs at localhost:16661
        $ fgcom -sother.host.tld -p23456
  - connects fgcom to fgfs at other.host.tld:23456
    
    
  Mode 2: client for an ATC at <airport> on <frequency>:
    Mode 1: client for COM1 of flightgear:
        $ fgcom -aKSFO -f120.500
          $ fgcom
  - sets up fgcom for an ATC radio at KSFO 120.500 MHz
    - connects fgcom to fgfs at localhost:16661
          $ fgcom -sother.host.tld -p23456
    - connects fgcom to fgfs at other.host.tld:23456
    
    
     Note that /home/hcs/src/fgcom/trunk/src/fgcom starts with a guest account unless you use -U and -P!
     Mode 2: client for an ATC at <airport> on <frequency>:
          $ fgcom -aKSFO -f120.500
    - sets up fgcom for an ATC radio at KSFO 120.500 MHz
 
 
  Note that fgcom starts with a guest account unless you use -U and -P!


Also note that the current server (fgcom.flightgear.co) works with guest account, so '''do not use -U or -P'''
Also note that the current server (fgcom.flightgear.org) works with guest account, so '''do not use -U or -P'''


== Server installation ==
== Server installation ==
Line 596: Line 594:
* [[FGComGui]]
* [[FGComGui]]


[[Category:FGCom| ]]
== External link ==
* [http://sourceforge.net/projects/fgcom/ Old repository] at sourceforge
 
[[Category:FGCom]]
[[Category:Multiplayer]]
[[Category:Multiplayer]]


[[fr:FGCom]]
[[fr:FGCom]]

Navigation menu