ATC-pie user guide: Difference between revisions

New release v1.1.0
(Version update (v1.0.1))
(New release v1.1.0)
Line 40: Line 40:
|-
|-
| --map-range=''range'' || Define the distance in NM from the radar centre up to which the map will be drawn and navpoints listed in the navigator (accepted values are 20..500). This option can only be used with a location argument. || 100 in AD mode; 300 in CTR mode
| --map-range=''range'' || Define the distance in NM from the radar centre up to which the map will be drawn and navpoints listed in the navigator (accepted values are 20..500). This option can only be used with a location argument. || 100 in AD mode; 300 in CTR mode
|-
| --add-view=''host'':''port'' || Register an additional FlightGear instance to forward traffic to. This enables to position more viewers freely. This option can be repeated; views can also be managed at runtime with the in-game interface. || (none)
|-
|-
| --views-send-from=''port'' || Change the local UDP port number to bind for sending FGMS packets to views. This includes all tower and additional views, but does not affect the multi-player connection ports, chosen on MP connect. || 5009
| --views-send-from=''port'' || Change the local UDP port number to bind for sending FGMS packets to views. This includes all tower and additional views, but does not affect the multi-player connection ports, chosen on MP connect. || 5009
Line 56: Line 54:
== Feature notes ==
== Feature notes ==
This section describes a few major features. A more exhaustive list can be found in the main article.
This section describes a few major features. A more exhaustive list can be found in the main article.
=== Strips and placeholders ===
Whether dematerialised or on physical paper, printed out or filled by hand, the '''flight strip''' is the essential piece of air and ground traffic control. Every aircraft in contact is represented by a unique strip, and every strip represents a contact. This helps to ensure no aircraft is ever forgotten about. Strip positioning and updating then enable to monitor every aircraft's status, sequence number, position, intentions, etc.
ATC-pie provides with various placeholders for flight strips, namely ''racks'', ''loose strip bays'' and ''runway boxes''. Depending on your ATC position and local facilities, you should choose and arrange your placeholders for optimal control. Strips can then be moved between all of them using mouse drag and drop.
A '''strip rack''' is the preferred way of keeping track of a sequence, e.g. a departure queue at a runway threshold. You can create as many racks as you wish and name them appropriately. Racks can be viewed in the main window and in their own docked or floating panel. The column view shows all racked strips at once; the tabbed view avoids spreading the window horizontally. Received and recovered strips will automatically fall in the permanent "default" rack.
In the same panel, above the racks or in their own tab (resp. column or tabbed view), you can opt to show the '''runway boxes'''. A runway box is a placeholder for a single strip, named after a runway in use and denoting a clearence to use it (enter, cross, land...). Thorough use of runways boxes will help you never clear an aircraft to land over lined up traffic for example. When freed, runway boxes display a timer since last use together with the wake turbulance category of the last contained strip, to help with separation. What is more, if you use radar, a filled runway box marks the runway as reserved on the scope, and if you have runway occupation monitoring enabled, allows for one traffic before the runway incursion warning turns on.
The third placeholder type available is the '''loose strip bay''', allowing free-hand positioning of strips in a dedicated window. Such bays can be useful for any kind of unsequenced traffic, or to map out relative positions when controlling without a radar. You may also import background images, e.g. a ground chart to keep visual track of taxiing aircraft and vehicles. See <code>resources/bg-img/Notice</code> to learn how.
Besides, there are two other places a strip can be dropped on, usually when releasing a contact:
* a connected ATC (if accepting strip exchange), to initiate a handover;
* the '''strip shelf''' (visible under every rack or loose strip panel), which removes the strip from your work bench and stores it as shelved.


