From FlightGear wiki
Jump to navigation Jump to search

This page is a collection of questions asked at least twice about ATC-pie. It is a good idea to search through it before repeating a question on the forum or anywhere.

Things "not working"

This aircraft is connected but I am not seeing it on my radar.

As in real life, the main radar technology is SSR, which only shows what is picked up from on-board transponders in its range. It coexists with primary radar, which detects aircraft regardless of transponders but offers no information other than position (angle and distance), i.e. neither of callsign, altitude, type, IAS, etc.

The following cases will therefore prevent you from seeing a connected aircraft:

  • The radars are turned off. Turn on at least a primary radar from the Options menu, or an SSR capability from the Radar tab in the Local settings dialog. Any SSR setting other than "none" will pick up contacts.
  • The aircraft is out of radar range, either too far out or under the radar floor. Check the horizontal range and floor settings ("SFC" will pick up all signals down to the ground). Primary and secondary radars share the same range.
  • Its onboard transponder is turned off (and primary radar is off); see ATC-pie video tutorial 1. You should tell the pilot to switch it on. Otherwise if you accept cheating, you can activate the "radar cheat mode" which will simulate a mode S transponder for all aircraft in horizontal range; see tutorial 3.

Connected pilots do not receive my text messages.

This happens with pre-2017.2 FlightGear clients. Tell those pilots to upgrade! Until they do, you can tick the "legacy protocol" option from the FG system settings. Everybody should then be able to read you, but at the expense of network load.

The aircraft vectoring tool does not come up when I click and drag out of radar contacts.

Your radar contact is not linked. Link it to a strip to enable the vectoring feature. Vectors issued with it will be registered on the strip, and inform the displays according to the current options, e.g. altitude reaching point, unfollowed vector warnings, etc.

FGCom is not working.

First, there are two variants for FGCom and you should note that they are not interoperable: users can only hear and interact with others using the same variant and server. Also note that the standalone variant is deprecated. So before troubleshooting it, you should consider switching to the newer FGCom-mumble variant.

In either case, to troubleshoot:

  • close all open sessions, open a single ATC-pie instance and check the FGCom variant selected in the system settings;
  • check that your sound is on, your volume loud and your system picking up a signal from your microphone;
  • start an FGCom configuration test from the system tools menu;
  • speak in the microphone while the echo test is running, and read below if you cannot hear yourself back.

FGCom-mumble is a plug-in that must be run with an external Mumble client (minimum version 1.4.0) connected to a chosen server. See the project release and wiki pages to download and install it. The control port in ATC-pie must be set to the one FGCom-mumble is listening on.

For the standalone variant (deprecated), the FGCom command in the system settings should be a valid command or path to an FGCom executable. If you have FlightGear installed on your machine, you can point to the FGCom executable already available with it. On Linux, the default "fgcom" command usually does the job. Otherwise, get one from ATC-pie's SourceForge file list. Try the entry from a terminal in the ATC-pie directory to manually check that it runs correctly. Other things you might check:

  • server status: check for responses from the chosen server, e.g. with ping;
  • subprocess error: after turning a first radio on, check the FGCom error logs in the OUTPUT directory;
  • port mess-up: make sure you choose an available port number for each created radio at run time, e.g. do not use a port more than once when running multiple ATC-pie instances!

Tower view is not starting.

Ruling out that FlightGear is not installed at all, your system path settings are probably wrong. From a terminal or a file system navigator, find the right command to start FlightGear and enter it as FlightGear executable from the system settings. Do not add options here; they will be taken care of internally. You may have to enter a FlightGear root directory as well, especially if you have the program files installed somewhere unexpected.

My tower is in the middle of the sea, and aircraft floating/landing on water!

You are missing the FlightGear scenery data for your location, or ATC-pie does not know where it is. If you have downloaded scenery and saved it somewhere, have you tried filling the scenery directory with that location in the system settings? Also read the related section in the installation guide.

Simulated aircraft dip underground or levitate over taxiways.

Do you have a ground elevation map for the location? Quoting from CONFIG/elev/Notice: "When no elevation map is found for an airport, the field elevation value is used everywhere on the ground. This should be OK for a rough approximation on flat terrain, but ground traffic will not follow any slopes, thus may appear as floating above the ground, or dipping into it." Read the full notice for instructions on how to build your elevation map.

Once you have an elevation map, the next focus is on the FlightGear aircraft models. Because each model has its own coordinate system chosen at developer's discretion, ATC-pie must be given the height difference between each model's origin and the aircraft touch-down point (gear wheels) to position aircraft more accurately. You do this on a per-model basis with ":height" specifications in CONFIG/acft/icao2fgfs. Read the associated Notice section for more information.

Phone lines have broken, choppy or dragged out sound

You and the other parties must adjust microphone sensitivity. Toggle the phone squelch adjustment box from the system menu and tune the spinbox next to the "call" button in the ATC coordination panel. Lower values will decrease the threshold for sound pick-up and likely break the sound less, but can generate more lag in the communications. The right balance depends on your local configuration, so a few test calls with other connected ATCs will be necessary to decide on the best acceptable value.

