ATC-pie installation guide: Difference between revisions

Jump to navigation Jump to search
v1.8.3, moving sections across articles to balance sizes
(v1.8.0)
(v1.8.3, moving sections across articles to balance sizes)
Line 6: Line 6:


=== Preparing ===
=== Preparing ===
[[ATC-pie]] is free and open source, and programmed in Python3 for Qt5. It is therefore system-independant, but requires Python3 and the PyQt5 library to run. The exact dependencies and required versions are listed in the <code>README</code> file packed in the download. Once they are installed, it runs straight away without any compiling to do (make, etc.).
[[ATC-pie]] is free and open source, and programmed in Python3 for Qt5. It is therefore system-independant, but requires Python3 and the PyQt5 library to run. The exact dependencies and required versions are listed in the <code>README</code> file packed in the download. When they are installed, ATC-pie runs straight away without any compiling to do (make, etc.).


=== Downloading ===
=== Downloading ===
There are essentially two ways of downloading ATC-pie: one is to download a '''tarball''' to extract locally; the other is to clone the '''Git repository'''.
There are essentially two ways of downloading ATC-pie: one is to download a tarball to extract locally; the other is to clone the Git repository.


Downloading the '''tarball''':
Downloading the '''tarball''':
Line 19: Line 19:


=== More to install? ===
=== More to install? ===
I say again: the above clone/download alone is not enough: both Python3 and PyQt5 must be installed too. ''Please'' read the <code>README</code> file for extra notes on installation.
I say again: the download/clone alone is not enough; both Python3 and PyQt5 must be installed too. ''Please'' read the <code>README</code> file for extra notes on installation.


At this point with the dependencies installed, you have a working program. But further software pieces can be installed to enable more of its features. Depending on how you mean to use ATC-pie, they can be recommended for more realism but they are not required, and can be installed later.
With the dependencies installed, at this point you have a working program. But further software pieces can be installed to enable more of its features, as listed below. Depending on your use of ATC-pie, they can be recommended for more realism but they are not required, and can be installed later.


