| The FlightGear forum has a
subforum related to: ATC-Pie support & development
ATC-pie at the KSFO mess
|Developed by||Michael Filhol|
|Initial release||February 1, 2015|
|Latest release||January 18, 2016 (r8)|
|License||GNU GPL v3|
ATC-pie is an air traffic control simulation program allowing to play solo games and connect to FlightGear multi-player networks. It features an en-route (CTR) mode as well as an airport mode where tower viewing is possible. It is essentially designed for realism and simulates many tasks of real-life ATC such as transponder identification, strip rack and sequence management, handovers to/from neighbouring controllers, ATIS recording, flight plan editing, routing and conflict solving.
ATC-pie is free and open source, 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 (except for local tower viewing, which requires FlightGear and the appropriate scenery).
The features listed below have been tested on various Linux versions, Mac and Windows.
Game and environment
Multi-player and network environment:
- Configurable FGMS connections
- ATC handovers: strip exchange with OpenRadar and other ATC-pie instances in range
- Interface with Lenny64's flight plan data base, including in-game FPL retrieval, filing and editing
- In-app session announcement facility to post on Lenny64's popular ATC event page
- Various ATC positions: CTR or free combination of APP, TWR and DEP
- 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/exit/routing points
- Real world METAR updates from selectable weather stations
- Real world declination lookup and true/magnetic distinction
- Airport and navigation data retrieved from the latest X-Plane file set
- Custom additions possible in separate files
- 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
- General and location-specific notepads and settings saved on close and restored on restart
- Customisable colours
- Ignore contacts
Radar and visual contacts
- Full support and mode-dependant behaviour (off, A, C, S)
- Choice of simulated mode for non-equipped aircraft models
- Radar identification assistant (unique squawk link between radar pick-up and strip assignment detection)
- Individual and general cheat modes to override XPDR settings
- Open multiple radar screens
- Show/hide options for navigation points, vectors and route assignments, etc.
- Quick point-to-point heading and distance measuring tool and access to Earth coordinates
- Custom radar background image and image display (e.g. to display maps/charts)
- Custom text labels to annotate radar background
- Configurable horizontal and vertical ranges, and rotation speed
- Primary radar activation (see targets without XPDR signals)
Tower viewing, scene rendering:
- Real-time rendering of the airport scene from tower viewpoint, available in both MP and solo games
- Internally started (requires FlightGear installed) or through connection to an external instance
- Controller pane to orient/zoom view or follow aircraft
- Possible use of custom scenery and aircraft model addition/substitution
- Additional views can be connected
Strips, racks, flight plans:
- Strip drag&drop along and across user-defined racks, with configurable colours
- Strip drop on neighbouring ATCs to hand over
- Link strips to flight plans and radar contacts to merge editable details and inform radar display
- Conflicts between linked elements reported
- Work with local FPL copies and manage sync with online publication
Routes, vectors, conflicts:
- Route parsing, drawing and world map view
- Route presets and quick retrieval between two end airports
- Current leg and next waypoint display with geodesic calculations of headings and distances
- Assign vectors and change routes with direct mouse gestures
- Anticipated conflict warnings and separation incident alarm
- Visible mismatches between assigned vectors and picked up positions (see all-in-one graphics)
- FGCom integration, incl. echo test and possible use of externally running client
- ATIS recording with pre-filled preparation notepad (see feature dialog)
- Multiple and single frequency transmissions
- Frequency-specific sound level selection
- Customisable preset messages and text aliases for context-sensitive replacements
- Message history and single-click message recall
- Hardcore communication sim possible by disabling unknown senders' callsigns
- Senders blacklist management (filter out trolls)
You are the air traffic controller, and players will connect to the network (or AI traffic be simulated in solo mode) with different types of aircraft and transponder equipment. As in real life, the radar is SSR, hence will show you only (unless you cheat or activate the primary radar) 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 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.
Your basic traffic flow and sequence working unit is the strip, each representing a controlled (or soon expected) aircraft. Strips are created, filled with details and moved along and across racks until handed over to a different controller or discarded. Strip details include:
- most importantly, the aircraft's callsign, to be used on the radio;
- information like aircraft type, airspeed, route... that can be specified by the pilots themselves when filing flight plans;
- transponder code and flight parameter assignments (or vectors: heading, altitude/FL, speed).
Strip details can be manually edited, but every strip can also be linked to a flight plan and/or a visible radar contact on the scope screen—a strip can only be linked to one flight plan and one radar contact. Linking to a strip will automatically:
- make the strip display the missing elements made available by the linked aircraft transponder or flight plan;
- label the radar contact dot with the more informed linked details, e.g. assigned altitude.
Any detail mismatch between a strip and its linked flight plan or radar contact will be reported for you to resolve.
To identify an aircraft and link the right radar contact to a strip, an ATC can rely on different things. He can read an aircraft's callsign straight away if its transponder has mode S turned on, tell from reported positions and altitudes, or use a transponder code. For instance, say a VFR traffic makes an initial radio contact giving his 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:
- the strip is assigned a transponder code;
- no other strip is assigned the same code;
- the aircraft is the only one squawking that code in radar range.
ATC-pie identifies such pairs automatically and reports them to you so you can properly link the two and get back to the pilot: "radar identified".
To download the program and learn more about how to use it, read the ATC-pie user guide.