ATC-pie: Difference between revisions

6,580 bytes added ,  21 May 2015
no edit summary
No edit summary
No edit summary
Line 8: Line 8:
| developedby            = Michael Filhol
| developedby            = Michael Filhol
| initialrelease        = Febuary 1, 2015
| initialrelease        = Febuary 1, 2015
| latestrelease          = March 21, 2015
| latestrelease          = May 21, 2015
| writtenin              = Python3
| writtenin              = Python3
| os                    = Any
| os                    = Any
Line 18: Line 18:
}}
}}


'''ATC-pie''' is an [[air traffic control]] radar simulation program for the [[FlightGear]] multi-player network, initially released Febuary 2015. It is comparable to [[OpenRadar]], but essentially designed for realism. It simulates many features of real-life ATC tasks such as strip rack and sequence management, handovers to/from neighbouring controllers, transponder identification, flight plan filing, ATIS recording.
'''ATC-pie''' is a radar [[air traffic control]] simulation program for the [[FlightGear]] multi-player network, initially released Febuary 2015. It is comparable to [[OpenRadar]], but essentially designed for realism. It simulates many features of real-life ATC tasks such as strip rack and sequence management, handovers to/from neighbouring controllers, transponder identification, flight plan filing, ATIS recording. It also provides a solo game mode for approach/departure vectoring and tower training.


It is programmed in Python3 for Qt5, hence system-independant, only both must be installed as well as the python3-qt5 bindings. That done, it is meant to work straight away, with no other resource to install or make/compile command to run. No need to install or update FlightGear, download scenery or fetch any external resource before it can run.
It is free and open source, programmed in Python3 for Qt5 hence system-independant, only both must be installed as well as the python3-qt5 bindings. That done, it is meant to work straight away, with no other resource to install or make/compile command to run. No need to install or update FlightGear, download scenery or fetch any external resource before it can run.


== Program features ==
== Program features ==
Line 26: Line 26:
Features listed below have been tested on various Linux versions and Windows. Still waiting for Mac users to report.
Features listed below have been tested on various Linux versions and Windows. Still waiting for Mac users to report.