For a 3D '''tower view''' in any airport session, ''[[FlightGear]]'' must be available, with the appropriate aircraft models and scenery data. Note that it can run on a separate machine, as explained [[ATC-pie user guide#Tower view window|in the user guide]].
For a 3D '''tower view''' in any airport session, ''[[FlightGear]]'' must be available, with the appropriate aircraft models and scenery data. Note that it can run on a separate machine, as explained [[#Airport scene rendering|down this article]].


To enhance solo sessions:
To enhance solo sessions:
Line 29: Line 29:
* with '''speech synthesis''' of AI pilots' radio messages, install ''pyttsx''.
* with '''speech synthesis''' of AI pilots' radio messages, install ''pyttsx''.


To enhance multi-player sessions (FlightGear and FSD) with an integrated '''voice land line (telephone) switchboard''' and enable serious coordination between human ATCs, install ''PyMumble''.
To enhance FlightGear and FSD sessions with an integrated '''ATC telephone switchboard''' (direct voice lines), install ''PyMumble''.


To enhance FlightGear sessions:
To enhance FlightGear sessions:
* with '''[[CPDLC]]''' and '''full ATC coordination''' including unlimited strip exchange and text messaging, install the ''Python IRC library'';
* with '''[[CPDLC]]''' and '''full ATC coordination''' including unlimited strip exchange and text messaging, install the ''Python IRC library'' (recommended!);
* with '''voice radio simulation''', install the ''FGCom-Mumble'' plugin (requires a ''Mumble''>=1.4 client) or the older ''standalone FGCom'' executable client (note that both variants cannot be used simultaneously).
* with '''voice radio simulation''', install the ''FGCom-Mumble'' plugin (requires a ''Mumble''>=1.4 client) or the older ''standalone FGCom'' executable client (note that both variants cannot be used simultaneously).


Line 62: Line 62:
|}
|}


== Getting started ==
=== Starting sessions ===
 
All session types are started from the ''System'' menu.
=== Initial configuration ===
Things you will want to do when running ATC-pie for the first time.
* For network sessions ([[FGMS]] and FSD), give yourself a "social name" so that others recognise you when using any of the ATC coordination/exchange features.
* To use the internal tower viewing system, make sure you have the right paths set for your FlightGear installation.
* The integrated [[FGCom]] radio system is recommended for FlightGear network sessions. Select the variant to use from in the system settings, check the ''FGCom'' tab and try an FGCom configuration test from the ''System'' menu. If you have problems, search for "FGCom" in the [[ATC-pie FAQ]].
 
If you intend to operate often at a given location, it is sensible to:
* download the latest airport data file from the [https://gateway.x-plane.com/airports/page# X-plane gateway] and place it in <code>CONFIG/ad</code> (see the <code>Notice</code> file there);
* review/fill the various fields in the location set-up dialog (a message pops up on the first time at a location, inviting you to open it), e.g. radar/communication equipment, and airport runway capabilities (necessary for more realisitc aircraft intentions in solo simulation);
* build an elevation map, especially for solo and teacher sessions;
* if using the radar, consider creating/importing background pictures (terrain maps, procedure charts...);
* configure strip racks and bays to fit the environment and service provided, they will be saved for future runs;
* pin your preferred navpoints so that they are restored on every run.


For more detailed and advanced configuration options, check the <code>CONFIG/Notice</code>.
=== Starting sessions ===
Solo simulation:
Solo simulation:
* wind will be randomised at start, but will be forced to blow in a favourable direction if at least one active runway is selected before start;
* wind will be randomised at start, but will be forced to blow in a favourable direction if at least one active runway is selected before start;
Line 88: Line 72:
* callsigns for ATCs in FlightGear are expected to start with the ICAO code of the controlled airport or sector, and end with a hint on the provided service (twr, gnd, ctr...), e.g. "KORDgnd" (note that FGMS restricts callsign length to 7 characters);
* callsigns for ATCs in FlightGear are expected to start with the ICAO code of the controlled airport or sector, and end with a hint on the provided service (twr, gnd, ctr...), e.g. "KORDgnd" (note that FGMS restricts callsign length to 7 characters);
* before choosing your callsign, make sure it is not already in use;
* before choosing your callsign, make sure it is not already in use;
* you can connect more than one ATC-pie instance from the same computer, but must use different ports.
* you can connect more than one ATC-pie instance from the same computer, but must use different ports;
* the three "sub-systems" that can be activated support different coordination features and differ in terms of interoperability with other clients, but all can be enabled together:
** '''native ATC-pie coordination''' enables full interaction with other ATC-pie clients, but does not currently operate with other software;
** '''ATC phone lines''' system integrates direct voice (telephone) lines to other connected ATCs in the ATC coordination panel (also ATC-pie only);
** '''OpenRadar handover compatibility''' implements [[OpenRadar]]'s native system to enable coordination with its users, although some limitations apply (see [[ATC-pie_user_guide#FlightGear_sessions_and_compatibility_with_OpenRadar|interoperability note]] in the user guide).
 
== Configuring ==
 
Here are things you will soon want or have to set up for a regular use of ATC-pie:
* set up a [[#Airport scene rendering|tower view]] to enable visual contact with your traffic in AD sessions;
* for FlightGear and FSD sessions, give yourself a "social name" so that others recognise you when using any of the ATC coordination/exchange features;
* for FlightGear sessions and realistic radio experience, select an [[FGCom]] variant in the system settings, and test the configuration from the ''System'' menu.
 
If you intend to operate often at a given location, it is sensible to:
* if it is an airfield location, download the latest airport data file from the [https://gateway.x-plane.com/airports/page# X-plane gateway] and place it in <code>CONFIG/ad</code> (see the <code>Notice</code> file there);
* review and fill the various fields in the location set-up dialog (runway capabilities deserve special focus for more realisitc aircraft intentions in AD solo sessions);
* configure the workspace racks, bays and radar screens to suit the environment and service provided, they will be saved for future runs;
* if using the radar, pin your preferred navpoints (they are restored on every run) and consider creating/importing background pictures to map terrain obstacles, procedure charts, etc. (see [[#Background images|section below]]);
* for solo and teacher sessions at airports especially, build an elevation map (see <code>CONFIG/elev/Notice</code>).
 
For more advanced editable options, read the <code>CONFIG/Notice</code> file.
 
=== Airport scene rendering ===
[[File:ATC-pie-screenshot-towerViewing.png|thumbnail|Tower viewing, following a departing aircraft]]
A '''tower view''' allows you to overlook your airport and the connected or simulated traffic, like a controller from a tower viewpoint. It allows to choose from the tower positions specified in the source data if any (X-plane seems only to allow for one, but feel free to declare more for ATC-pie), otherwise defaults to somewhere over the airport to allow towering everywhere. It is disabled in CTR mode.
There are two ways of activating a tower view. You may let ATC-pie start its own suitably configured FlightGear process, or have it connect to an external viewer manually set up to listen for traffic and accept telnet connections.
 
'''Running internally''' only requires FlightGear installed on your computer. A basic installation is enough, but you will need the [[scenery]] for your airport if you want anything exciting to see (and not sea!). Also, aircraft will only be drawn properly if the appropriate [[Aircraft|models]] are available. In FlightGear sessions, the models required are those flown by the pilots. For all other session types, models are chosen according to the ICAO type designators of the aircraft and the specifications in <code>icao2fgfs</code>. Read <code>CONFIG/acft/Notice</code> to understand how ATC-pie chooses models and liveries for its viewers. Aircraft and scenery locations can be filled in the ''System'' settings dialog if they are not in your [[$FG_ROOT|FlightGear root directory]].
 
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. 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 '''control 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 hook up '''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 from the ''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>CONFIG/Notice</code>) read at start-up and on explicit reload (''System'' menu).
 
Every such 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;
* ''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).
 
=== Background images ===
[[File:ATC-pie-screenshot-backgroundPixmapDrawing.png|thumbnail|Pixmap image example with a topographic map shot around LIMW (Aosta, Italy)]]
[[File:ATC-pie-screenshot-backgroundHandDrawing.png|thumbnail|Hand drawing example with procedures for LSGG (Geneva, Switzerland)]]
Background images allow to decorate:
* radar scopes, with all sorts of maps and useful information about the airspace, terrain or procedures;
* loose strip bays, to move unracked strips over custom backgrounds, e.g. ground charts of the airport.
 
There are two ways to create backgrounds in the program. One for all purposes is to '''import pictures''' (pixmap files like JPEG or PNG, including transparency); the other for radar backgrounds consists in writing '''drawing specification''' files to paint coloured lines and labelled points. This allows to import anything from complex coloured height maps to schematic airspace outlines. The <code>CONFIG/bg/Notice</code> file explains how to import and draw background images.
 
For example, you can map out procedures (SID, STAR, IAD...), grouping them by associated runways. Drawings are generally appropriate for that because specifications allow to directly refer to named points as per the published procedures, and therefore avoid manual positioning. But if you want more than schematic line plots, you should create the picture yourself. Using an image processing tool like ''GIMP'', superimpose a transparent layer on top of a real map canvas, or over a screenshot of your ATC-pie radar with pinned navaids as landmarks, and freely decorate your picture.
 
'''If you have a sector file''' of the format used in VATSIM/IVAO (.sct) for your area, you should try to import it with the "extract drawings from sector file" ''System'' menu tool. It will extract most of the contents around the open location up to the current map range, and translate it to ATC-pie's native drawing format. If you know they are included, it is generally the best option for things like SID/STAR procedures, although the generated files always require some filtering and post-editing. The way to proceed is as follows:
# Run the "extract drawings from sector file" option (''System'' menu) and select the file to extract from. This generates the following files in the <code>OUTPUT</code> directory:
#* <code>ICAO.lst.extract</code>, a menu file for the generated drawings;
#* <code>bg-ICAO-*</code>, the extracted drawings in the native ATC-pie format;
#* <code>bg-extract.err</code>, a log of the errors detected in your sector file (do not be alarmed as they often contain many).
# Import the results:
#* move or copy-paste lines from <code>ICAO.lst.extract</code> to <code>CONFIG/bg/ICAO.lst</code>;
#* move the desired drawing files under <code>CONFIG/bg</code>, adjusting the paths in the <code>.lst</code> menu as you organise subdirectories.
# Post-editing (cleaning)
#: ATC-pie does its best to understand the objects in the sector file and to group things together depending on their type. But not everything can be guessed automatically. This last step is where you filter, merge and split objects, rename points, change colours, etc. to your liking.
#: Each generated drawing section (point list under a colour) is automatically labelled with the line number where it was sourced from in the sector file so you can easily trace it (<code>@nnn</code>). A tool like ''sed'' will help you get rid of all these unwanted suffixes once you have sorted and renamed your objects:
#:: <code>sed -ri 's/ +@[0-9]+$//' file_to_clean</code>
 
NB: ATC-pie does not package or source from sector files directly because their data is not free. Besides, a lot of it is usually redundant with the airport sources (GPL).
 
Tips:
* You can check your image configuration without restarting the program, by reloading the files in their current state from the ''System'' menu (<code>Alt</code>+<code>F12</code>).
* The "image positioning helper" allows to move and resize imported pictures, adjusting the corners visually rather than programmatically if you have no specification for them. All visible pixmap images will be moved simultaneously, so you can work with several at a time if you want to. On dialog box close, a file is generated in the <code>OUTPUT</code> directory for you to copy from.
* An [[OpenStreetMap]] option will take you to the free online map server, centred on your radar centre position. For a quick and dirty start (e.g. for access to coastlines, borders and rivers) you can screenshot the map and use it as a background.


[[Category:ATC-pie]]
[[Category:ATC-pie]]
265

edits

Navigation menu