| developedby = Michael Filhol
| initialrelease = February 1, 2015
| latestrelease = 1.
6. 8 ( May 9, 2020)
| writtenin = Python3
| os = Any
'''ATC-pie''' is an [[air traffic control]] simulation program featuring:
* solo sessions, incl. voice instruction recognition and pilot speech synthesis;
multi-player network connections through [[FGMS]];
* tutorial sessions for teacher supervision of an ATC student.
* flight plan filing and editing...
The program is free and open source, and programmed in Python3 for Qt5 hence system- independant. Only Python3 and its Qt5 bindings must be installed. That done, it is meant to work straight away, with no make/compile command to run or external resource to install. The whole world is immediately available on radar. Tower viewing requires the appropriate FlightGear aircraft and scenery.
== Screenshots ==
== Working principles ==
=== General ===You are the air traffic controller, working with or without a tower window or radar scope, depending on your position and local facility. Players will connect to the network ( multi-player), AI traffic be simulated (solo) , or student traffic generated and controlled by the teacher , all with different types of aircraft, [[transponder]] equipment and intentions . As in real life if you use a radar, your main technology is [http://en.wikipedia.org/wiki/Secondary_surveillance_radar SSR], hence unless you cheat or activate the primary radar, it will show you only what you pick up from on-board transponders in its range. This means: * if a transponder is off or out of range, you will not see the aircraft on your radar screen; * if a transponder is on and in range, 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 and your radar capabilities.
=== Strips ===
* information like aircraft type, airspeed, route... that can be provided by the pilots themselves when filing ''flight plans'';
* transponder code and flight parameter assignments (heading, altitude/FL, air speed).
=== Linking strips ===
Every strip can be '''linked''' to a flight plan and
/or a radar contact. A linked strip will automatically:
* display its missing elements when available from the linked flight plan or aircraft transponder;
* populate the linked aircraft
radar tag with useful details, e.g. assigned altitude . Any detail mismatch between a strip and its linked elements will be reported for you to resolve.
=== Radar identification ===
[[File:ATC-pie-screenshot-radarIdentification.png|thumbnail|Radar identification: both matched strip and radar contact marked in blue]]
When using radar, ATCs
can rely on different things to ''identify'' an aircraft and link the right contact to its strip. They can read an aircraft's callsign straight away if its transponder is squawking mode S, tell from reported positions, or use a transponder code.
For instance, say a transponder-equipped VFR traffic makes radio contact giving their callsign and approximate position. ATC will typically pull out a new blank strip and give the pilot a unique transponder code to squawk, writing it on the strip alongside the announced callsign, then wait for it to appear on the radar. This allows for '''radar identification''' of aircraft–strip pairs such that:
=== General ===
Available session types:
* FlightGear multi-player network connections* Solo sessions ( simulated IFR traffic)* Teacher–student tutoring (teacher spawns and manipulates the traffic visible to the student)
For all session types:* Airport mode (for ATC positions such as TWR, GND, APP, DEP at a selected airfiled)
* En-route centre (free positioning of radar, no base airport or runway-related options)
Common data sources:
* Airport and navigation data
retrieved from [http://data.x-plane.com X-Plane] sources ( whole world default file set included)
* Editable aircraft data base (ICAO designators, cruise speeds, WTC, etc.)
* Radar background images and hand drawings (integrated EuroScope/[http://www.vatsim.net VATSIM]/IVAO .sct sector file import)
* [[FGCom]] radio integration for
multi-player and tutoring sessions (possible use of externally running client), incl. ATIS recording (see [[:File:ATC-pie-screenshot-ATISdialog.png|feature dialog]] with pre-filled preparation notepad), multiple frequency transmissions and monitoring , frequency-specific sound level selection
* Radio direction finding (RDF) and integration to radar
* Controller-pilot data link communication (CPDLC)
Public text chat in MP with preset messages, auto-completion, predefined and custom aliases for context-sensitive replacements, sender blacklist to filter out trolls
* Private messaging with other ATCs (text "landlines")
* General ATC chat room
=== Session environments ===
FlightGear multi-player sessions:
* Strip exchange: handovers with other ATC-pie and [[OpenRadar]] instances in range
* Weather: real world METAR retrieval
* Flight plans: interface with [http://flightgear-atc.alwaysdata.net Lenny64's data base] (the ''de facto'' FG standard), incl. run-time retrieval, opening, closing, filing and editing (work on local copies and manage sync with online status)
* In-app announcement of ATC sessions on Lenny64's event page
Solo sessions (AI traffic):
* Strip exchange: handovers to/from virtual ATCs
* Weather: randomised
* Voice instruction recognition (with Sphinx)
* Pilot read-back speech synthesis (with pyttsx)
* Airline choice and custom aircraft appearence
* Configurable airspace rules
* Adjustable difficulty (traffic density)
Tutoring sessions (teacher with student):
* Strip exchange: configurable ATC neighbours and handover supervision by teacher
* Weather: controlled by teacher
* Traffic snapshots and recall to repeat situations with the student
== Using ATC-pie ==
To download the program and learn more about how to use it, read the ATC-pie [[ATC-pie installation guide|installation]] and [[ATC-pie user guide|user]] guides. If you have a question, check the [[ATC-pie FAQ|FAQ]] for help or try the forum.
[[Category:Air Traffic Control]]