FGCom (before 3.0): Difference between revisions

Jump to navigation Jump to search
m
no edit summary
m (→‎Start FlightGear: small enhancements, need to fix the tables in the list)
mNo edit summary
Line 28: Line 28:


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.
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.


==The Client installation==
==The Client installation==
===Prequisites===
====Hardware Requirements====
If you are satisfied with the operation and responsetimes of your current FGFS installation, then you should see no significant difference after adding the FGCom. If your FGFS 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 FGFS command-window.
For details see the FGFS common hardware and driver requirements on http://www.flightgear.org/hardwarereq.html
Of course you will also need a connection to the Internet for this real-time, worldwide voice communication.
<br>
====Software Requirements====
{| style="width:75%" border="1"
|+
|-
|align="center" width="100" |'''FGFS''' ||The basic Flight-Gear-Flight-Simulation installation. This must be installed prior to installing the FGCom ''(except if installing the Linux "CVS complete" version which can install FGCom and FGFS concurrently)''.
ref.: http://www.flightgear.org/
|-
|align="center" |'''Multiplayer'''||[[Howto: Multiplayer|“Multiplayer”]] is not an installable program but an integrated function of the 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).
|}
<br>
====Nice to have====
{| style="width:75%" border="1"
|+
|-
|align="center" | '''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'''||This standalone Browser-Application( http://www.runwayfinder.com ) does present a fantastic Fight-Planning tool, showing similar aspects like the "MPMap" but adds an Aeronatical map. It does not link to FGFS or 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'''||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. ref.: http://www.flightgear.org/Docs/getstart/getstartch5.html#x10-790005.6
|}
<br>
===Prequisites===
===Prequisites===
====Hardware Requirements====
====Hardware Requirements====
Line 242: Line 207:
# 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.
# 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 the FGCom====
====Start 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”:
Open a [[Command line|command-window]] and change into the directory in which FGCom was installed (probably the same as FlightGear) and start FGCom. Do not use any other options than the server address “-Sfgcom.flightgear.org.uk”:
{|border="1"
{|
|+
! style="background:#efefef" |Linux
|-
|fgcom -Sfgcom.flightgear.org.uk
|width="150"|for linux CVS e.g.:
|"-Sfgcom..." with capital "S"
|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"
! style="background:#efefef" |Linux Git
| 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 Windows e.g.: ||cd 'C:\Program Files\Flightgear\win32'<br>fgcom.exe -Sfgcom.flightgear.org.uk ||"-Sfgcom..." with capital "S"
! style="background:#efefef" |Windows  
|-
|cd 'C:\Program Files\Flightgear\win32'<br>fgcom.exe -Sfgcom.flightgear.org.uk  
||for Mac: || ||
|"-Sfgcom..." with capital "S"
|}
|}
For the following test position this command-window somewhere, where you can monitor it throughout the test.
For the following test position this command-window somewhere, where you can monitor it throughout the test.
Line 383: Line 348:
|}
|}
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).
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===
During testing
#we will test the basic FGCOM-functions without the FGFS
#after that we test the FGCOM together with the FGFS
#finally we test/adjust the Microphone and Loudspeaker system
For these tests please see the [[FGCOM Testing]]
<br>
===Functional Test + User Briefing===
Experiences pointed out, that the cooperation FGCom/FGFS works more reliable, if the FGFS gets started first. So we will start with setting up a flight-test-environment:
====Start the FGFS====
We suggest to use the FGrun ([[FlightGear Launch Control]]) 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 the FGCom-operation:
If you don't have an Icon available to start the FGrun, then
*use a [[Command line|command-window]]
*change into the directory in which FGFS was installed
*and start the program from there:
{|border="1"
|+
|-
|width="150"|for linux CVS e.g.:
|width="250"|cd ~/fgfs<br>sh ./run_fgrun.sh
|-
||for Std. Linux e.g.: ||fgrun
|-
||for Windows e.g.: ||D:<br>cd 'C:\Program Files\Flightgear\win32'<br>fgrun.exe
|-
||for Mac: || ||
|}
Wait for the Program-Window to start and then define:<br><br>
'''1)''' Start by '''choosing an airplane'''. For this first try we suggest the c172p, 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”<br><br>
'''2)''' 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”<br><br>
'''3)''' Define the '''Multiplayer options:''' (ref. wiki [[Howto: Multiplayer]] for details)
{|
|+
|-
|width=610|[[image:FGrun_base.jpg|thumb|left|600px|Basic + Multiplayer Options]]
|“AI models” must be activated in order to see all traffic
<br><br>“Multiplayer” must be activated
<br><br>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.
<br><br>Insert your “Callsign:” (max. 7 characters)
<br><br>define the “in” and “out” ports both with the standard “5000”
<br><br>With "Load/Save as" you may build up yourself a library of settings for different airports.
|}→ Click “Advanced”<br>
'''4)''' 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:
{|
|+
|-
|width=420|[[image:FGrun_IP.jpg|thumb|left|400px|Advanced: 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)''
<br><br><br>''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.
|}
Open  http://mpmap01.flightgear.org
{|
|+
|-
|width=510|[[image:MPmap.jpg|thumb|left|500px|Preflight]]
|
*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
|}
'''5) Network:'''
{|
|+
|-
|width=420|[[image:FGrun_net.jpg|thumb|left|400px|Preflight]]
|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.
<br><br>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
|-
||for 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
|-
||for 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
|-
||for Mac: || || ||
|}
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.
If you got here without any (technical) problems your FGCom is fully functional. Have fun when using it.
<br>


===Using FGCom===
===Using FGCom===
There are basically 3 types of FGCOM-usage: (ref. the introduction to this wiki-page]]):
There are basically three types of FGCom-usage:
*'''Normal usage at airports:''' i.e. You set your radio to the airport as usual. Thus you are set up for the usual ATC-(keyboard)-procedures (either through the "'" (UpperCase#) and/or the Chat-Menus). In addition you then can talk to anybody in a radius of about 50 km (about 30 miles) around the airport, may that be friends, a maintained FGCOM-ATC/Twr-Operator, airport utilities, etc.. Be aware that as of April 2009 only very few planes are using the FGCOM for ATC-purposes - thus you should always use the ATC-Chat "keyboard"-procedures to announce arrivals/departures/taxiing etc. in addition. (We hope that may change in some future!)<br><br>
*'''Normal usage at airports:''' i.e. You set your radio to the airport as usual. Thus you are set up for the usual ATC-(keyboard)-procedures (either through the "'" (UpperCase#) and/or the Chat-Menus). In addition you then can talk to anybody in a radius of about 50 km (about 30 miles) around the airport, may that be friends, a maintained FGCOM-ATC/Twr-Operator, airport utilities, etc.. Be aware that as of April 2009 only very few planes are using the FGCOM for ATC-purposes - thus you should always use the ATC-Chat "keyboard"-procedures to announce arrivals/departures/taxiing etc. in addition. (We hope that may change in some future!)
*The '''AirToAir frequencies (122.75 and 123.45)''' are ideal for all Multiplayer events. They are without any range-limitations - and not yet "overcrowded!). Also when traveling you might want to listen on the 122.75 for others who want to contact you (or reverse). When there is much "talk" on the 122.75 you might just arrange with your partner to switch to 123.45 - and return to 122.75 afterward. As of April 2009 the 122.75 is already operational for this application, the 123.45 will follow soon. You may try from time to time if this limitations still exist.<br><br>
* The '''AirToAir frequencies (122.75 and 123.45)''' are ideal for all Multiplayer events. They are without any range-limitations - and not yet "overcrowded!). Also when traveling you might want to listen on the 122.75 for others who want to contact you (or reverse). When there is much "talk" on the 122.75 you might just arrange with your partner to switch to 123.45 - and return to 122.75 afterward. As of April 2009 the 122.75 is already operational for this application, the 123.45 will follow soon. You may try from time to time if this limitations still exist.
*Finally you can manipulate the frequency-tables (positions.txt in your FGFS/FGCOM local directory) and define an own frequency for special events. e.g. a Flight-School at one airport with maybe multiple student-groups. Of course those are local manipulations on your own PC, which you have to agree on with your (planned to be) partners in advance.
* Finally you can manipulate the frequency-tables (positions.txt in your FGFS/FGCOM local directory) and '''define an own frequency for special events'''. e.g. a Flight-School at one airport with maybe multiple student-groups. Of course those are local manipulations on your own PC, which you have to agree on with your (planned to be) partners in advance.


<br>
===Supplemantery Informations===
===Supplemantery Informations===
====Tips and Tricks====
====Tips and Tricks====
<ol>
=====Airport missing in FGCom:=====
=====Airport missing in FGCom:=====
In case your favorite airport does not show up in the FGCOM (command-window), although you can tune your COMM to it, you can add it to your data-file “'''positions.txt'''” in your fgcom directory. See e.g. the line  
In case your favorite airport does not show up in the FGCOM (command-window), although you can tune your COMM to it, you can add it to your data-file “'''positions.txt'''” in your fgcom directory. See e.g. the line  
Line 713: Line 371:
  name    = whatever
  name    = whatever
''(of course those definition are only known to your own PC and last only until the next data update!)''
''(of course those definition are only known to your own PC and last only until the next data update!)''
<br><br>
 
=====Editing FGCOM-Data-Files=====
=====Editing FGCOM-Data-Files=====
If you edit Textfiles (e.g. Radio-listings) or xml-files you might not see line-endings when using your standard editor.
If you edit Textfiles (e.g. Radio-listings) or xml-files you might not see line-endings when using your standard editor.
*For windows you can use "WordPad"
*For windows you can use "WordPad"
*For Linux the "gedit" works fine
*For Linux the "gedit" works fine
<br>
 
=====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 730: Line 388:
**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


<br><br>
 
=====Joystick compatibility between Operating Systems:=====
=====Joystick compatibility between Operating Systems:=====
{{Main article|Joystick}}
{{Main article|Joystick}}
You may use the same joystick-definitions across all Operating-Systems: But you may need to change the assigned numbers - your joystick-vendor might have done that for you already. Check e.g. (Unix, Mac, Win having assigned different "numbers"):
You may use the same joystick-definitions across all Operating-Systems: But you may need to change the assigned numbers - your joystick-vendor might have done that for you already. Check e.g. (Unix, Mac, Win having assigned different "numbers"):
  <axis>        (instead of the usual <axis n=”3”> )
  <axis>        (instead of the usual <axis n=”3”> )
Line 747: Line 406:
  </axis>
  </axis>


<br><br>
=====Assign PTT to joystick=====
=====assign PTT to Joystick and PTT=====
If you want to assign the PushToTalk function to your joystick, add the following (for n you have to find your own number!)
If you want to assign the PushToTalk function to your joystick, add the following (for n you have to find your own number!)
  <button n="x">  
  <button n="x">  
Line 764: Line 422:
  </button>
  </button>


====Helpful internet adresses====
'''World-Time:'''
* [http://www.timeanddate.com/worldclock/custom.html?sort=1 standard deviations]
* [http://www.timezoneconverter.com/cgi-bin/tzc.tzc direct conversions]
Especially for multiplayer events you should define all times in the internationally used GMT (Greenwich Meantime). Just pick up your deviation from GMT and memorize it. If everybody does it, we could avoid a lot of misunderstandings.


* '''Decimal to Degree''' http://www.hbnweb.de/mathematik/grad-dezimal.html <br>
*: Some programs need Decimal Lon/Lat values, others the Degrees/Minutes/Sec. Just convert it.<br><br>
* '''Miles, km, feet, etc. etc. ...''': http://www.convertunits.com/
*: If like to avoid troubles (like NASA lost a satellite because of it) just look it up.


====Helpfull INTERNET Adresses====
'''Ports needed'''
'''World-Time:'''  
*for standard deviations:http://www.timeanddate.com/worldclock/custom.html?sort=1
*for direct conversions: http://www.timezoneconverter.com/cgi-bin/tzc.tzc
Especially for multiplayer events you should define all times in the internationally used GMT (Greenwich Meantime). Just pick up your deviation from GMT and memorize it. If everybody does it, we could avoid a lot of misunderstandings.<br><br>
'''Decimal to Degree''' http://www.hbnweb.de/mathematik/grad-dezimal.html <br>
Some programs need Decimal Lon/Lat values, others the Degrees/Minutes/Sec. Just convert it.<br><br>
'''Miles, km, feet, etc. etc. ...''': http://www.convertunits.com/
<br>If like to avoid troubles (like e.g. NASA lost a satellite because of it) just look it up.


'''Ports needed'''<br>
In case of problems over the internet you might check that the the following ports are allowed:
In case of problems over the INTERNET you might check that the the following ports are allowed:
  1314 TCP if the Festival-Server is used for Text/Sound  
  1314 TCP if the Festival-Server is used for Text/Sound  
  2005 UDP Vcp-Stream
  2005 UDP Vcp-Stream
Line 837: Line 496:
Also note that the current server (fgcom.flightgear.co.uk) works with guest account, so '''do not use -U or -P'''
Also note that the current server (fgcom.flightgear.co.uk) works with guest account, so '''do not use -U or -P'''


<br><br>
==Server installation==
 
{{Main article|Howto: Set up a FGCom server}}
=='''Server installation'''==
 
For running a FGCOM server you need Asterisk and depending on the amount of users much bandwith and CPU power. Because of putting pilots and ATCs in a VoIP conference the server-admin has to assure that there is enough network and cpu power to avoid drop-outs of the voice stream.
 
===Prerequirements===
 
Install Asterisk on top of your favorite distribution. Please refer to installation manuals (e.g. [[http://www.asteriskguru.com/|Asterisk-Guru]]) you can find on the net. You do not need H.323 or SIP because the fgcom client uses IAX2 as VoIP signaling protocol. Only if you think about connecting external VoIP applications to FGCOM you should consider to activate H.323 or SIP (but this is not the scope of this small howto).
 
Notice: You need to install the zaptel driver modules - even if you won't use any hardware for telecom interfacing. You need the ztdummy kernel module for the asterisk conference application MeetMe() because it simulates a hardware clock needed by this application. Further development of FGCOM might use app_conference which don't needs any timing device.
 
For now we want to use /etc/asterisk as the base configuration directory.
 
===Setting up the radio frequencies===
 
The radio frequencies are "simple" Conferences and realized due to the Asterisk application MeetMe().
 
====Part 1: General configuration====
 
First you have to set up the general configuration of the system. Put the following at the top of your "extensions.conf" file:
 
  [general]
  static=yes
  writeprotect=yes
  ;
  [globals]
  ;
  [macro-com]
  exten => s,1,Answer()
  exten => s,n,MeetMe(${MACRO_EXTEN},qd)
  exten => s,n,Hangup()
  ;
  [macro-echo]
  exten => s,1,Answer()
  exten => s,n,Echo()
  exten => s,n,Hangup()
  ;
  [guest]
  ; ATC-Help
  exten => 01-ZZZZ-911.000,1,Macro(com)
  exten => 012525252591100,1,Dial(Local/01-ZZZZ-911.000)
  exten => 01-ZZZZ-910.000,1,Macro(echo)
  exten => 012525252591000,1,Dial(Local/01-ZZZZ-910.000)
  ;
  [default]
  include => guest
  ;
  ; Code:
  ; 01 - FlightGear
  ; 02 - Microsoft Flight-Simulator
  ; 03 - ...
  ;
  ; Air2Air
  exten => 01-ZZZZ-123.450,1,Macro(com)
  exten => 012525252512345,1,Dial(Local/01-ZZZZ-123.450)
  exten => 01-ZZZZ-122.750,1,Macro(com)
  exten => 012525252512275,1,Dial(Local/01-ZZZZ-122.750)


====Part 2: Adding your favorite (all?) frequencies====
==External links==
 
For this you have simply to create an extension for every touple of airport/frequency in extensions.conf. The following is an example for Berlin-Tempelhof (EDDI). The information comes from the file "apt.dat.gz" of your FlightGear installation.
 
  ; EDDI ATIS 126.020 - Berlin Tempelhof
  exten => 01-EDDI-126.020,1,Macro(com)
  exten => 010403030812602,1,Dial(Local/01-EDDI-126.020)
  ;
  ; EDDI BERLIN DEP 120.620 - Berlin Tempelhof
  exten => 01-EDDI-120.620,1,Macro(com)
  exten => 010403030812062,1,Dial(Local/01-EDDI-120.620)
  ;
  ; EDDI BERLIN DIRECTOR 121.120 - Berlin Tempelhof
  exten => 01-EDDI-121.120,1,Macro(com)
  exten => 010403030812112,1,Dial(Local/01-EDDI-121.120)
  ;
  ; EDDI BERLIN ARR 126.420 - Berlin Tempelhof
  exten => 01-EDDI-126.420,1,Macro(com)
  exten => 010403030812642,1,Dial(Local/01-EDDI-126.420)
  ;
  ; EDDI GND 121.950 - Berlin Tempelhof
  exten => 01-EDDI-121.950,1,Macro(com)
  exten => 010403030812195,1,Dial(Local/01-EDDI-121.950)
  ;
  ; EDDI TWR 119.570 - Berlin Tempelhof
  exten => 01-EDDI-119.570,1,Macro(com)
  exten => 010403030811957,1,Dial(Local/01-EDDI-119.570)
  ;
  ; EDDI BERLIN DIRECTOR 136.100 - Berlin Tempelhof
  exten => 01-EDDI-136.100,1,Macro(com)
  exten => 010403030813610,1,Dial(Local/01-EDDI-136.100)
  ;
  ; EDDI TWR 118.100 - Berlin Tempelhof
  exten => 01-EDDI-118.100,1,Macro(com)
  exten => 010403030811810,1,Dial(Local/01-EDDI-118.100)
  ;
  ; EDDI BERLIN DEP 119.500 - Berlin Tempelhof
  exten => 01-EDDI-119.500,1,Macro(com)
  exten => 010403030811950,1,Dial(Local/01-EDDI-119.500)
  ;
  ; EDDI BERLIN ARR 119.620 - Berlin Tempelhof
  exten => 01-EDDI-119.620,1,Macro(com)
  exten => 010403030811962,1,Dial(Local/01-EDDI-119.620)
 
What does the above mean? There are two lines (three with the comment) for each frequency: The first one sets up an extension named "01-EDDI-119.500". Yes, for VoIP you can use textual extensions but be careful if you want to setup your Asterisk-Server with POTS (=Plain old telephone service). Therefor you need the second line which is the same as above but without dashes and the letters in the decimal representation of the ASCII Code. The second line does only a "rewrite" of the numerical representation to the textual one.
 
For setting up all airports you can write your own simple script. But this maybe also not needed in further versions of FGCOM.
 
After editing the extensions.conf file you have to reload the extensions file (e.g. "asterisk -rx extensions reload").
 
You can add further nice goodies to your extensions.conf: MorseCode() for morsing the code of the VOR (MorseCode() will only work in Asterisk >= 1.4), Recording of metar data and playing this recording back when using the frequency of the metar information, ...
===Setting up user accounts===
 
The user accounts are located in the file iax.conf (and perhaps also in sip.conf, but this is not necessary). The top of the file should look like this:
 
  [general]
  bandwith=low
  disallow=lpc10
  jitterbuffer=yes
  forcejitterbuffer=no
  tos=lowdelay
  autokill=yes
  disallow=all
  allow=alaw
  allow=gsm
  allow=ilbc
  allow=g726
  allow=ulaw
  language=en
  maxauthreq=10
  context=guest
  ;
  [guest]
  type=user
  username=guest
  context=guest
  qualify=yes
  callerid=Guest IAX User
  host=dynamic
  ;
 
You may want to disallow more codecs or want to allow additional codecs (such as speex). But have in mind that the internal mixing of the conferences are done in "ulaw". But "ulaw" needs about 80 kBit/s because it does no compression. So you have to think about what's better for you: less bandwidth (per user) and more CPU usage or  more bandwidth (per user) and less CPU usage... you should also consider the "sound" of some codecs may not have the 'real radio sound'.
 
For each user you have to add a bunch of lines to your iax.conf file:
 
  [<USERNAME>]
  type=user
  username=<USERNAME>
  secret=<PASSWORD>
  context=default
  host=dynamic
  nat=yes
  notransfer=yes
 
You just have to fill in the <USERNAME> and <PASSWORD>. After each change you have to reload the configuration (e.g. "asterisk -rx reload chan_iax2.so"). Perhaps you want to write scripts for automatic configuration and so on. But be warned: Further versions of fgcom may use the multiplayer servers for getting usernames and position data and you have to change your scripts.
 
===Problems?===
 
If you have problems you can contact me via email at "dcoredump AT gmail.com".
 
<br><br>
=='''External links'''==
* [http://squonk.abacab.org/dokuwiki/fgcom Old Official website]
* [http://squonk.abacab.org/dokuwiki/fgcom Old Official website]
* [http://squonk.abacab.org/dokuwiki/fgcom-manual Manual]
* [http://squonk.abacab.org/dokuwiki/fgcom-manual Manual]
* [http://sourceforge.net/projects/fgcom/ fgcom(SourceForge-Project)]
* [http://sourceforge.net/projects/fgcom/ fgcom(SourceForge-Project)]


<br><br>
==Status==
==Development==
 
TODO
<br><br>
=='''Status'''==
*'''March, 2009:'''
*'''March, 2009:'''
Adding User-Informations for installing, using, maintaining FGCOM on different platforms.
Adding User-Informations for installing, using, maintaining FGCOM on different platforms.
Line 1,028: Line 524:
* '''22 November 2007:''' Due to heavy development at this time there may be some differences between the information on the web pages and the installation. Please follow the discussions on the FlightGear development list!
* '''22 November 2007:''' Due to heavy development at this time there may be some differences between the information on the web pages and the installation. Please follow the discussions on the FlightGear development list!


<br><br>
==Related content==
==Related content==
* [[FlightGear related projects]]
* [[FlightGear related projects]]

Navigation menu