=== Routes and conflict warnings ===
=== Routes and conflict warnings ===
Line 181: Line 194:
* The teaching console dock is enabled, which you should keep visible for efficient control of the student's environment.
* The teaching console dock is enabled, which you should keep visible for efficient control of the student's environment.
* New traffic can be created at any time with a simple SHIFT+click&drag on the radar, specifying the place and face heading of the wanted traffic. A dialog pops up and allows you to choose a callsign (one is initially generated), altitude and other details. If near a parking position or runway threshold, you can place it on the ground instead, ready to taxi or for departure.
* New traffic can be created at any time with a simple SHIFT+click&drag on the radar, specifying the place and face heading of the wanted traffic. A dialog pops up and allows you to choose a callsign (one is initially generated), altitude and other details. If near a parking position or runway threshold, you can place it on the ground instead, ready to taxi or for departure.
* Traffic is initially created in an "unspawned" state, in other words visible to you but not to the student. This allows you to change his transponder settings or get it into a certain state or place before spawning it into the student's world.
* Traffic is initially created in an "unspawned" state, in other words visible to you (marked "?") but not to the student. This allows you to change his transponder settings or get it into a certain state or place before spawning it into the student's world.
* Controlling the traffic is done in the same way as in solo sessions, i.e. with the click&drag vector and taxi tools and through the instruction dock. The only difference is that you control the selected aircraft directly, regardless of your strip links and details. You therefore do not need a strip and a correctly filled callsign to instruct a pilot, though it is a good idea to have one linked if you want your vectors to be drawn on the radar. The traffic creation dialog offers to create a linked strip with every new aircraft.
* Controlling the traffic is done in the same way as in solo sessions, i.e. with the click&drag vector and taxi tools and through the instruction dock. The only difference is that you control the selected aircraft directly, regardless of your strip links and details. You therefore do not need a strip and a correctly filled callsign to instruct a pilot, though it is a good idea to have one linked if you want your vectors to be drawn on the radar. The traffic creation dialog offers to create a linked strip with every new aircraft.
* You may pause the whole simulation, or freeze each aircraft individually. NB: frozen aircraft result in stationary flights on radars.
* You may pause the whole simulation, or freeze each aircraft individually. NB: frozen aircraft result in stationary flights on radars.
Line 197: Line 210:
'''Running internally''' only requires FlightGear installed on your computer. A basic installation is enough, but:
'''Running internally''' only requires FlightGear installed on your computer. A basic installation is enough, but:
* aircraft will only be drawn properly if you have the corresponding [[Aircraft|models]] installed—read the notice in <code>resources/acft</code> and check out the <code>icao2fgfs</code> file to understand how ATC-pie chooses models for FlightGear (initially included are a few ugly substitutions like B772 for A320 to avoid the lighter installations to miss out on planes, but you can edit the file and use your own models);
* aircraft will only be drawn properly if you have the corresponding [[Aircraft|models]] installed—read the notice in <code>resources/acft</code> and check out the <code>icao2fgfs</code> file to understand how ATC-pie chooses models for FlightGear (initially included are a few ugly substitutions like B772 for A320 to avoid the lighter installations to miss out on planes, but you can edit the file and use your own models);
* more importantly, you will need the [[scenery]] for your airport if you want anything exciting to see (and not sea!)—go to [http://www.flightgear.org/download/scenery/ this page] or use [[TerraSync]] to download it to your computer, and add it to your [[$FG_ROOT|FlightGear root directory]] or set the right scenery directory in the ''System'' menu (ATC-pie will pass it on to FlightGear and save your setting).
* more importantly, you will need the [[scenery]] for your airport if you want anything exciting to see (and not sea!)—add it to your [[$FG_ROOT|FlightGear root directory]] or enter the directory in the ''System'' settings dialog (ATC-pie will pass it on to FlightGear).


Connecting to an '''external viewer''' takes a little more effort but allows to run FlightGear on a different machine and thereby relieve your session from the CPU load a local instance induces. If you want to do so, get a hint of the required positioning options you should start your viewer with, from the tower view tab in the system settings dialog. More options should also be considered, e.g. <code>--fdm=null</code>. Of course, scenery, models and liveries must also be available to the running process.
Connecting to an '''external viewer''' allows to run FlightGear on a different machine and thereby relieve your session from the CPU load a local instance induces. If you want to do so, get a hint of the required positioning options you should start your viewer with, from the tower view tab in the system settings dialog. More options should also be considered, e.g. <code>--fdm=null</code>. Of course, scenery, models and liveries must also be available to the running process.


In either case, once activated from the ''View'' menu, the tower view controller pane is enabled, from which you can turn to runway points, follow selected aircraft... Direct FlightGear input in the view window is also possible: right click and drag allows to look around, <code>x</code>/<code>X</code> keys change the zoom level, etc.
In either case, once activated from the ''View'' menu, the tower view controller pane is enabled, from which you can turn to runway points, follow selected aircraft... Direct FlightGear input in the view window is also possible: right click and drag allows to look around, <code>x</code>/<code>X</code> keys change the zoom level, etc.


You can connect '''additional viewers''' to your session, for example placed around your airport for exciting camera footage of challenging landings. You will not be able to control those viewers from ATC-pie like the tower viewer, but you will be able to activate/stop the connection with a switch in the application ''View'' menu.
You can connect '''additional viewers''' to your session, for example placed around your airport for exciting camera footage of challenging landings. You will not be able to control those viewers from ATC-pie like the tower viewer, but you will be able to activate/stop the connection with a switch in the application ''View'' menu. Additional viewers are registered by their host+port address, from the ''View'' menu at run-time or from a custom settings file (see <code>settings/Notice</code>), read at start-up and on explicit reload (''System'' menu).


Every additional viewer running on host ''XXX'' should be started with options <code>--multiplay=out,TTT,HHH,PPP</code> and <code>--multiplay=in,TTT,,YYY</code>. You must then register it in ATC-pie, either from the ''View'' menu (add viewer "''XXX'':''YYY''") or directly from the command line at start through an extra <code>--add-view=XXX:YYY</code> option. In these options:
Every additional viewer registered on host ''XXX'' and port ''YYY'' should be running on ''XXX'' and started with options <code>--multiplay=out,TTT,HHH,PPP</code> and <code>--multiplay=in,TTT,,YYY</code>, where:
* ''HHH'' is the host on which ATC-pie is running (same value for all viewers);
* ''HHH'' is the host on which ATC-pie is running;
* ''PPP'' is the default 5009, or the chosen port number if ATC-pie is started with <code>--views-send-from</code> (same value for all viewers);
* ''PPP'' is the default 5009, or the chosen port number if ATC-pie was started with <code>--views-send-from</code>;
* ''TTT'' is the network polling frequency (100 is common practice; change as desired if you know what you are doing);
* ''TTT'' is the network polling frequency (100 is common practice; change as desired if you know what you are doing).
* ''YYY'' is the port number used by the viewer for FGMS packet reception.


=== Handovers in FlightGear and OpenRadar interoperability ===
=== Handovers in FlightGear and OpenRadar interoperability ===
[[File:ATC-pie-screenshot-receivedStrip.png|thumbnail|Example of a strip received from "DEL"]]
[[File:ATC-pie-screenshot-receivedStrip.png|thumbnail|Example of a strip received from "DEL"]]
Strips can be handed over by dropping them on recipients 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. For a full presentation about the feature, check [https://www.youtube.com/watch?v=oQIud-cAlT4 tutorial video 6].
Strips can be handed over by dropping them on recipients in the list of connected controllers. Received strips appear unlinked on the default rack, with an identification of the sender which disappears as soon as the strip is clicked on. For a full presentation about the feature, check [https://www.youtube.com/watch?v=oQIud-cAlT4 tutorial video 6].


The handover feature in FlightGear multi-player games is based on [[OpenRadar]]'s exchange server to enable ATC coordination between users of both software programs. However, it is to note that their philosophies differ in several ways:
The handover feature in FlightGear multi-player games is based on [[OpenRadar]]'s exchange 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;
* OpenRadar's concept of handover is based on a shared notion of aircraft ownership, whereas ATC-pie allows any controller to pull out a strip, write any callsign and link it to a radar contact;
* OpenRadar's concept of handover is based on a shared notion of aircraft ownership, whereas ATC-pie allows any controller to pull out a strip, write any callsign and link it to a radar contact;
* in the OpenRadar philosophy, a handover must be acknowledged by the receiver for the sender to lose ownership and for all neighbouring OpenRadar users to see the handover complete, whereas ATC-pie considers that a strip sent through the hand-over pipe is gone and should land directly on a receiver's rack at the other end, without anybody else necessarily to know.
* in OpenRadar, a handover must be acknowledged by the receiver for the sender to lose ownership and for all neighbouring OpenRadar users to see the handover complete, whereas ATC-pie considers that a strip sent through the hand-over pipe is gone and should land directly on a receiver's rack at the other end, without anybody else necessarily to know.


For most interactions to work while still respecting both philosophies as much as possible, the following principles and restrictions were chosen:
For most interactions to work while still respecting both philosophies as much as possible, the following principles and restrictions were chosen:
Line 279: Line 291:


=== Interface and information display ===
=== Interface and information display ===
The '''''Options'' menu''' is divided in two sections. Items above the separator are unsaved session options, which go back to their default setting on restart. Under the separator are the saved settings, which come in two flavours:
* location-specific (under a single submenu): saved and restored when started at the same location again, e.g. runway ILS capabilities for an airport, main METAR station;
* global settings (all other entries): saved and restored regardless of location or game mode, e.g. preset text chat messages.
You can '''customise the radar & strip colours''' by editing the colour codes in the <code>settings/colours.ini</code> file generated on first run.
You can '''customise the radar & strip colours''' by editing the colour codes in the <code>settings/colours.ini</code> file generated on first run.


Line 302: Line 310:
* 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 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;
* 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);
* 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 default strip rack);
* etc.
* etc.


265

edits