=== Environment ===
=== Game and environment ===
World data:
World data:
* Real world METAR updates with selectable weather station
* Real world METAR updates from selectable weather station
* Real world declination lookup and true/magnetic distinction
* Real world declination lookup and true/magnetic distinction
* Airport and navigation data retrieved from the latest [http://data.x-plane.com X-Plane] file set
* Airport and navigation data retrieved from the latest [http://data.x-plane.com X-Plane] file set
* Custom additions possible in separate files


Multi-player environment:
Multi-player and network environment:
* Multi-player game mode with configurable [[FGMS]] connection
* ATC handovers: strip exchange with OpenRadar and other ATC-pie instances in range
* Interface with Lenny64's [http://flightgear-atc.alwaysdata.net flight plan data base], including in-game FPL retrieval, filing and editing
* Interface with Lenny64's [http://flightgear-atc.alwaysdata.net flight plan data base], including in-game FPL retrieval, filing and editing
* ATC handovers: strip exchange with OpenRadar and other ATC-pie instances in range
* In-app session announcement facility to post on Lenny64's popular [http://flightgear-atc.alwaysdata.net ATC event page]
* In-app session announcement facility to post on Lenny64's popular [http://flightgear-atc.alwaysdata.net ATC event page]
Solo game mode:
* Free combination choice of APP, TWR and DEP control positions for custom training
* Handovers to/from virtual ATCs
* Instruction interface and pilot read back
* Adjustable difficulty (traffic density)
* Departure–arrival and ILS–visual balance options
* Configurable runways in use, entry and exit points


GUI:
GUI:
* Floatable, dockable and closable GUI panes: strips, radios, text chat, etc. (layout saved)
* Floatable, dockable and closable GUI panes: strips, radios, text chat, etc. (window layout saved)
* Notification system combining selectable sounds, status bar messages and a time-tagged history
* Notification system combining selectable sounds, status bar messages and a time-tagged history
* General and airport-specific settings saved on close and restored on restart
* General and airport-specific settings saved on close and restored on restart
* Personal notepads saved across sessions
* Personal notepads saved across sessions


=== Transponder and radar contact ===
=== Radar and contact ===
Transponder support:
Transponder contact:
* Mode-dependant behaviour (modes 0, A, C, S)
* Mode-dependant behaviour (modes 0, A, C, S)
* Choice of simulated mode for the many FlightGear aircraft models still not equipped
* Choice of simulated mode for the many FlightGear aircraft models still not equipped
* Radar identification assistant (unique squawk link between radar pick-up and strip assignment detection)
* Radar identification assistant (unique squawk link between radar pick-up and strip assignment detection)
* Individual and general cheat modes to override XPDR settings or reveal those turned off
* Individual and general cheat modes to override XPDR settings or reveal those turned off
* Ignore contacts


Radar scope:
Radar scope:
<!--* Multiple radar scopes-->
* Custom radar background drawing and image display (e.g. to display real procedure charts)
* Variety of show/hide options for navigation points, aircraft info boxes, vectoring assignments...
* Variety of show/hide options for navigation points, aircraft info boxes, vectoring assignments...
* Point-to-point heading & distance quick measuring tool
* Point-to-point heading & distance quick measuring tool
* Custom radar background drawing and image display
* Custom text labels to annotate radar background (saved across sessions)
* Custom text labels to annotate radar background (saved across sessions)
* Ignore contacts


=== ATC management ===
=== ATC management ===
Strips and flight plans:
Strips, racks, flight plans:
* Strip drag&drop along and across user-defined racks
* Strip drag&drop along and across user-defined racks, with configurable colours
* Strips droppable on neighbouring ATCs for handovers
* Link strips to flight plans and radar contacts to merge editable details and inform radar display
* Link strips to flight plans and radar contacts to merge editable details and inform radar display
* Conflicts between linked elements reported
* Conflicts between linked elements reported
* Strips droppable on neighbouring ATCs for handovers
* Work with local FPL copies and manage sync with online publication
* Work with local FPL copies and manage sync with online publication


Line 73: Line 84:
=== Communications ===
=== Communications ===
Radio:
Radio:
* [[FGCom]] integration, incl. echo test and possible use of externally running instance
* [[FGCom]] integration, incl. echo test and possible use of externally running client
* ATIS recording with information letter and pre-filled preparation notepad
* ATIS recording with information letter and pre-filled preparation notepad
* Multiple-frequency transmissions
* Multiple and single frequency transmissions
* Frequency-specific sound level selection
* Frequency-specific sound level selection
* Mouse and keyboard PTT


Text chat:
Text chat:
* Preset message list management
* Preset message list management and automatic line completion
* Text aliases for context value replacements
* Text aliases for context value replacements
* Message history recall
* Message history recall
Line 101: Line 111:


=== General ===
=== General ===
You are the air traffic controller, and players will connect to the network with different types of aircraft and transponder equipment. As in real-life, the radar is [http://en.wikipedia.org/wiki/Secondary_surveillance_radar SSR], hence will show you only (unless you cheat) what you pick up from on-board ''transponders'' in your range. That means:
You are the air traffic controller, and players will connect to the network with different types of aircraft and [[transponder]] equipment. As in real-life, the radar is [http://en.wikipedia.org/wiki/Secondary_surveillance_radar SSR], hence will show you only (unless you cheat) what you pick up from on-board ''transponders'' in your range. That means:
* If a transponder is off or on standby, you will not see the aircraft on your radar screen.
* If a transponder is off or on standby, you will not see the aircraft on your radar screen.
* If a transponder is on, you will at least be able to see its position and read the transponder code, possibly its altitude and even its type and callsign, depending on the mode set by the pilot.
* If a transponder is on, you will at least be able to see its position and read the transponder code, possibly its altitude and even its type and callsign, depending on the mode set by the pilot.
Line 126: Line 136:


== User guide ==
== User guide ==
 
This section is only poor standalone documentation. It helps one download and run ATC-pie, and lists a few tips on some of its features. Other sources to learn the program are:
This section is only poor standalone documentation. It helps one download and run ATC-pie, and lists a few tips on some of its features. Yet better sources to learn the program are:
* the in-app ''quick reference'' from the help menu (summary of mouse/keyboard gestures, etc.);
* the in-app ''quick reference'' from the help menu (summary of mouse/keyboard gestures, etc.);
* the tutorial videos (to be announced).
* the tutorial videos (to be announced).
Line 155: Line 164:


Additional command-line options are available:
Additional command-line options are available:
* --'''mp-callsign'''=''callsign'' to set your network callsign directly (default=ICAOobs)
* --'''mp-callsign'''=''callsign'' to set a network callsign directly, modifiable on MP connect (default: ICAOobs)
* --'''fgcom-ports'''=''comma-separated-port-numbers'' to specify the local ports FGCom should use, the first one being reserved for echo test and ATIS recording, every other port allowing for an additional radio box (defaults: 16665 for reserved port; 16666 through 16669 for up to 4 radio boxes)
* --'''fgcom-server'''=''server-address'' to change the server used by internal FGCom radio boxes (default: fgcom.flightgear.org)
* --'''fgcom-ports'''=''port-spec'' to specify the local ports FGCom should use for internal FGCom radio boxes, where ''port-spec'' is either a comma separated port number list (the first one becomes reserved for echo test and ATIS recording and every other port allows for an additional radio box), or a string of the form ''reserved''+''nboxes'' as a shortcut for a contiguous range of ports (default: 16665+4, i.e. 16665 for reserved port plus 16666 through 16669 for up to 4 radio boxes)


=== Tips ===
If running ATC-pie for the first time and intending to use the radio, check the FGCom version setting (''System'' menu). Try an echo test and read the <code>resources/fgcom/Notice</code> file.
Here are a few tips to help you navigate and use the program.


==== Setup and interface ====
=== Feature notes ===
FGMS '''callsigns''' for ATCs typically start with the ICAO code of a controlled airport, and end with a hint on the provided service: twr, gnd... When choosing your callsign on MP connect, make sure it is unique, and note that FGMS restricts callsign length to 7 characters. :-(
This section describes a few major features. See more exhaustive list at the top of this article.


A few facts on information display:
==== Background drawings ====
* '''Heading displays''' are mostly magnetic so they can be read out to pilots. The only exceptions perhaps are the navigator and handover list tooltips, for easier human identification on the scope.
Background drawings allow to decorate radar scopes with all sorts of maps and useful information about the airspace or procedures. For example, you can map out procedure routes with one image file per published chart, named with SID/STAR and associated runways to make in-game selection easy.
* The '''transition level''' displayed in the weather analysis is the lowest flight level that is still above the transition altitude. This does not mean the lowest to be expected in ATC clearances, which may be higher, for more vertical separation on either side of the transition layer or due to coordination with neighbouring zones and fields.
* The grouped tick marks along the '''localiser line''' (when shown) indicate best altitudes AMSL for final approach along the defined flight path angle: every mark in a group is 1,000 ft.
 
In airport input fields, a single dot will instantly be replaced by your ICAO position. Use this as a '''shortcut from/to your airport''' when filling FPL/strip detail sheets.
 
Any strip with valid departure and arrival airports will contain a '''parsed route''':
* recognised navpoints in the route field (whitespace-sparated tokens) create waypoints on the way to arrival;
* other tokens are stored as route leg specifications to the following waypoint;
* the current route leg of the selected aircraft (leg spec + waypoint) is displayed in the info pane;
* "OK" near the route field of the strip detail sheet means that the route could be parsed correctly, otherwise "!!" is displayed and info boxes will be showing destination (or nothing if unknown) instead of next waypoint.
 
==== Radio and communications ====
Say you are TWR coordinating with GND at your airport, and you want to '''monitor both radio frequencies''' while you are only in charge of one. To set this up, start your radio box on TWR frequency and turn on a second one to monitor GND, tick "Kbd PTT" only for TWR so that you only transmit to your frequency and don't interfere with the other, and set the volume to "soft" on the latter so that you can always tell if a message is for you to answer or not.
 
The "'''PTT turns off sounds'''" option is recommended for those of you who do not wear headsets, as it will avoid GUI sound notifications being picked up by your microphone while transmitting on frequencies.
 
For more efficient text chat, a growing list of '''text aliases''' exist (<code>$wind</code>, <code>$qnh</code>, <code>$icao</code>...) for both instant and preset chat messages. They automatically expand to the current value when message is sent. Have a look at the quick reference available from the help menu.
 
==== Resolving conflicts ====
Strip–FPL conflicts:
* to confirm strip details: open the strip detail sheet, tick the "push details to FPL" box and save to propagate the strip details;
* to confirm FPL details: "pull FPL details" from the button menu to reset the conflicting strip details to the values filled in the linked flight plan;
* to confirm some details of each source: open the strip sheet, get rid of the bad details before pushing to the flight plan, the untouched FPL details will appear on next open.


Flight plan local–online conflicts:
The best way is certainly to draw the images yourself with good enough resolution, e.g. with Gimp, superimposing a drawing layer on top of a real map background canvas, possibly your ATC-pie radar screenshot with pinned navaids for landmarks. If you have the real documentation, it is worth trying the command below (requires ''ImageMagick'') to simply turn the white background of a ready published chart into transparency, and check if the rendered images are acceptable and zoom-resistant enough.
* to update the online version with your local modifications, double-click the flight plan and tick the "publish" box before saving (if still decorated red, there was a network problem or the change was rejected by the server);
* to discard all local modifications of an online FPL, remove the FPL from the list and check for new flight plans again (the deleted entry should be retrieved with online state).
 
==== Background drawings ====
You can '''map out procedures''' on your radar scope by extracting charts from the real documentation. The typical way would be to create one image file per published IAC/SID/STAR chart, named by procedure and including associated runways to make in-game selection easy. Turn the white background into transparency (e.g. with the command below; requires ''ImageMagick''), and read the <code>resources/bgdrawings/Notice</code> file to learn how to add it to your airport sessions and position it on the radar screen.
:<code>convert -transparent white input-file.png output-file.png</code>
:<code>convert -transparent white input-file.png output-file.png</code>


Use the '''image positioning helper tool''' in the system menu if you want to adjust image corners visually rather than programmatically. All visible pixmap drawings are touched simultaneously, so you can work with several at a time if you need to. On dialog box close, a file is generated in the <code>output</code> folder for you to open and copy/edit, or use as a direct substitution.
Use the '''image positioning helper tool''' in the system menu if you want to adjust image corners visually rather than programmatically. All visible pixmap drawings are touched simultaneously, so you can work with several at a time if you need to. On dialog box close, a file is generated in the <code>output</code> folder for you to open and copy/edit, or use as a direct substitution.


=== Strip exchange and OpenRadar interoperability ===
==== Multi-player strip exchange and OpenRadar interoperability ====
The strip exchange feature in ATC-pie is based on OpenRadar's server to enable ATC coordination between users of both software programs. However, it is to note that their philosophies differ in several ways:
The strip exchange feature in ATC-pie is based on OpenRadar's server to enable ATC coordination between users of both software programs. However, it is to note that their philosophies differ in several ways:
* OpenRadar's basic processing unit is the FGMS callsign, whereas ATC-pie's is the strip;
* OpenRadar's basic processing unit is the FGMS callsign, whereas ATC-pie's is the strip;
Line 208: Line 189:
For most interactions to work while still respecting both philosophies as much as possible, the following principle was chosen:
For most interactions to work while still respecting both philosophies as much as possible, the following principle was chosen:
* ATC-pie users can only hand over strips that are linked to a radar contact (no lone strip can be sent);
* ATC-pie users can only hand over strips that are linked to a radar contact (no lone strip can be sent);
* aircrafts under ATC-pie control are not shown as "owned" to OpenRadar users;
* aircraft under ATC-pie control are not shown as "owned" to OpenRadar users;
* handovers from ATC-pie will fail if an OpenRadar user in range is claiming ownership;
* handovers from ATC-pie will fail if an OpenRadar user in range is claiming ownership;
* when sending to ATC-pie controllers, OpenRadar users will see their transfers acknowledged straight away, unconditionally.
* when sending to ATC-pie controllers, OpenRadar users will see their transfers acknowledged straight away, unconditionally.
Line 218: Line 199:


In practice, in ATC-pie, a strip can be handed over by dropping it on the chosen ATC in the list of connected controllers in range. Received strips appear unlinked on the reserved rack, with an identification of the sender which disappears as soon as the strip is clicked on.
In practice, in ATC-pie, a strip can be handed over by dropping it on the chosen ATC in the list of connected controllers in range. Received strips appear unlinked on the reserved rack, with an identification of the sender which disappears as soon as the strip is clicked on.
==== Solo training mode ====
This mode allows to train on your own in different situations. Three combinable positions are available:
* tower (TWR), controlling runways and immediate surroundings;
* departure (DEP), bringing departing traffic to their exit point;
* approach (APP), vectoring arrivals onto final.
In any case, you will be controlling virtual IFR planes via the software interface, and receiving and handing over strips to virtual ATCs, depending on your position and on the aircraft's intentions (see table below). Approaches can be requested ILS or visual, and the balance between the two is adjustable from the solo mode settings.
Assuming APP, aircraft requesting ILS must be vectored to intercept a runway localiser and cleared for ILS approach, whereas those requesting visual require vectors until they report the expected runway is in sight. Then, approaching aircraft must be handed over to TWR, unless you are in the TWR position as well. If you are, you must clear them to land—or they will climb back up for go-around—and hand them over to ground control (GND) once they have vacated the runway. Tower also manages departures, which appear ready holding short of runways. After take-off, hand over your strips to departure control, unless assuming DEP yourself. When doing DEP, you must hand outbound aircraft over to the en-route centre (CTR) once they are high enough and close enough to their exit point if specified.
{| class="wikitable" style="text-align:center"
|+ Handovers with virtual ATCs
|-
| || colspan="2" | Departure strips || colspan="2" | Arrival strips
|-
! Assuming positions || Receive from || Hand over to || Receive from || Hand over to
|-
! DEP only
| TWR || CTR || colspan="2" | N/A
|-
! APP only
| colspan="2" | N/A || CTR || TWR
|-
! TWR only
| GND || DEP || APP || GND
|-
! APP+DEP
| TWR || CTR || CTR || TWR
|-
! TWR+DEP
| GND || CTR || APP || GND
|-
! TWR+APP
| GND || DEP || CTR || GND
|-
! TWR+APP+DEP
| GND || CTR || CTR || GND
|}
'''Vectors''' are given by means of the vectoring assignment tool (click&drag on radar contact for heading, with SHIFT for altitude/FL and speed). '''Other instructions''' (''line up and wait'', ''clear to land'', etc.) can be sent from the instruction dock. Pull it up from the ''View'' menu if it is not visible. Non-vectoring instructions are sent to the callsign entered in the top field, which should fill automatically on aircraft or strip selection if a callsign is known.
Things you can train for:
* approach in dense traffic: select APP position only and increase traffic density;
* towering a single runway, optimising its use: select TWR position and an equal balance of departures and arrivals;
* change of runways (e.g. irl after wind direction change): start with APP+TWR and select a runway for arrivals at least, play for a while and go back to the dialog to change for the opposite runway;
* etc.
=== Tips ===
Here are a few tips to help you navigate and use the program.
==== Interface and information display ====
The '''''Options'' menu''' is divided in three sections, respectively and unless stated otherwise:
* session options: go back to their default setting on restart, e.g. rack sync option;
* airport-specific settings: saved and restored when restarted at same airport, e.g. runway ILS capability;
* global settings: saved and restored regardless of airport, e.g. preset text chat messages.
'''FGMS callsigns''' for ATCs typically start with the ICAO code of a controlled airport, and end with a hint on the provided service: twr, gnd... When choosing your callsign on MP connect, make sure it is unique, and note that FGMS restricts callsign length to 7 characters. :-(
'''Heading displays''' are mostly magnetic so they can be read out to pilots. The only exceptions perhaps are the navigator and handover list tooltips, for easier human identification on the scope. All directions are geodesic.
The '''transition level''' displayed in the weather analysis is the lowest flight level that is still above the transition altitude. This does not mean the lowest to be expected in ATC clearances, which may be higher, for more vertical separation on either side of the transition layer or due to coordination with neighbouring zones and fields.
The grouped tick marks along the '''localiser line''' (when shown) indicate best altitudes AMSL for final approach along the defined flight path angle: every mark in a group is 1,000 ft.
==== Radio and communications ====
Say you are TWR coordinating with GND at your airport, and you want to '''monitor both radio frequencies''' while you are only in charge of one. To set this up, start your radio box on TWR frequency and turn on a second one to monitor GND, tick "Kbd PTT" only for TWR so that you only transmit to your frequency and don't interfere with the other, and set the volume to "soft" on the latter so that you can always tell if a message is for you to answer or not.
The '''''PTT turns off sounds''''' option is recommended for those of you who do not wear headsets, as it will avoid GUI sound notifications being picked up by your microphone while transmitting on frequencies.
For more efficient text chat, '''text aliases''' (<code>$wind</code>, <code>$qnh</code>, <code>$icao</code>...) are available for both instant and preset chat messages. They automatically expand to the current value when the containing message is sent. Have a look at the quick reference available from the help menu.
Everything up to the first pipe character (<code>|</code>) if any in a text chat line will be stripped before the message is processed and sent. For quicker access to preset messages if you use them and the keyboard a lot, you can therefore '''prefix your messages''' with a custom shortcut and a pipe, which will enable autocompletion to pull up the desired message line as you start typing the prefix. Here is a preset message example enabling something like a dot-command for sending a bearing to your airport to the currently selected pilot:
: <code>.qdm|Heading to airport $qdm</code>
==== Strip and flight plan details ====
Every '''initial contact by a pilot''' should basically make you hit F2 and enter at least the call sign announced. You should then soon figure out if:
* a flight plan is filed, in which case you can save the strip relatively quickly and look for the FPL to link to it (middle click on the FPL entry);
* a flight plan must be filed (e.g. IFR departure not filed by lazy pilot), which only takes a tick in the bottom-line box before saving to open a freshly linked FPL detail sheet to fill;
* he was asked to contact you by a previous ATC, in which case you may have a strip handed over to you already (check the unassigned strip rack);
* etc.
In '''airport input fields''', typing a single dot will instantly fill the box with your ICAO position. Use this as a shortcut from/to your airport when filling details.
Resolving '''strip–FPL conflicts''':
* to confirm strip details: open the strip detail sheet, tick the "push details to FPL" box and save to propagate the strip details;
* to confirm FPL details: "pull FPL details" from the button menu to reset the conflicting strip details to the values filled in the linked flight plan;
* to confirm some details of each source: open the strip sheet, get rid of the bad details before pushing to the flight plan.
Resolving '''local–online flight plan conflicts''':
* to update the online version with your local modifications, double-click the flight plan and tick the "publish" box before saving (if still decorated red, there was a network problem or the change was rejected by the server);
* to discard all local modifications of an online FPL, remove the FPL from the list and check for new flight plans again (the deleted entry should be retrieved with online state).
A '''route''' is parsed for every strip with valid departure and arrival airports, enabling current leg and next waypoint display for any linked radar contact. The following apply:
* tokens in the route field are whitespace-separated;
* recognised navpoints (world navigation aids, airfields, fixes, RNAV points) create ''waypoints'' on the way to arrival;
* other tokens are stored as route leg specifications to the following waypoint;
* if ambiguous, a route waypoint is always the nearest homonym to the previous;
* "OK" near the route field of the strip detail sheet means that the route could be parsed correctly, otherwise "!!" is displayed and info boxes will be showing destination (or nothing if unknown) instead of next waypoint.


== FAQ ==
== FAQ ==
Line 235: Line 315:
A: The strip exchange feature allows you to hand over strips to ATCs who are connected to the same server and within 180 NM from your position. The public server currently open for general multi-player use is <code>http://h2281805.stratoserver.net/FgFpServer</code>. To hand over a strip, drag it from its rack and drop it on the chosen callsign in the ATC handover list. Publicise your frequency so that ATCs around know what to tell pilots for them to contact you!
A: The strip exchange feature allows you to hand over strips to ATCs who are connected to the same server and within 180 NM from your position. The public server currently open for general multi-player use is <code>http://h2281805.stratoserver.net/FgFpServer</code>. To hand over a strip, drag it from its rack and drop it on the chosen callsign in the ATC handover list. Publicise your frequency so that ATCs around know what to tell pilots for them to contact you!


'''Q: Can I draw procedure routes?'''
'''Q: Can I draw SID and STAR procedure routes on the radar?'''
 
A: Yes, and virtually anything else, using background images and hand drawings. See corresponding section above.
 
'''Q: How can I add such drawing?'''


A: Yes, and virtually anything else, using background images and hand drawings. See the tip section above.
A: Read the <code>resources/bgdrawings/Notice</code> file to learn how to add drawings to your airport sessions and position them on the radar screen. Also have a look at the packaged KSFO example.


'''Q: FGCom radio is not working. What is going on?'''
'''Q: FGCom radio is not working. What is going on?'''


A: There can be a variety of reasons, all of them to rule out before reporting a bug in the program. Start a single ATC-pie instance and try the echo test (system menu). If it works, you may skip directly to item 3 below.
A: There can be a variety of reasons, all of them to rule out before reporting a bug in the program. Start a single ATC-pie instance and try the echo test (system menu). If it works, you may skip directly to item 3 below.
# bad FGCom version setting
# Bad FGCom version setting
#: Verify the "FGCom version" set in the system menu, which should name a subdirectory in <code>resources/fgcom</code> and suit your operating system (see <code>Notice</code> file). Four versions are initially packaged with ATC-pie: Linux64, Linux32, Mac, Win32. FGCom version should be 3.4 (January 2015).
#: Verify the "FGCom version" set in the system menu, which should name a subdirectory in <code>resources/fgcom</code> and suit your operating system (see <code>Notice</code> file). Four versions are initially packaged with ATC-pie: Linux64, Linux32, Mac, Win32. FGCom version should be 3.4 (January 2015).
# FGCom server down
# FGCom server down
#: This does happen, sometimes unfortunately for up to a few days. Check for responses from the server, e.g. with <code>ping fgcom.flightgear.org</code>.
#: This can happen, unfortunately even for up to a few days. Check for responses from the server, e.g. with <code>ping fgcom.flightgear.org</code>.
# FGCom run time error
# FGCom subprocess error
#: If the server is up, check for errors in the logged FGCom output files in the <code>output</code> directory.
#: If the server is up (responding to ping), check for errors in the logged FGCom output files in the <code>output</code> directory.
# port mess-up on your side
# Port mess-up on your side
#: If you are running multiple instances of ATC-pie, make sure you have no more than one radio box on every port. In any case, verify you only choose available ports that are not already in use by your operating system for example. Typically, default ports (from 16661 counting up) work fine, but you will have to change them for parallel instances, using the --fgcom-ports= command-line option (see section: ''starting the program''). To check what port a radio box is using, see the "On/off" button tooltip.
#: If you are running multiple instances of ATC-pie, make sure you have no more than one radio box on every port. In any case, verify you only choose available ports that are not already in use by your operating system for example. Typically, default ports (from 16661 counting up) work fine, but you will have to change them for parallel instances, using the --fgcom-ports= command-line option (see section: ''starting the program''). To check what port a radio box is using, see its "on/off" button tooltip.


[[Category:ATC clients]]
[[Category:ATC clients]]
265

edits