ATC-pie installation guide: Difference between revisions

Jump to navigation Jump to search
v1.8.6
(v1.8.5)
(v1.8.6)
Line 1: Line 1:
{{forum|83|ATC-Pie support & development}}
{{forum|83|ATC-Pie support & development}}


{{about|installing and running ATC-pie|a manual on how to use it|ATC-pie user guide}}
{{about|installing and configuring ATC-pie|a manual on how to use it|ATC-pie user guide}}


== Installing ==
== Installing ==


=== Preparing ===
[[ATC-pie]] is free and open source, and programmed in Python3 for Qt5. It is therefore system-independant, but requires Python3 and its PyQt5 library to run. Otherwise, ATC-pie runs straight after download without any compiling (make, etc.) to do.
[[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 ===
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 18: Line 16:
: <code>git clone git://git.code.sf.net/p/atc-pie/code ATC-pie</code>
: <code>git clone git://git.code.sf.net/p/atc-pie/code ATC-pie</code>


=== More to install? ===
I say again: the download/clone alone is not enough; both Python3 and PyQt5 must be installed too. The exact dependencies and required versions are listed in the <code>README</code> file packed in the download.
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.


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.
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. Also read the <code>README</code> file for extra notes on installation.


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]].
For a 3D '''tower view''' (all airport sessions), ''[[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 with:
For an integrated '''ATC phone line switchboard''' (all sessions except solo), install ''PyAudio'', plus ''PyMumble'' for FlightGear and FSD sessions.
* '''voice instruction recognition''' by the AI aircraft, install ''PocketSphinx'' (requires ''PyAudio'');
* '''speech synthesis''' of AI pilots' radio messages, install ''pyttsx''.


For an integrated '''ATC phone line switchboard''' (all sessions except solo), install ''PyAudio'', plus ''PyMumble'' for FlightGear and FSD sessions.
To enhance solo sessions:
* with '''voice instruction recognition''' by the AI aircraft, install ''PocketSphinx'' (requires ''PyAudio'');
* with '''speech synthesis''' of AI pilots' radio messages, install ''pyttsx''.


To enhance FlightGear sessions with:
To enhance FlightGear sessions:
* '''[[CPDLC]]''' and '''full ATC coordination''', including unlimited strip exchange and text messaging, install the ''Python IRC library'' (recommended!);
* with '''[[CPDLC]]''' and '''full ATC coordination''', including unlimited strip exchange and text messaging, install the ''Python IRC library'' (recommended!);
* '''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).


== Running ==
== Running ==


Depending on your system and preference, you might be double-clicking, typing stuff or pulling your hair out. In any case what you must do is run a Python3 interpreter on the <code>ATC-pie.py</code> file from the downloaded directory.
Depending on your system and preference, you might be double-clicking, typing stuff or pulling your hair out. In any case what you must do is run a Python3 interpreter on the <code>ATC-pie.py</code> file from the downloaded directory.
Tip for Windows users: create a shortcut whose "target" is <code>cmd /k Z:\path-to-pie\ATC-pie.py</code>, making sure "start in" is set to the same <code>Z:\path-to-pie</code> and that Python source files are associated with Python3.


=== Two program modes ===
=== Two program modes ===
Line 43: Line 42:
On program start, a welcome launcher window should open, from which you may start a session in either airport (AD) or centre (CTR) mode, i.e. respectively with or without a base airfield.
On program start, a welcome launcher window should open, from which you may start a session in either airport (AD) or centre (CTR) mode, i.e. respectively with or without a base airfield.


The '''airport mode''' is for ATC positions like approach or tower control. In this mode, ATC-pie places the radar at the chosen base airfield, depicts its tarmac and runways, and enables features like tower viewing and runway selection.
The '''airport mode''' is for ATC positions like approach or tower control, or any combination of those. In this mode, ATC-pie centres the radar at the chosen base airfield, depicts its tarmac and runways, and enables features like a tower view and active runway selection.


The '''centre mode''' is designed for en-route control centre simulation. It disables all airport-specific features, and allows to place the radar anywhere on Earth. When selecting this mode:
The '''centre mode''' is designed for en-route control centre simulation. It disables all airport-specific features, and allows to place the radar anywhere on Earth. When selecting this mode:
Line 57: Line 56:
! Option || Effect and argument specification || Default
! Option || Effect and argument specification || Default
|-
|-
| --map-range=''range'' || Only valid with a location code argument. Defines 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 does not affect radar range, which can still be greater or lower (and be changed within sessions).' || 100 in AD mode; 300 in CTR mode
| --map-range=''range'' || Only valid with a location code argument. Defines 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 does not affect radar range, which can still be greater or lower, and be changed within sessions.' || 100 in AD mode; 300 in CTR mode
|-
|-
| --views-send-from=''port'' || Sets 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 FGMS connection port, chosen on session start. || 5009
| --views-send-from=''port'' || Sets 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 FGMS connection port, chosen on session start. || 5009
Line 83: Line 82:
* set up a [[#Airport scene rendering|tower view]] to enable visual contact with your traffic in AD sessions;
* 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 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.
* for FlightGear sessions and realistic radio experience, set up an [[FGCom]] system, and test the configuration from the ''System'' menu.


If you intend to operate often at a given location, it is sensible to:
If you intend to operate often at a given location, it is sensible to:
Line 113: Line 112:


=== Background images ===
=== 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-backgroundPixmapDrawing.png|thumbnail|Pixmap image example with a terrain map around LIMW (Aosta, Italy)]]
[[File:ATC-pie-screenshot-backgroundHandDrawing.png|thumbnail|Hand drawing example with procedures for LSGG (Geneva, Switzerland)]]
[[File:ATC-pie-screenshot-backgroundHandDrawing.png|thumbnail|Text-specified drawing example with procedures for LSGG (Geneva, Switzerland)]]
Background images allow to decorate:
Background images allow to decorate:
* radar scopes, e.g. to display procedure maps or text annotations of the airspace;
* radar scopes, e.g. to display procedure routes or airspace boundaries;
* loose strip bays, to move unracked strips over custom backgrounds, e.g. ground charts of the airport.
* loose strip bays, to work the strips over custom backgrounds, e.g. an airport ground chart.


There are two ways to create backgrounds in the program. One is to '''import pictures''' (pixmap files like JPEG or PNG, including transparency); the other consists in writing '''drawing specification''' files to paint coloured lines and labelled points (radar backgrounds only). This allows to import anything from complex pictures like terrain maps to schematic drawings like airspace boundaries. The <code>CONFIG/bg/Notice</code> file explains how to import and draw background images.
There are two ways to create a background. One is to '''import a picture''' (pixmap file like JPEG or PNG, including transparency); the other consists in writing a '''drawing specification''' file to paint coloured lines, points and text labels (for radar backgrounds only). See <code>CONFIG/bg/Notice</code> to learn how to import and draw background images.


For example, you can map out procedures (SID, STAR, IAD...), grouping them by associated runways so they toggle together on the radar. Drawings are generally appropriate for that because they avoid manual positioning by directly referring to the points named in the published procedures. But if you want more than schematic line plots and text labels, you should create the picture yourself, for example using an image processing tool like ''GIMP'' and a transparent layer over a real map canvas or a screenshot of your ATC-pie radar with pinned navaids as landmarks.
For example, you can map out procedures (SID, STAR, IAD...), grouping them by associated runways so they toggle together on the radar. Drawings are generally appropriate for that because they avoid manual positioning by directly referring to the points named in the published procedures. But if you want more than schematic line plots and text labels, you should create the picture yourself, for example using an image processing tool like ''GIMP'' and a transparent layer over a real map canvas or a screenshot of your ATC-pie radar with pinned navaids as landmarks.


'''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:
'''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 provided extraction tool. It will retrieve most of the contents around the open location up to the current map range, and translate it to ATC-pie's native drawing format, although the generated files always require some filtering and post-editing. If you know they are included, it is generally the best option for things like SID/STAR procedures. 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:
# 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>ICAO.lst.extract</code>, a menu file for the generated drawings;
Line 136: Line 135:
#:: <code>sed -ri 's/ +@[0-9]+$//' file_to_clean</code>
#:: <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).
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.


Tips:
Tips:
265

edits

Navigation menu