I cannot connect to my teacher as a student.

Using IPv4 addresses, this typically happens when the teacher is in a local area network behind a router. It is a common setup for home internet, in which the teacher's actual host address is not publicly accessible from outside his private network.

If you know what IPv6 is and that your network configuration will allow it, try using IPv6 addresses. Otherwise, the solution is either:

  • for the teacher to configure his router to forward TCP packets from his router's IP and chosen service port to his local host address;
  • or to create a virtual network, using a third-party VPN service.

What is ...? Why is ...? What value/setting for ...?

What "social name" should I use for FlightGear/FSD sessions?

Choose any name you would like to be recognised by on the network. In ATC-pie, it will appear in the tool tip over your callsign for connected ATCs who see you. This feature is only social in the sense that it does not refer to an account or to anything technical, but it makes sense as typical ATC callsigns (e.g. "VHHHtwr") remain mostly anonymous. Use this field to identify yourself on the network.

What is the purpose of the flat "strip shelf" button in the strip panes?

More than a button, the strip shelf is where you should drop the contacts you release without a handover, e.g. parked traffic shutting down, VFR traffic flying out of your airspace, etc. Clicking on the shelf allows to browse the previously shelved strips, and to recall them, for example if shelved inadvertently.

What is "radio direction finding"?

RDF is a system that detects the horizontal direction of radio sources when signals are received. Its most common uses are:

  • to locate ACFT making new radio contacts on their first transmissions;
  • to give bearings to the airport to disoriented VFR pilots.

Setting up your location as equipped with RDF will essentially provide two things:

  • a status bar indication of the form "hdg/qdm" in the main window, where "hdg" is the heading of the currently detected radio signal (direction to source, or "---" if none), and "qdm" the opposite heading of the last received signal (bearing from source, displayed until the next signal is received);
  • the option to draw a line on radar scopes when a signal is received, making it easy to visualise the transmitting ACFT as the line should hit its target.

Are the vector headings true or magnetic?

Heading displays in ATC-pie are mostly magnetic so they can be read out to pilots. The exceptions are the navigator and handover list tool tips, which show true radial headings from the radar position, and the teacher's wind section to match the generated ATIS string.

Also note: all directions are geodesic, i.e. initial headings to take on a great circle.

How do approach spacing hints work?

When the option is turned on, an approach spacing hint will show on every strip verifying the following conditions:

  • it is racked in sequence behind another marked with the same (recognised) destination;
  • both are linked to an airborne aircraft with a known ground speed;
  • the time hint value (see below) does not exceed 30 minutes.

The first hint shown on a strip is an estimated time difference between the linked aircraft touchdown and that of the traffic ahead (see the quick reference for more details: Display conventions for strips). To work it out, ATC-pie assumes:

  • both present ground speeds;
  • for the aircraft ahead, a straight path to destination;
  • for the linked aircraft, a path straight to the one ahead first, then straight to destination.

Caution: some judgement is required depending on the aircraft positions, because the actual paths to expect can vary from those above. For example, the interpretation of the hint should be different whether both aircraft are aligned with the runway or coming from opposite directions.

What do the various markings along the approach centre line mean?

The regularly spaced groups along a centre line represent altitudes on the approach plane. Each group sums up to an AMSL value in accordance with the set flight path angle (also see Display conventions in the quick reference):

  • straight line = 1,000 ft;
  • solid diamond = 5,000 ft.

The other markers drawn with thicker lines are the positions of the ILS marker beacons (OM, MM, IM), the line pattern representing the sound triggered by the beacon in the pilot's headset. They are sourced on program start-up from the navigation data (CONFIG/nav/navaid.dat).

Why do I keep getting runway incursion alarms?

Because you have the runway occupation monitor turned on (Options menu), while not using your runway boxes. The alarm triggers when the radar detects traffic stepping on a runway in either of the following situations:

  • the runway is active (marked in use) and no strip is boxed for it;
  • it is reserved but there is already traffic on the runway;
  • it is reserved for a different aircraft: the boxed strip is linked to a contact that is not the entering aircraft, or the aircraft is linked to a strip different to the one boxed.

Turning the runway occupation monitor off will deactivate all radar warnings regarding runways. If you are interested in the strip boxing and visual runway highlighting system but bothered by the alarm sound, you can mute the sound notification by unticking it in the general settings.

Where is ...? How to ...?

Can I draw SID and STAR procedures on the radar?

Yes, and virtually anything else, using background images. To learn about those:

How do I assign SIDs and STARs to aircraft?

This question is asked quite a lot more than it is relevant to a real controller's task...

What people seem to be after when asking this question is a way to organise inbound traffic on arrival, using STARs to manage multiple approach paths. The way to handle this is to stack your inbound strips on racks named after your STARs. Racks are indeed above all meant for efficient traffic sequencing. Every rack represents its own sequence of ordered aircraft, which is perfectly suited to control separate approach paths in parallel. With this technique, placing a strip on a STAR-named rack basically serves as the "assignment" itself. Similarly, runway-specific racks can keep track of separate landing sequences at large airports. Then you can set a colour to each rack for quick identification on the scope. Besides, turning on the approach spacing hints will help you optimise the separation times in the sequence all the way to touchdown.

If you otherwise meant to plan routes before they are flown, you are looking for something you should not be doing. Routes are lists of waypoints and instructions to follow between the two end airfields. Normally pulled straight from properly filed flight plans, routes are printed on strips prior to departure, then modified as the flights progress and passed along with handovers. Standard departure and arrival procedures (SIDs and STARs) can be referred to in those routes, but only by their entry or exit navpoints. They should not contain full procedure names like FUBAR1A since those depend on the active runways and might change any time before flying the corresponding leg. For example, routes ending with a STAR should end with "FUBAR STAR", which means that waypoint FUBAR is an entry point from which a published STAR must be followed. The keyword "STAR" is in fact a mere specification for the last route leg. Similarly, routes of the form "SID DUMMY ..." specify their first leg as a standard departure to the first waypoint DUMMY. "SID" and "STAR" keywords are recognised by ATC-pie and accounted for in the second line of the radar tag when appropriate (see feature note on routes).

One meaningful wish regarding this question is for easy reference in text chat messages. Firstly, using racks in the way suggested above, you can use the $rack alias which is substituted by the name of the rack on which the current strip selection is stacked. Otherwise, if the selected strip's route is found to contain "SID"/"STAR" keywords placed in the first/last route leg specifications, text aliases $wpsid and $wpstar will respectively expand to the first/last en-route waypoints of that route. For example, assuming route "SID DUMMY more route spec FUBAR STAR" in the selection, $wpsid will be replaced with "DUMMY" and $wpstar with "FUBAR". Now if you specifically want to assign a full procedure name like FUBAR1A to a contact and refer to it in a generic text chat message, include a line "sid=FUBAR1A" in your strip comments. It will pop up with the strip mouse-over tooltip, and create a custom $sid alias that will automatically be expanded in your sent messages when that strip is selected.

How to set the transition level?

You do not. You can however set the transition altitude in the location settings if your airport specification file does not already include one.

The transition level displayed in the weather analysis is the lowest flight level that is still above the transition altitude. This does not mean the lowest to be expected in ATC clearances, which may be higher, e.g. for more vertical separation on either side of the transition layer or due to coordination with neighbouring zones and fields.

Can I look up ILS frequencies?

Yes, in the environment info dialog.

Besides, you can create aliases with the local notepad for a quick and integrated way of sending them through text chat, which will be saved when you close ATC-pie. For example, use the following format, one runway per line: ils05=111.11 MHz. See custom text aliases for more.

The airport/navigation data is outdated. How can I update it?

The included airport data (taxiways, parking positions, frequencies, etc.) is the latest but outdated world-wide apt.dat file compiled by X-plane ages ago. We keep it there because it allows to run ATC-pie anywhere in the world without requiring external data, but for any serious work at a specific airfield, you should provide the latest source available on the X-plane airport gateway, directly accessible from the System menu. Extract the apt.dat file from the downloaded package, rename it after the airport's ICAO code keeping the extension (e.g. KJFK.dat), and place it in CONFIG/ad (see the Notice there). Alternatively, for a quick manual touch-up of the old data, you can use the locally extracted file (see OUTPUT/Notice).

The included navigation data (navaids, fixes, airways, etc.) is the latest GPL version seen for each relevant X-plane file, also all out of date today. You should provide more recent navigation data, as explained in CONFIG/nav/Notice.

How do I customise the GUI and colours?

To change the radar or strip drawing colours, edit the CONFIG/colours.conf file. Each line specifies the paint colour for an object type, in a typical hex RRGGBB (red-green-blue) format or as an SVG colour keyword name like "white". To customise the main session window, place a Qt stylesheet named main-stylesheet.qss in the CONFIG directory. ATC-pie will apply it to every session window. While you are working on your look and feel, use the reload feature from the "System" menu to avoid restarting after every change.

Send us screenshots and share your files if you find a setup looking really cool! :-)


What's with the funny name?

ATC-pie is written in Python, and I reckoned that the pyXXX naming habit was becoming a little dull, so I merely switched things around. You can surely do the rest of the math in terms of spelling, and later impact on the logo.

Why is the learning curve so steep? People would use your program more if you did/provided [...]

Often continued with: (you must understand that) this is not VATSIM!

We do have a wish list and will consider any feature or help request. However, though it has a few cheats, ATC-pie has always choosen realism as a criterion for implementation and design, over the mere incentive of converting otherwise happy users of other programs. It is a good thing that different philosophies and work flows are available out there, and there would be much less interest in having them all copy each other, fighting over users instead of understanding that not all of them wish for the same experience. If serious simulation or learning new skills sound like threats to fun for you, you have a perfectly valid reason not to opt for ATC-pie.