About Vice

vice is an air traffic control simulator, focused on TRACON. It presents a STARS-like interface, but with simulated traffic and other controllers. It also supports multiple users, where each person controls a different position at a facility.

vice supports departure and arrival control scenarios in numerous TRACONs and ATCT/TRACONs, currently: A11, A80, A90, AAC, ABE, ABQ, AGS, ALB, ASE, AUS, AVL, BGR, BHM, BIL, BNA, BOI, BTV, BUF, C90, CHS, CID, CLE, CLT, COS, CPR, CVG, D01, D10, D21, DAB, F11, GSO, GSP, GTF, HNL, I90, IND, JAX, L30, M98, MCI, MDT, MIA, MKE, MYR, N90, NCT, OGG, OKC, P31, P50, P80, PCT, PHL, PIT, PVD, PWM, R90, RDU, S46, S56, SAT, SAV, SBA, SBN, SCT, SDF, SGF, SYR, TPA, and Y90. New scenarios are regularly added. Adding scenarios at additional airports is a matter of writing JSON configuration files that describe them; see the Facility Engineering guide for documentation about how scenarios are defined.

There is a discord server for vice: the Vice ATC Simulator server, for general discussion, bug reports and feature requests, and for discussing facility engineering.

Documentation for the current beta build of vice (may be) found here.

Getting Started

The radar client interface that vice provides is based on STARS. For familiarity to VATSIM controllers, vice generally follows the keyboard command scheme implemented in CRC's STARS implementation; see the discussion of vice's STARS emulation below for more information.

The first time you launch vice, a window is shown for configuring the simulation. (After the first time, the window can be brought up by clicking the "replay" button in the menubar: .) A number of scenarios are available, some departure-only and some including both departures and arrivals. Here is an example:


After selecting an ARTCC, the available TRACONs and ATCT/TRACONs in that ARTCC are shown. Selecting one of those gives a number of scenarios to choose from. Here the ZNY ARTCC has been selected and then the PHL ATCT/TRACON. After choosing a scenario and clicking the "Next" button, a window with further settings is shown:


In the second configuration window, you can specify your initials, used to identify yourself to other controllers, as well as various additional settings. You can also adjust how heavy the traffic is; here, the departure rate settings are shown. (The PHL scenario only includes the Philadelphia Airport, though many other scenarios include multiple airports.) These rates are specified in terms of aircraft per hour, so an ADR of 30 corresponds to one aircraft departing every two minutes (on average). If you'd like an arrival-only scenario, for example, just set all of the departure rates to zero.

For arrivals, the "Go around probability" slider allows setting the probability that each arrival goes around. You may also select "Include random arrival pushes", which will periodically bump up the rate of arrivals to increase the challenge of vectoring aircraft. "Push frequency" sets how often arrival pushes happen and "Length of push" sets how long they last before traffic returns to regular levels.

After you have configured the simulation, click "Create" and you will have a STARS scope and flight strip window to work with. Use the usual STARS commands as appropriate (to initiate track, accept handoffs, handoff to other controllers, etc.), and the additional ATC commands below to issue control commands to aircraft.

After the simulation starts, you may click on the button in the menubar to show a window with information about the scenario, including the active controllers, the departures, arrivals, approaches and overflight routes, and airspace awareness rules. For this PHL scenario, four arrivals, two approaches, and three departures are active. Other scenarios may be more complex.

approach list

The approach codes—here, "27R" and "35"— are used in vice's aircraft control commands like "expect approach" and "cleared approach".

The Messages and Flight Strips windows can be toggled on and off using the and buttons in the menubar. Both windows can be repositioned and resized freely, and their layout is saved across sessions.

A number of buttons are available in the menu bar at the top of the window:

  • / : pause or resume the simulation.
  • : opens the window to select a new scenario and set its parameters.
  • : open a window that allows changing various settings. The most useful one is the simulation rate: you can speed up time during slow times or to increase the challenge.
  • : show the window that lists the currently active departures, arrivals, and approaches.
  • : opens a window that shows a summary of vice's ATC commands and frequently-used STARS commands.
  • : open a window with controls for launching aircraft, either automatically or manually.
  • : toggle the Messages window, which displays system messages and alerts.
  • : toggle the Flight Strips window.
  • : open this webpage to review vice's documentation.
  • : display information about the version of vice you have installed.
  • : join the vice Discord.
  • : Toggle full-screen mode.

When you exit vice, it remembers everything going on—all of the aircraft in flight, the instructions they have been given, etc. The next time you launch vice, it loads all of that back in and you can continue where you left off. If you'd like to start something new, just click and configure a new simulation.

When vice is paused, you can hover the mouse above a radar track to see information about the instructions the aircraft has been given so far—for example, altitude and speed assignments, whether it has been sent direct to a fix, the approach it has been assigned, etc. An example is shown below. This information is especially useful when resuming a vice session after you have been away from it for a while.


If you are signed in to Discord, vice can automatically update your activity status there with information about your current vice session (the number of arrivals and departures, the position you're controlling, etc.) When you first launch vice you are given the option to disable this feature if you would like. The settings window, available by clicking in the menubar, can also be used to enable or disable this feature.

Drawing Routes

vice can draw the active departures, approaches, and arrivals for the current simulation. This can be helpful when studying those for an airport, since they are drawn directly on the radar scope with annotations that give the fixes, any altitude or speed restrictions, and procedure turns.

To toggle whether a route is drawn on the scope, click the checkbox on the left next to it in the information window that is shown at the start or after clicking on the button in the menubar. For example, here is how the HVN RNAV Runway 2 approach is rendered:

manual aircraft launch window

We can see the procedure turn at PEPER and that it is both the IAF and the IF; altitude restrictions at both SALLT and PEPER, that SALLT is the FAF, and that arrivals from KEYED will not fly the procedure turn.

Launching Aircraft

When a new simulation starts, vice automatically launches new departures and arrivals based on the departure and arrival rates set in the "New Simulation" window. During a simulation, clicking on the departing plane icon in the menubar opens a window that allows more control over aircraft launches and also for issuing releases for airports where "hold for release" is in effect.

The rates for automatic launches can be adjusted in this window. Alternatively, aircraft can be launched manually. If manual launches are selected, the window shows all of the available departure runways and exits as well as all of the arrivals, as shown below. Clicking the aircraft icon for a departure or arrival causes the aircraft shown to be launched. If you'd like a different aircraft for the next launch (for example, to have a heavy aircraft), click the redo icon until you're happy with the selection. The window also shows the elapsed time since the launch of each type as well as how many miles in trail (MIT) there would be if the next aircraft was launched. To delete all of the aircraft from the simulation and restart, click the trash icon: .



Multiple Controllers

With vice you can also have multiple controllers working aircraft together. Select "Create a sim on the public vice server" in the "New Simulation" window and you can select an ARTCC, ATCT/TRACON, and scenario in the same way that you do with a single controller. For multi-controller scenarios, there are some additional settings, shown beneath the list of scenarios:


If you sign in with instructor/RPO (remote pilot operator) privileges, then you are able to issue control instructions to all aircraft. Each multi-controller simulation also has a name associated with it; vice chooses a random one (above, it's "plenty-manufacturer"). These names can be used so that you can tell other people which simulation to choose in order to join you. You may also enable "Require password" and enter a password for the simulation so that only people you allow can join it.

Selecting "Join a sim on the public vice server" shows a list of the simulations that are currently available, including how many controllers are signed into each one. Note that the simulation names are shown in the first column. After selecting one, the currently unoccupied radar workstations (TCWs) are shown, though if you select "Join as relief", you may connect to a TCW that is already in use; this allows relieving another controller, who may then disconnect after briefing you. After selecting a TCW, you can select one or more terminal control positions (TCPs) that you will be responsible for; your TCPs determine the airspace and which handoff flows are your responsibility. vice also allows you to join a simulation as an observer, in which case you have no control capabilities; to do so, select a free TCW and then do not select any TCPs.


ATC Instructions (Keyboard)

A variety of instructions can be issued to aircraft by an aircraft controller. To issue an instruction, first press the [TAB] key. This will place the STARS radar into "target generation" mode and the characters "TG" will appear above the text input area (which is by default on the left side of the STARS window, towards the top. STARS reverts to normal command entry mode after a valid ATC instruction is entered, though target generation can be locked by pressing [SHIFT][TAB].

The commands below can then be entered to issue control commands to aircraft. As you enter commands, they will be shown in the STARS input area. You can correct errors with the backspace key or press the [ESCAPE] key to exit target generation mode.

To indicate which aircraft should be given a command, you can either enter a command and click on an aircraft's radar track in the STARS window or you can enter the aircraft's callsign followed by a space before the command, and then press the "enter" key. You can also give just the callsign suffix, if that is enough to unambiguously identify a single aircraft. The callsign of the last aircraft you issued to a command to is shown after "TG" when target generation mode is activated. If you'd like to give another instruction to that aircraft, you can skip entering its callsign. Entering another aircraft's callsign causes the command to be issued to that aircraft instead.

After you issue a command, the virtual pilot's readback is shown in the readback window below the STARS window. After receiving an instruction, the aircraft will start following that instruction, to the best of its abilities. Unlike VATSIM, the pilots will always do exactly what you tell them to.

If you'd like to issue multiple commands to an aircraft at once, enter the commands one after another with a space between them. To open a window that shows the available ATC commands when using vice, click the button in the top menubar.

The following commands relate to the aircraft's lateral route:

Command Function Example
Hheading Directs the aircraft to fly the specified heading. It will turn in whichever direction gets it to that heading most quickly. If no heading is given, the aircraft is instructed to fly present heading. H050, H
Lheading Directs the aircraft to turn left to the specified heading. L130
Rheading Directs the aircraft to turn right to the specified heading. R210
TdegreesL Directs the aircraft to turn the specified number of degrees to the left. T10L
TdegreesR Directs the aircraft to turn the specified number of degrees to the right. T20R
Dfix Directs the aircraft to proceed direct to the given fix. (The specified fix must be in the aircraft's flight plan, including on the approach assigned to it.) DWAVEY
Dfix/Hheading Directs the aircraft to depart the specified fix at the given heading. (The specified fix must be in the aircraft's flight plan.) DLENDY/H180
Hfix

Directs the aircraft to hold at the specified fix using a published holding pattern. (The specified fix must be in the aircraft's flight plan; for one that is not, first give them Dfix to add it and send them direct to it.)

There are three ways to cause an aircraft to exit a hold: 1. Clearing them for the approach, if the hold is part of an approach assigned to the aircraft. 2. Giving "direct FIX". 3. Assigning a heading. In the first two, the aircraft will finish flying the current lap in the hold before proceeding; if a heading is given, they will turn to the heading directly.

HJIMEE
Hfix/option/option

Directs the aircraft to hold at the specified fix using controller-specified holding parameters. (The specified fix must be in the aircraft's flight plan.)

Options may be:

  • L: left turns
  • R: right turns (default)
  • xxNM: xx nautical mile legs
  • xxM: xx minute legs (default: 1 minute)
  • Rxxx: inbound course on the xxx radial to the fix (required)

The radial option (Rxxx) is required for controller-specified holds. Multiple options of the same type (e.g., both L and R, or both distance and time legs) are not allowed.

HJIMEE/L/5NM/R090
HJIMEE/R270/2M
SH Directs the aircraft to say its current heading. SH

And these commands are related to altitude:

Command Function Example
Calt Directs the aircraft to climb to the specified altitude, which is given in hundreds of feet. If the aircraft is changing speed, both the speed change and climb are simultaneous. C170
TCalt Directs the aircraft to climb to the specified altitude, given in hundreds of feet, after it finishes speeding up or slowing down to meet a controller-specified speed. TC170
Dalt Directs the aircraft to descend to the specified altitude, given in hundreds of feet. D20
TDalt Directs the aircraft to descend to the specified altitude, given in hundreds of feet, after it finishes speeding up or slowing down to meet a controller-specified speed. TD20
Aalt Directs the aircraft to maintain the given altitude given in hundreds of feet, climbing or descending if necessary. If the aircraft is changing speed, both the speed change and climb are simultaneous. A120
ED Directs the aircraft to expedite the descent to its assigned altitude. ED
EC Directs the aircraft to expedite the climb to its assigned altitude. EC
Cfix/Aaltitude/Sspeed

Directs the aircraft to cross the specified fix at the given altitude and speed. Either one or both of A and S may be specified.

Altitudes may be given as single altitudes (corresponding to "at"), an altitude and a plus sign ("at or above"), an altitude and a minus sign ("at or below"), or a range of altitudes separated by a minus sign ("between").

CCAMRN/A110+
CVS Directs a departure to "climb via the SID". CVS
DVS Directs an arrival to "descend via the STAR". DVS
SA Directs the aircraft to say its current altitude. SA

These commands are for aircraft speed:

Command Function Example
Sknots Gives the aircraft a speed restriction. If the restriction is given after an aircraft is cleared for an approach, the speed restriction is in effect until 5 mile final. If no speed is given, then the aircraft is instructed "cancel speed restrictions". Speed changes happen at the same time as any required altitude change. S210, S
TSknots Gives the aircraft a speed restriction to be applied after the aircraft climbs or descends to the most recent controller-specified altitude. As with S, speed restrictions are canceled at 5 mile final. TS210
Mmach Gives the aircraft a mach speed restriction. M78
TMmach Gives the aircraft a mach speed restriction to be applied after the aircraft climbs or descends to the most recent controller-specified altitude. TM78
SMIN Directs the aircraft to maintain its slowest practical speed. SMIN
SMAX Directs the aircraft to maintain its maximum forward speed. SMAX
SPRES Instructs the aircraft to maintain its present speed. SPRES
Skts+ Assigns a speed floor: aircraft should fly at or above the specified speed. Currently treated as a standard speed assignment. S180+
Skts- Assigns a speed ceiling: aircraft should not exceed the specified speed. Currently treated as a standard speed assignment. S180-
SS Directs the aircraft to say its indicated airspeed. If above its transition altitude, it will respond with its Mach number instead. SS
SI Forces the pilot to give their indicated airspeed, regardless of their altitude. SI
SM Directs an aircraft to say its Mach number. This will only work when they're above their transition altitude. SM

The transponder is managed using these commands:

Command Function Example
SQcode Instructs the aircraft to squawk the given beacon code. SQ1200
SQS Directs the aircraft to squawk "standby" mode. SQS
SQA Directs the aircraft to squawk "altitude" mode. SQA
SQON Directs the aircraft to turn on their transponder and squawk mode-A. SQON
ID Instructs the aircraft to "ident". ID

And these commands are instructions related to changing radio frequencies and contacting different controllers:

Command Function Example
ATIS/letter Tells the pilot the current ATIS information letter. (This is mostly useful if the pilot reports having an out-of-date ATIS in their initial contact.) ATIS/B
FC "Frequency change": change radio frequency to the controller the aircraft was handed off to and contact them. FC
CTTCP Contact the controller with the specified TCP. This is generally used for VFR aircraft that contact the wrong controller asking for flight following. CT2J
TO Directs an arrival to contact the tower. TO

A variety of commands are available related to approaches—specifying them and clearing aircraft for them.

Command Function Example
Eapproach Tells the aircraft to expect the specified approach. This command must be used before an aircraft is cleared for an approach and it also adds the approach fixes to the end of the aircraft's route. EI2L
E Re-issues expect for the already-assigned approach, telling the pilot to standby. E
Capproach Clears the aircraft for the specified approach. The aircraft must have been told to expect the approach before it is cleared for it. CI2L
C Clears the aircraft for the approach that was previously assigned. C
Afix/C[approach] Clears the aircraft for the approach when it passes the given fix. The approach identifier is optional; if not specified, uses the previously-assigned approach. AROSLY/C
Afix/I Directs the aircraft to intercept the localizer when it passes the given fix. The aircraft must have been told to expect an approach before this command is given. AROSLY/I
CAC Cancels approach clearance for an aircraft. CAC
CSIapproach Clears the aircraft "straight in" for the specified approach. (This command is only useful for approaches that include procedure turns.) The aircraft must have been told to expect the approach before it is cleared for it. CSII6
I Directs the aircraft to intercept the localizer (at which point it will follow the localizer's lateral path but not descend until it is cleared for the approach.) I

For VFR aircraft that have been given vectors or altitude constraints, a few special instructions are available.

Command Function Example
A "Altitude your discretion, maintain VFR". A
RON "Resume own navigation". RON
RST "Radar services terminated, squawk VFR, frequency change approved". RST
GA "Go ahead" - respond to a VFR request. GA

Finally, a few miscellaneous commands are available.

Command Function Example
X Deletes the specified aircraft from the simulation. This command is useful when one starts going down the tubes. X
P Toggles Pause/Unpause P
Left Shift + Tab Toggles TGT GEN Lock Left Shift + Tab
/message Displays the given message in the message log of all controllers /2A IS CLOSING DINNER TIME

ATC Instructions (Spoken)

There is also support for issuing aircraft commands by speaking out loud (via speech to text, or STT). This is very much a work in progress but it is progressing quickly.

STT works best if you have a decent microphone and are not in a noisy environment (music or TV in the background, etc.) Results will generally be better if you have a discrete GPU in your computer (or a laptop with a powerful laptop GPU); parts of STT run on the GPU. In order to have good response times on machines with slower (or no) GPUs, we have to do less processing on spoken text and thus have more inaccurate transcriptions.

A few options related to STT may be controlled via the settings menu ( in the menubar):


It's important to make sure that the correct microphone is selected, if you have more than one (e.g. a headset and the built-in microphone). By default, the push-to-talk key is ;, though this can be changed to another key. The model allows selection of different speech-to-text transcription models; vice tries to choose one that gives a reasonable balance of accuracy and speed for your system. If you try a different model and are happier with the overall experience, please report your findings on the vice discord!

vice's STT system expects that proper (US FAA) phraseology will be used to issue aircraft instructions, specifically Section 2-4: Radio and Interphone Communications for the basics and then other instructions as specified in the 7110.65. It tries to be flexible to allow minor deviations as are used in practice (as well as to allow errors in the STT transcription of the audio), but if your phraseology is highly non-standard, you will likely not have a good experience.

STT is also mostly limited to the control commands that vice supports in general (i.e., those described in the previous section), though there are a few commands that are STT-only. More details about expected phraseology and supported commands in specific scenarios are in the following.

The following instructions are currently supported:

Altitude

Type Phraseology
Assign Altitude Maintain (altitude) / Descend and maintain (altitude) / Climb and maintain (altitude) / Altitude your discretion (for VFRs).
Altitude at Fix Cross (fix) at (altitude) / Cross (fix) at or above (altitude)
Altitude after Speed ...then climb and maintain (altitude) / ...then descend and maintain (altitude), after a speed assignment—the aircraft will climb/descend after reaching the speed.
Expedite Altitude Expedite descent / Expedite climb
Say Altitude Say altitude

SIDs and STARs

Type Phraseology
Climb/Descend Via Climb via the (SID) / Climb via SID / Descend via the (STAR) / Descend via STAR

Lateral Navigation

Type Phraseology
Heading Turn left heading (heading) / Turn right heading (heading) / Fly heading (heading)
Present Heading Fly present heading
Turn Degrees Turn (number) degrees left / Turn (number) degrees right
Say Heading Say heading

Speed

Type Phraseology
Assign Speed Reduce speed to (speed) / Slow to (speed) / Increase speed to (speed) / Speed (speed) / Maintain (speed) knots
Assign Mach Reduce mach to Mach (mach) / Slow to Mach (mach) / Increase to Mach (mach) / Mach (mach) / Maintain mach (mach)
Speed at Fix Cross (fix) at (speed) knots / Cross (fix) at Mach (mach)
Speed after Altitude ...then reduce speed to (speed) / ...then increase speed to (speed) / ...then speed (speed) / at (altitude), increase/reduce speed to (speed) / ...then reduce to Mach (mach) / ...then increase to Mach (mach) / ...then speed Mach (mach) / at (altitude), Mach (mach): after an altitude assignment, then the speed adjustment will be made after the aircraft reaches the altitude.
Minimum/Maximum Speed Slowest practical speed / Slow to minimum practical speed / Maximum forward speed / Best forward speed / Reduce to final approach speed
Cancel Speed Cancel speed restrictions / Resume normal speed / Speed your discretion / Comply with speed restrictions / Delete speed restrictions / No speed restrictions
Maintain Present Speed Maintain present speed / Present speed
Speed Or Greater Maintain (speed) or greater / (speed) or better
Do Not Exceed Do not exceed (speed)
Say Speed Say speed / Say airspeed
Say Mach Say Mach / Say Mach number
Say indicated airspeed Say indicated / Say indicated airspeed

When a speed instruction is given after an approach clearance, the following qualifiers may be added:

  • "... until X mile final"
  • "... until X DME"
  • "... until (fix)" (generally, the FAF).

Altitude

Type Phraseology
Direct to Fix Direct (fix) / Proceed direct (fix) / Cleared direct (fix)
Depart Fix Depart (fix) heading (heading)
Hold Hold at (fix) / Hold (direction) of (fix) / Hold at (fix) as published. For non-published holds, on the (number) radial, (number) minute legs and left/right turns may also be specified.

Approaches

Type Phraseology
Expect Approach Expect (approach) / Vectors (approach) / Vectors for (approach). The approach specified may include a LAHSO, e.g. "expect ILS runway 22 left approach, land and hold short runway 31 left".
Cleared Approach Cleared (approach) / Cleared straight in (approach) / At (fix) cleared (approach). Note: a speed assignment after an approach clearance is interpreted as until 5 DME.
Intercept Localizer Intercept the localizer / Join the localizer / At (fix) intercept the localizer
Standby Approach Standby [for] [the] approach
Expect Approach (standby) Expect [the] approach
Cancel Approach Cancel approach clearance

VFR Aircraft

Type Phraseology
Squawk Beacon Code Squawk (code)
Ident Ident
Transponder Mode Squawk standby / Squawk altitude / Squawk normal
Go Ahead / Say Request Go ahead / Say request (after a VFR request)
Resume Own Navigation Resume own navigation
Radar Services Terminated Radar services terminated, frequency change approved

Handoffs

Type Phraseology
Contact Tower Contact tower / Contact (facility) tower (frequency)
Frequency Change Contact (facility) (frequency)
ATIS Information (letter) is current / Advise you have information (letter)

Traffic Calls

Type Phraseology
Traffic Advisory Traffic (o'clock), (miles), (aircraft type), (altitude) / Traffic (o'clock), (miles), (aircraft type), (altitude), report in sight
Visual Separation Maintain visual separation from the traffic (after traffic has been reported in sight).

Corrections

If STT misidentifies the callsign and sends a command to the wrong aircraft, you can correct it by saying "negative, that was for (correct callsign)" followed by the command for the correct aircraft. This will undo the command sent to the wrong aircraft and apply the new command to the correct one. Do not repeat the wrong aircraft's callsign—this avoids confusing them.

Type Phraseology
Callsign Correction Negative, that was for (callsign). (Callsign), (command)—e.g., "Negative, that was for Delta 456. Delta 456, turn left heading 270." This undoes the previous command (which went to the wrong aircraft) and issues the new command to the correct aircraft.

Advisories

Type Phraseology
ATIS ATIS (letter) is current / advise you have information (letter)

Miscellaneous / Filler

The STT system is aware of variety of phrases that may be part of instructions or controller replies but do not correspond to instructions themselves. These include:

  • "Radar contact"
  • "Roger"
  • "Good day", "Seeya", "Hello"
  • "Altimeter ..."

Facility Engineering

Documentation for creating and editing vice scenario files, facility configurations, and video maps is available in the separate Facility Engineering guide.

Installation

Installing vice is straightforward on Windows, Mac, and Linux!

Windows

To install vice on Windows, download and launch the installer below. After installation, vice will be available in the Windows Start menu and a shortcut will be added to your desktop.

Your browser may warn about the installer being from an unknown publisher and when you run the installer, Windows will put up a window informing you that it has protected your PC and prevented the installer from running. Click "More Info" and then "Run anyway" to proceed with installation.

Download Vice v0.14.1 for Windows

Macintosh

On a Mac, download the zip file below; it contains a universal binary that runs on both Intel and Apple CPUs. Note that MacOS Big Sur or a more recent version of OSX is required. After opening the zip file, drag Vice.app to your Applications folder to install it.

Download Vice v0.14.1 for Mac

Linux

Vice is packaged as a flatpak and published to flathub. Install it directly from GNOME Software/KDE Discover or follow the instructions from flathub. Run it from your application launcher or by running flatpak run io.github.mmp.Vice.

Get it on Flathub

Reporting Bugs

If you encounter bugs in vice, apologies! It would be of great help if you would send in a report if vice crashes or if you see mistakes in how it simulates aircraft or the STARS interface.

The best way to report bugs is via the "bugs" channel on the vice discord. Alternatively, if you have a github account, you can file bugs directly in vice's issue tracker.

Release History

0.14.1 (9 Mar 2026)

  • New scenarios: ZJX Consolidated (Jake Magee), ZNY Area B (Ryan G), ZJX areas 11 + 21 (manaphy), ZJX areas 14 + 15 (Michael Knight).
  • Scenario updates: ZLA and ZHN (Ketan K), ZNY area A (Ryan G), JFK4 finals (Ryan G).
  • Updated to latest AIRAC (Michael Knight).
  • Long requested: you can actually move sub-windows outside of the main window.
    • The flight strip and messages windows are now sub-windows and now its just the radar scope in the main window.
  • Text to speech now runs locally on your computer rather than in the cloud.
  • Added ATIS simulation: see the ATIS/METAR tab in the scenario info window for what's current.
    • Aircraft will call in with the current ATIS; if it's changed and they call in with the old one, STT supports "information X is now current," "advise you have information X", etc., or with the keyboard you can issue the command ATIS/X to tell them X is current.
  • Lots of small improvements to speech-to-text.
  • Improved simulation of radio static / distortion.
  • Added PTT test button (shows strength, plays back as it records).
  • ERAM
    • Added support for giving aircraft speeds in mach (Michael Trokel).
  • Bugfixes:
    • Handle Pacific "P" and Carribean "T" airports better.
    • Use sim time, not wallclock time for delayed changes heading so it works better when sped up (Jordan Williams).
    • "CSI" for cleared straight in approach without specifying the approach works now.
    • STARS force quicklook was unintentionally being applied to all controllers.
    • Handing off tracks before they call in should work better; they will still call in to your frequency first.
    • Fixed long stalls after clicking a new ARTCC/TRACON in the new sim window.
    • Fixed issues with crosswinds pushing aircraft off of the localizer/final approach course.
    • Fixed longstanding bug where aircraft sent direct to a fix on an approach but not cleared would start descending anyway (Jordan Williams).
    • Fixed bug where aircraft couldn't climb past FL332.
    • Fixed bug with ERAM cursor not displaying and STARS cursor disappearing over the DCB.
    • Fixed bug with characters doubled up in text entry boxes (Jordan Williams).
    • Fixed bug that caused delayed readbacks after contact transmissions.
    • Fixed bug with departures not being climbed by virtual controllers.
    • STARS DCBs are scaled better on screens where they don't fit normally.
  • Flight strips have been reworked; right click to get a menu to push them to the next controller.
  • Facility engineering updates:
    • Major rework of how facility-specific data is managed (Michael Trokel).
    • Added support for STARS FDAM (flight data auto-modify) filters: this allows setting things like scratchpad, leader line direction, for (selected) aircraft in a filter region.
    • Added qualifying attributes to quicklook filter regions: it can now depend on owning TCP, scratchpad, flight type, flight rules, CWT category, and a bunch of other things.
    • CRDA: no longer has to be tied to runways. Paths can include arcs and don't have to be straight lines. Convergence points can be arbitrary, don't have to be runway intersections.
    • Added "go_around" object to "arrival_runways" specifiers: can specify heading, altitude, and handoff controller for each arrival runway. If spacing is too tight on final, tower will send the trailing aircraft around.
    • The default "max_distance" for ARTCC scenarios is now 400nm.
    • Departures/arrivals can be assigned specific callsigns, not just an airline ICAO (Michael Trokel).
    • "areas" can now have video_maps, video_map_file, center, and radius.
    • Added "monitor" option under "config" in facility configuration types to specify a display monitor type to simulate; for STARS this determines the color scheme. Options are "legacy", "mdm3", and "mdm4".

0.14.0 (6 Feb 2026)

  • Added speech-to-text support (Michael Trokel / Matt P)
  • New Scenarios: ZLC Area C (JY_SUPn't), ZJX 30 (Jake Magee), CVG (manaphy), ZDV Area 3 (Andrew S)
  • Scenario updates: BOS, ACK, MHT (radarcontacto), P50 (Ketan K), COS (Andrew S), BGR (Ryan G), M98 (Logan S), F11, ZJX 50 (Jud Lopez), DAB, F11 (Michael Knight), MIA (Gecko)
  • Added search box to filter scenarios
  • Improved pilot readbacks to be more natural / cohesive
  • VFRs are better about not flying into terrain (and staying out of the flight levels)
  • Added "at fix, intercept the localizer" command: AFIX/I
  • Fixed bug with multi-controller scenarios where controllers could be locked out of issuing aircraft commands.
  • STARS:
    • Fixed bug where interfacility handoffs would get a FORMAT error
    • Fixed keyboard input for DCB button values (e.g. RANGE)
  • ERAM:
    • Added QF and QU commands
    • Added tearoffs, cursors, and clock
    • Added HSF data
    • Switched tertiary/primary mouse clicks to primary/secondary
  • Facility engineering:
    • Headings leaving fixes in routes can be specified to be left or right turns: PUCKY/L320, ROSLY/R250, etc. (Xavier Caldwell)
    • Specific routes (not just the entire airport) can be marked hold for release
    • Departures' contact location can be defined in routes

0.13.3 (29 Dec 2025)

  • New scenarios: PCT consolidated (Ketan K), MYR (Jud Lopez)
  • Scenario updates: A80, C90, D01, D10, DAB, F11, JAX, MKE, ZJX (Jud Lopez), SAV (manaphy), DelRey, SNA, P50, L30 (Ketan K), ISP, ZNY Area D (Ryan G), P80 (Mike Fries), BOS (radarcontacto)
  • STARS updates:
    • Added support for changing position consolidation during the sim: [multifunc]1A1B+[enter], etc.
      • New sign-on flow, allowing users to select a workstation and which positions to control.
      • Users can sign in as relief controllers at the same scope as another controller.
      • Instructor/RPO/observer has been rewritten and should work much better. overall
    • ATPA improvements: added enable/disable commands, improved various details.
    • Added support for middle-click-drag to move lists.
    • Also, middle clicking anywhere that's not inside a list or on a track shows the bounds of all visible lists.
    • Fixed bug with DCB spinners not disabling after a click.
  • ERAM updates:
    • Added CRR (continuous range readout).
    • Added .drawroute
  • Assorted improvements to emergency aircraft handling.
  • Cleaned up and updated the new sim / sign in UI.
  • "At fix, cleared approach" no longer requires naming the approach: AFIX/C is sufficient.
  • Reinstated "/message" in TGT GEN mode to send a global chat message to all controllers.
  • VFR updates:
    • Improved pronunciation for most GA aircraft types.
    • Sometimes aircraft start with "VFR request": use the new GA ("go ahead") command when ready for it.
  • Bug fixes:
    • Fixed an occasional crash on startup.
    • Fixed a bug where hold for release wasn't actually happening.
    • Fixed a bug with auto-select of the scenario start time based on the runway config.
    • Fixed a bug where the first departure would almost always be an emergency aircraft.
    • Fixed a number of cases where the server was missing locks that could have led to rare crashes.
  • Facility engineering
    • Added "max_distance" field for when far-away aircraft are culled (125nm default for STARS, 400nm for ERAM)
    • "solo_controller" and "multi_controllers" are both gone: "configuration"s are now specified in "config"; they give which arrival/departure flows go to which controller. Then each scenario has a "configuration" field as well; it references a configuration from "config" and also provides a default consolidation: the controller hierarchy.
    • Removed deprecated "arrivals" for specifying arrival rates; this is now "inbound_rates".

0.13.2 (22 November 2025)

  • Fixed crash affecting a number of scenarios (Adam E)
  • Fixed crash when the server can't be reached
  • Added pilot radio mishaps (Michael Trokel): where pilots occasionally respond with confusion to controller commands
  • Scenario updates A80, A90 (radarContacto), A80 (anguse), C90, DAB (Jud Lopez), M98 (Adam E.)
  • New scenarios: ZJX (Jud Lopez), HNL, OGG TRACONs (Ketan K)
  • Added emergency aircraft
  • WX: improved support for Alaska and Hawaii (now have wind for Alaska and are collecting precip radar for both now)
  • STARS:
    • 'C' command clears aircraft on the already-assigned approach 🎉
    • Only flash WHO for aircraft in departure filter volumes
    • Fixed crash with global leader lines.
  • Facility engineering:
    • Virtual departure controllers ( @Michael Trokel | ZNY ): can assign specific virtual departure controllers for particular departure routes
    • HCF "TRACON": HCF is now recognized as a TRACON
    • Don't require controller "default_maps" to be in "video_maps"

0.13.1 (6 November 2025)

  • Fix Windows installer build.
  • Bugfix: when an aircraft in a hold is given a heading, they now fly the heading directly.

0.13.0 (5 November 2025)

  • Added initial support for ERAM 🎉🎉🎉 (Michael Trokel)
    • Added ERAM scenarios: ZNY (Michael Trokel), ZLA (Ketan K), ZBW (Ryan G)
    • A functioning toolbar with real videomaps, brightness (including map brightness), DEST & TYPE line 4 DB fields, and the master toolbar menu.
    • Full and limited datablocks are simulated with line 4.
    • Leader lines
    • PTLs which can be extended using VECTOR or page up/down
    • Many ERAM commands are simulated, including:
    • QX (drop track. Note: QT for initiate track is not simulated).
    • Accept, recall, and send handoffs.
    • QU (including QU /M.)
    • J rings, both 5nm and 3nm.
    • Hard and temporary altitudes using QZ and QQ, respectively.
    • // for on frequency indicator
    • MR for geomaps
    • ERAM menu in vice settings, which contains:
    • Preference sets
    • Toggle for mapping ERAM commands to radio commands.
  • New scenario: SAT (Trey Hensley, Xavier Caldwell)
  • Scenario updates: PCT/DCA, CHP, RIC, NorCal, SoCal, P50 (Ketan K), JAX (Jud Lopez), D01 (Andrew S)
  • Control commands can be entered—but still not issued—during pilot readbacks
  • Wind/weather simulation is more accurate and based on historical real-world data
    • Winds aloft are much more accurate, thanks to hourly wind data from the NOAA.
    • Added STARS .WIND command to visualize wind fields.
    • VFR aircraft no longer launch in IMC
    • Aircraft climb performance is now affected by weather (temperature, relative humidity, air pressure)
  • Added support for holds
    • Hfix to fly a published hold at a fix; see the documentation for how to specify arbitrary holds at fixes.
    • To cancel a hold: clear them for the approach (if they're holding at an approach fix), give them a heading, or give them direct to a fix and the hold will be canceled.
    • The available charted holds can be visualized via a new "Holds" section in the scenario "info" window.
  • Single controller scenarios can now be run on the server, allowing RPO/Instructor sign ins for them.
  • Bug fixes:
    • Fixed bugs with flight plan acquisition filters
    • Fixed issue with VNAV descent rates that meant that altitude restrictions were sometimes missed.
    • Fixed bug where airport departure rates were not being correctly followed.
    • Fix CT instruction parsing after C/A/S instruction (Adam Engebretson).
    • Prevent redundant altitutde assignment on arrivals (Adam Engebretson).
    • Cleaned up formatting in the departure table (Ethan Malimon).
    • Fix crash with dropped tracks.
    • The application on Windows is there again.
  • Facility engineering:
    • Updated to Oct 30 2025 AIRAC.
    • In STARS filters, "arrival_acquisition" has been renamed to "auto_acquisition" to better describe what it does.
    • Added /cALT and /dALT route specifiers for virtual-controller issued climb and descend instructions in routes.
    • "wind" has changed: now "direction", "speed" and "flight_rules" can be specified; vice will randomly pick WX that matches. Ex: "wind": { "direction": "130-180", "speed": "5+", "flight_rules": "IMC" }. "speed" and "flight_rules" are optional. If no "wind" is specified, WX is selected based on the primary runway orientations.
    • Added crc2vice-eram command

STARS

vice attempts to present a reasonably accurate representation of the Standard Terminal Automation Replacement System, the radar system and scope used for TRACON control in the United States. Its primary goal is to provide the STARS functionality that is useful for regular TRACON controlling; thus, obscure features like military operations area commands are not supported. If you are familiar with the real-world STARS system, suggestions about how to improve vice's accuracy would be happily accepted! Head on over to the vice discord.

Key Concepts

STARS uses RADAR to determine the location of objects in the sky; if an aircraft has a functioning transponder, it sends the radar additional information including its altitude, a beacon code it is squawking, and the aircraft's callsign (assuming an ADS-B transponder.) For many aircraft, the STARS system doesn't know anything more about them (e.g., the aircraft type, the planned route, etc.) Such radar tracks are rendered like this:


There is a position symbol (here, an asterisk), and a green leader line connecting the position symbol to the datablock, which here just shows the radar track's altitude, in hundreds of feet. The purple dots to the left are the history trail, showing the aircraft's position 5, 10, 15, ... seconds in the past.

Some radar tracks have flight plans associated with them; such tracks are called associated tracks (and tracks without a flight plan, as the one above, are unassociated.) Given a flight plan, STARS is able to provide more useful information in the aircraft's datablock, as shown here:

example aircraft track

Here we see the datablock showing the aircraft's callsign, LXJ137, its altitude in hundreds of feet (040) multiplexing with its destination airport (CDW), and its groundspeed in tens of knots (28) multiplexing with its aircraft type, CL30. The "H" after groundspeed is the aircraft's consolidated wake turbulence (CWT) category—upper small. (See the section on datablocks for extensive documentation of datablocks and the information that they may show.) For this aircraft, the "P" in the middle of the circle (the position symbol) indicates which controller is the owner of the aircraft's track. (In contrast, unassociated tracks cannot be owned by a controller.)

Most IFR aircraft automatically have flight plans associated with them. For VFR aircraft or for VFRs that request pop-up IFR clearance, a variety of commands are available to create flight plans and associate them with aircraft; see the section on Flight Plans below.

A single controller may own an aircraft's track and a single controller may own control of an aircraft. The same controller may own both or two different controllers may own each track and control. A controller must have control of an aircraft in order to issue instructions to the pilot. See the discussion of Track Ownership below for more information about how control and track ownership are transferred between controllers.

Each controller in the terminal environment is responsible for at least one terminal control position (TCP). (A single controller may cover multiple positions when multiple positions have been consolidated.) Each TCP is identified by three characters:

  • The first character gives the facility; more or less the TRACON or ATCT/TRACON where the position is located.
  • Facilities are split into multiple areas; the second character which area the TCP is in.
  • Finally, each area is split into sectors; these are denoted by the third character.

Consider for example the N4P TCP: the N indicates the N90 (New York) TRACON; the 4 is for the fourth area (which is the Newark area) of N90; finally, the P is the Yardley sector of the Newark area.

Controllers interact with the STARS system via a terminal controller workstation (TCW), which consists of a physical display and keyboard. Each TCW has an identifier that corresponds to a single TCP. Normally a TCW is responsible for just that one TCP, but through consolidation, a TCW may be responsible for multiple TCPs. (In many scenarios, a controller will be responsible for multiple TCPs.)

Other controllers, both real and virtual, may be signed in when you're running a vice scenario. The list of controllers is available in the "Controllers" drop-down in the scenario information window. Among other useful information, it shows the TCP identifier associated with each controller and whether the controller is human.


Entering Commands

Some STARS commands are entirely keyboard based: you enter a command and hit the [ENTER] key to issue the command. As you type, your input will be shown in the input area, which is by default on the left side of the screen. Entering a space starts a new line. To edit your input, the backspace key can be used. Alternatively, pressing [ESCAPE] clears the input and any errors that are displayed.

Many STARS commands involve selecting an aircraft that they apply to; in STARS this is called "slewing" the aircraft. To slew an aircraft in vice, click on its radar track with the left mouse button. You will often enter a command with the keyboard and then slew an aircraft; if the documentation below, [SLEW] indicates that an aircraft should be slewed to execute the command. In the following, if a listed command doesn't end with [SLEW], then it should be understood that [ENTER] must be pressed to execute the command.

Many STARS keyboard commands take additional parameters such as an aircraft callsign, a beacon code number, or a controller identifier. The following notation is used for these entries in the documentation below:

Identifier Format and Use
(##) Numeric digits: the number of hash marks "#" indicates the number of expected digits. When used for beacon code values, only the digits 0-7 are valid.
(ABC) Arbitrary letters: any three letters.
(CID) Control position identifier: letters and digits identifying a control position, either inside the local facility or external. There are a number of rules that define how these are specified; they are discussed in more detail below.
(FLT ID) Flight identifier: either a full aircraft callsign, the beacon code that an aircraft is squawking, or the tab list index for the aircraft. (Tab list indices can be found as two digits in the first column of some STARS system lists such as the VFR and FLIGHT PLAN lists as well as coordination lists.
(TCP) TCP identifier: a numeric digit followed by a letter identifying a local terminal control position.

The STARS keyboard has a number of custom keys that are not present on standard keyboards. In the following documentation, when one of the STARS keys in square brackets below is shown, the corresponding regular keyboard key should be entered.

STARS Regular
[BRITE][Ctrl-F5]
[CA][F11]
[CHARSIZE][Ctrl-F7]
[CNTR][Ctrl-F2]
[DCB-SHIFT][Ctrl-F7]
[DCB][Ctrl-F9]
[F13][Shift-F1]
[FLT DATA][F6]
[HND OFF][F5]
[INIT CNTL][F1]
[LDR][Ctrl-F6]
[MAPS][Ctrl-F3]
[MIN][End] or \
[MULTIFUNC][F7]
[PREF SET][Ctrl-F12]
[RANGE][Ctrl-F11]
[RNGRING][Ctrl-F10]
[SHIFT][Ctrl-F8]
[SITE][Ctrl-F14]
[TERM CNTL][F4]
[TGT GEN][Tab]
[TRIANGLE] / ∆`
[TRK RPOS][F2]
[TRK SUSP][F3]
[VP][F9]
[WX][Ctrl-F4]

When issuing a command leads to an error, STARS prints an abbreviated message above the input area. These are the error codes that vice currently uses:

Code Description
FORMAT Error in the format of the command; for example, specifying a non-numeric value where a number was expected.
DUP BCN Duplicate beacon code: the same squawk code has been assigned to multiple aircraft.
DUP CMD Duplicate command: a command has been entered a second time and is no longer applicable.
ILL ACID Illegal aircraft id.
ILL ATIS Illegal ATIS code.
ILL AIRPORT Illegal airport: either the airport does not exist or the command does not apply to it.
ILL CODE Illegal beacon code: an illegal squawk code was entered.
ILL FIX Illegal fix: the fix specified does not exist.
ILL FLIGHT Illegal flight: no flight plan is filed for the specified callsign.
ILL FNCT Illegal function: the command cannot be executed.
ILL LINE Illegal Tab line index entered: no aircraft is associated with that number.
ILL MAP Illegal map: an invalid map was specified to be displayed or hidden.
ILL PARAM Illegal parameter: the command specified had an invalid parameter.
ILL POS Illegal position: the control position specified is invalid or does not exist.
ILL PREFSET Illegal preference set: the preference set specified is invalid or does not exist.
ILL RPC Illegal runway pair configuration specified for CRDA.
ILL RWY Illegal runway.
ILL SCR Illegal scratchpad: the scratchpad specified for an aircraft does not meet the requirements of a valid scratchpad.
ILL SECTOR Illegal sector: the controller specified is invalid.
ILL TRK Illegal track: another controller owns the aircraft's track, so the command is disallowed.
ILL VALUE Illegal value: the value specified is illegal (e.g., an impossible altitude).
MULTIPLE FLIGHT Multiple flights apply.
NO FLIGHT No flight: there is no aircraft with the specified callsign.
RANGE LIMIT Invalid weather range specified.

Specifying Controllers

A number of STARS commands take controller IDs to specify other controllers; examples include handoffs and point outs. The following rules apply to them:

  • For pairs controllers in the same facility, the full TCP may be entered, or the facility may be omitted and only the area and sector given. Thus, for a handoff from Yardley, N4P, to LaGuardia departure, N1L, the Yardley controller could specify 1L for LaGaurdia departure.
  • If the other controller is in the same area of the same facility, then only the sector needs to be entered: for example, N4P can hand off to N4A, the Newark North arrival position, just by specifying A for the TCP.
  • For TCPs outside of the facility, the delta (∆) symbol must be specified before the TCP; in vice delta is mapped to the backtick key. The full three-letter TCP may be given, though the area and sector may be omitted if the facility only has one TCP.
  • To handoff to an enroute controller, the enroute facility identifier and sector must be provided; enroute sectors are identified by two-digit numbers. For the home ARTCC, the facility identifier is generally C, unless a neighboring ARTCC's facility identifier is "C", in which case the facility identifier for the home ARTCC changes from a "C" to the regular facility identifier. Thus, for ZNY, "N" is used rather than "C". The sector may be omitted if there is only one enroute controller signed on.
  • For handoffs, airspace awareness rules may be provided in the scenario definition; these are rules that associate specific controllers with departing aircraft based on their altitude, the fix they are flying to, and possibly their aircraft type. When such a rule applies to an aircraft, a handoff to a corresponding enroute controller can be initiated simply by entering the enroute facility identifier, without the sector. For a handoff to a controller in a neighboring facility where an airspace awareness rule applies, just ∆ and the facility id are sufficient.

The airspace awareness definitions in a scenario can be found in the scenario information window, accessed by clicking in the main menu bar.


The following STARS commands offer further control over how airspace awareness is applied:

Command Function
[HND OFF]CXE Enables airspace awareness for interfacility handoffs.
[HND OFF]CXI Disables ("inhibits") airspace awareness for interfacility handoffs.
[HND OFF]CTE Enables airspace awareness for intrafacility handoffs.
[HND OFF]CTI Disables ("inhibits") airspace awareness for intraacility handoffs.
[HND OFF]CE Enables airspace awareness for both inter- and intrafacility handoffs.
[HND OFF]CI Disables airspace awareness for both inter- and intrafacility handoffs.

The Cursor Home and Hiding the Cursor

After a keyboard command is entered, the STARS cursor may be optionally returned to a "home" position and hidden. It will then reappear when the mouse is moved. The "CURSOR HOME" button in the auxiliary DCB menu can be used to toggle this behavior. If not specified using one of the following commands, the default home position is at the upper-left of the SSA list.

Command Function
[MULTIFUNC]IHS Enables auto cursor home.
[MULTIFUNC]INH Disables auto cursor home.
[MULTIFUNC]INC[SLEW] Enables auto cursor home and sets the home position to be the slewed location on the radar scope.
[MULTIFUNC]I* Clears the preview area and returns the cursor to the home position.

Quick Reference

For basic controlling, a small number of STARS commands are used frequently. The following table lists them and gives a short description of their operation.

Command Description
[SLEW]

Any of the following that apply (in order of precedence):

  • Accepts the handoff of an aircraft's track from another controller (including redirected handoffs).
  • Cancels an outbound handoff to another controller.
  • Acknowledges a point-out from another controller.
  • Recalls a point-out that you initiated.
  • Clears the point-out color indication after a point-out has been acknowledged or rejected.
  • Acknowledges an alert for an aircraft such as a collision alert (CA), mode C intruder (MCI), minimum safe altitude warning (MSAW), or an alert due to the aircraft squawking a special purpose code (e.g., 7600 for loss of radio).
  • Removes a full datablock forced by a special condition.
  • For a track in beacon mismatch, updates the assigned beacon code to match the squawked code.
  • For a suspended track, displays the flight plan in the preview area.
  • Inhibits the duplicate beacon code indicator.
  • Clears blinking indicators (e.g., after a rejected handoff).
  • Returns the datablock to unowned color after an outbound handoff is accepted.
  • For an owned track, displays the beacon readout (ACID, squawked code, assigned code) in the preview area.
  • Toggles between the full and partial datablock for an unowned track.
  • Clears a forced quicklook from another controller.
  • Inhibits the "no flight plan" alert for an unassociated track.
  • For an unassociated track, temporarily displays the full limited datablock.
(CID)[SLEW]Offers to handoff the track of the aircraft to the controller identified by (CID).
(scratchpad)[SLEW]Sets the scratchpad of the aircraft to (scratchpad).
.[SLEW]Clears the aircraft's scratchpad.
+(###)[SLEW]Sets the aircraft's assigned assigned altitude (which is shown in its datablock).

The DCB

The display control bar (DCB) is a menu that is shown by default at the top of the STARS window. Many aspects of STARS's behavior can be configured using the DCB.


There are four types of buttons in the DCB:

  • Toggle buttons: these enable and disable various features. When enabled, they have a lighter color than usual and appear depressed (like the "OFF CNTR" and "WX 3", "WX 4", and "WX 5" buttons above.) Clicking them toggles whether they are enabled.
  • Menu buttons: when clicked, they replace the contents of the DCB with those for another DCB menu. For example, clicking "MAPS" from the main DCB brings up a menu for configuring which STARS video maps are displayed.
  • Spinners: these allow setting various STARS parameters using the mouse wheel. For example, clicking "RANGE" allows setting the radar's range in nautical miles. Spinners capture the mouse and don't allow the cursor to leave their button until the user either clicks the mouse or presses the [ESCAPE] key. When a spinner is active, it is also possible to enter a new value for it using the keyboard and then pressing [ENTER].
  • Disabled buttons: these are shown in dark grey and represent STARS functionality that is not currently available in vice.

DCB submenus generally have buttons that return to the main DCB menu—look for a button labeled "DONE" or "SHIFT". Alternatively, pressing the [ESCAPE] key will return to the main DCB menu.

The main DCB menu offers the following controls:

Here is the auxiliary DCB:


Many of its buttons are disabled; the enabled ones are:

Press the [DCB] key (control-F9) to Toggle whether the DCB is visible.

Track Ownership

Controllers must both own an aircraft's track and have control of the aircraft in order to issue instructions to the aircraft's pilot. Managing ownership of tracks and control of an aircraft is at the core of how multiple controllers work together to control an aircraft; it is crucial that controllers hand off both the track and control of an aircraft before it enters another controller's airspace.

Untracked Aircraft

When an aircraft departs an airport, its track and control may not be owned by any controller. VFR aircraft may also enter a controller's airspace without being tracked; these are known as unassociated tracks since there is no flight plan associated with them. These aircraft have a limited datablock, which only shows the aircraft's altitude in hundreds of feet. The datablock is drawn in green indicating that the current controller does not own it, and the asterisk shown in the position symbol at the center of its track (the blue dot) also indicates that its track is unowned.


If an unassociated track's transponder is turned off, it appears with a plus sign in its position symbol and no altitude is shown; such a track is also referred to as a primary-only or primary track, since no secondary information is returned by its transponder. If its transponder is on but it is not squawking altitude, a diamond is used for its position symbol. Here are some examples.

   

Departures contact the appropriate controller on the radio once they're a few hundred feet off the ground; look for a message in the input window below the STARS scope:


For departures, you may disable the "Auto track departures" checkbox in the "Settings" window to not automatically initiate track on the departing aircraft that you are responsible for in the current scenario.

When you own an aircraft's track, the datablock becomes white a full datablock and the letter corresponding to your position's TCP (here, "G") will appear at the center of the radar track.


Note that you can not issue control instructions to an aircraft unless it is on your radio frequency. If you track a departure before it contacts you, it is still under the tower's control and tuned to the tower's radio frequency. Once the (virtual) tower controller tells the aircraft to "contact departure", they will check in with a message on your radio frequency. It is at this point that you also have control of the aircraft and can start issuing control commands to it.

Inbound Handoffs

Aircraft entering your airspace will be generally owned by another controller (human or virtual) before they are handed off to you. Initially, they are displayed with a partial datablock that shows altitude in hundreds of feet, groundspeed in tens of knots, and the scratchpad, if set. Often it is a center controller who owns the aircraft and a "C" will be displayed for the position id, as in the example below:


The controller who owns the aircraft's track may eventually hand it off to you; at this point, the datablock will turn white, start flashing, and change to a full datablock as shown below.


The datablock will continue flashing until you accept the handoff by slewing the aircraft's radar track using one of the following commands:

Command Function
[SLEW] Accepts the handoff of the slewed aircraft (if it is being handed off!).
[HND OFF] Accepts the aircraft being handed off that is closest to the center of the range rings.

After a handoff is accepted, the aircraft's datablock will stop flashing and remain white. However, as with departures, you do not have control of the aircraft until the other controller instructs the aircraft to contact you, transferring control as well. After the aircraft contacts you on the radio, you may start issuing control instructions to it.

Outbound Handoffs

When you are ready to hand off an aircraft's track to another controller, a number of commands are available to do so:

Command Function
(CID)[SLEW] /
[HND OFF](CID)[SLEW] /
[HND OFF](CID) (FLT ID)
Initiates a handoff of the slewed aircraft to the specified controller.
[SLEW]/
[HND OFF][SLEW] /
[HND OFF](FLT ID)
Cancels an initiated handoff to another controller.

(For these commands, determining the correct controller ID to enter has a few subtleties and is discussed further below.) The datablocks of outbound handoffs have an identifier for the target controller stuffed into the second line of the datablock, four characters in. For JBU52 below, it is "V", corresponding to the intrafacility position "1V" that the aircraft is being handed off to, and for TAM9021, it is "C", corresponding to a center position. For handoffs outside the facility (including to center), the position identifier is shown in the datablock multiplexed with the altitude and scratchpad (it is "N86" for TAM9021.)


After the other controller accepts the handoff, control of the aircraft's track is transferred to them. The aircraft's datablock will start flashing to notify you of this and the letter on the track will switch to be the other controller's. After a few seconds the datablock will stop flashing. Note that at this point you still retain control of the aircraft and can issue control instructions to it since you haven't yet transferred control to the other controller.


When you are ready to transfer control of the aircraft to the controller who has accepted the track, enter the FC command in the command input window and slew the aircraft. This will instruct the aircraft to switch frequencies to the next controller. Clicking on the track of an aircraft that has been handed off causes the datablock color to switch to green; this can be used to remember that you have transferred communications of an aircraft to the other controller.

Redirecting Handoffs

An incoming handoff can be redirected to another TCP by entering the TCP's ID and slewing the aircraft, just as if you owned the track and were handing it off. Doing so will add RD to the datablock shown to the handoff initiator and the redirector, and show the TCP to where the track was redirected to. This also turns the datablock green for the redirector. Here is a datablock for a redirected handoff as seen by the original handoff initiator; we can see that it has been handed off to the "X" TCP at the facility.


Redirected handoffs can be canceled using the same commands as are used for canceling regular handoffs.

Terminating Control

In addition to handing off tracks to other controllers; a controller may terminate control, otherwise known as "radar services terminated, frequency change approved". The following commands are available:

Command Function
[TERM CNTL][SLEW] /
[TERM CNTL](FLT ID)
Drops the track of the specified aircraft.
[TERM CNTL]ALL Drops the tracks of all aircraft under the controller's control.

Point Outs

Point outs let controllers direct another controller's attention to an aircraft; some facilities may have prearranged coordination procedures where an aircraft may pass through another controller's aircraft after a point out, or a point out may be performed before verbally coordinating with another controller. The following commands are available for point outs:

Command Function
(CID)*[SLEW] Points out the slewed aircraft to the specified controller.
[SLEW] Cancels a point out of an aircraft.
UN[SLEW] If the aircraft is being pointed out to the controller, rejects the point out.
[HND OFF][SLEW] If the aircraft is being pointed out to a controller, takes ownership of the aircraft's track.
[MULTIFUNC]O[SLEW] /
[MULTIFUNC]O (FLT ID)
Prints the point out history—up to the last 20 TCPs to which the aircraft has been pointed out.
[MULTIFUNC]O*[SLEW] /
[MULTIFUNC]O* (FLT ID)
Clears the point out history for the specified track.

An outbound point out is shown on the originator's scope with "PO" to the right of the aircraft id, followed by one character identifying the other controller's TCP. (Here, "B", for TCP 1B.)


An inbound point out causes the corresponding aircraft's datablock to switch to a FDB and flash yellow, with "PO" shown after the aircraft id.


Clicking on a point out acknowledges it. This causes the datablock to stop flashing but leaves the datablock yellow. A second click reverts to a green datablock, but leaves it as a FDB. A third click will then change back to a regular green PDB.


On the originator's scope, an accepted point out causes a flashing "PO" to appear to the right of the aircraft id for a few seconds.


An inbound point out can be rejected by entering UN[SLEW]; a flashing "UN" is shown to the right of the datablock on the originator's scope in this case.

Position Consolidation

It is possible to change which human controller is responsible for which terminal control positions (TCPs) while a simulation is running—more specifically, which TCPs a terminal control workstation (TCW) is responsible for. One way this happens is when a new controller connects to a sim at an unoccupied TCW. Another way is through explicit STARS consolidation commands, which allow one TCW (the receiver) takes over the responsibilities of another position (the sender).

Consolidation operates at the level of terminal controller workstations (TCWs). Each TCW may have a primary TCP (the one that matches its identifier) and may have zero or more secondary TCPs that have been consolidated into it. (Instructors and RPOs may sit at a TCW with no TCPs assigned to it.) The controller at a TCW can control aircraft assigned to any the TCPs it owns, whether primary or secondary.

There are two types of consolidation:

  • Basic: The receiving TCW takes control of inactive and future flights from the sender. Inactive flights are flight plans that are not yet associated with a radar track. Future flights are those that have not yet departed or entered the airspace.
  • Full: The receiver takes control of all flights from the sender, including active flights that are currently being controlled.

The following commands are available for consolidation. In these commands, the triangle character (∆) can be entered to specify the current controller's TCW as the receiver. TCPs and TCWs are specified as 1 or 2 characters; if only 1 character (the sector) is given, the current controller's facility (controller subset) is assumed (e.g., a controller at 2G may specify 2K as either "K" or "2K", but must specify 3H as "3H".)

Command Function
[MULTIFUNC]C∆(TCP) Basic consolidation: consolidates inactive and future flights from the specified sender TCP to the current controller's TCW. Active flights remain at the sender's keyboard until handed off or coasted out.
[MULTIFUNC]C(TCW)(TCP) Basic consolidation: consolidates inactive and future flights from the specified sender TCP to the specified receiver TCW.
[MULTIFUNC]C∆(TCP)+ Full consolidation: consolidates all flights (active, inactive, and future) from the specified sender TCP to the controller's TCW.
[MULTIFUNC]C(TCW)(TCP)+ Full consolidation: consolidates all flights from the specified sender TCP to the specified receiver TCW.
[MULTIFUNC]C Deconsolidates the current controller's primary TCP, returning it to its default keyboard.
[MULTIFUNC]C(TCP) Deconsolidates the specified secondary TCP, returning it to its default keyboard.
[MULTIFUNC]D+ Displays the current consolidation status in the Preview area. Shows which positions are consolidated and under which primary position. Basic consolidations are indicated with an asterisk (*) prefix.

When positions are consolidated, the receiver's TCW gains responsibility for aircraft assigned to the sender TCP. The receiver controller sees and controls these aircraft alongside those assigned to their primary TCP. Note that aircraft tracks remain assigned to their original TCP; if the sender TCP is later deconsolidated (returned to its own TCW), those tracks will be controlled by whoever is at the sender's TCW.

Track Information

Much information is encoded in the radar track symbol of an aircraft and the datablock displayed next to it. STARS provides many different ways to configure how this information is presented in an effort to balance providing the necessary information about aircraft that are important to a controller while minimizing the visual clutter from aircraft that are less relevant.

Track Symbols

The location of each aircraft visible to RADAR is shown using a primary target symbol. Which shape is used for the symbol depends on which RADAR mode has been selected and which RADAR sites are active. FUSED is the default radar mode, in which case a small blue circle is used for aircraft tracks, as in the examples so far.

In MULTI mode, a small blue rectangle is used in place of the circle and the rectangle is oriented based on the aircraft's heading; this example is flying in a northeasterly direction:


In SINGLE mode, a blue rectangle is also used, but the size of the rectangle varies based on how close the track is to the RADAR site and the rectangle is oriented toward the RADAR site rather than according to the aircraft's heading. The track is bigger the farther away it is from the RADAR site, which helps show the degree of uncertainty in its position. SINGLE mode also includes a green line on the far side of the track with respect to the RADAR site's position. This track is 50 miles from the RADAR site so has a relatively large rectangle, and the RADAR site is to the East, so the green line is on the left:


In SINGLE mode, if the aircraft is very far from the RADAR site, only the outline of the blue rectangle is shown.

The brightness of track symbols is controlled using "PRI" in the DCB BRITE menu.

Track History

STARS can draw a trail of small purple circles behind a track to show its prior path. The number of circles drawn and the time between adding a new circle to the trail is set using the HISTORY and H_RATE buttons in the auxiliary DCB:


HISTORY sets the number of history dots; it may range from 0 to 10. Here is a track with a full complement of 10 history dots:


H_RATE sets the time in seconds before STARS tries to add another history dot. Note that after this time passes, STARS does not immediately add another dot; rather, it waits until the next RADAR position is received for the aircraft. Under FUSED RADAR mode, positions are received every second, and under MULTI and SINGLE modes they are received every 5 seconds. Thus, for example, under FUSED mode with a H_RATE of 4.5, a new history dot is added every 5 seconds: STARS waits 4.5 seconds since adding the previous dot, which by definition occurred when a new RADAR position was received. When the next arrives in 0.5 more seconds, a dot is added, leading to a 5 second overall rate.

The brightness of track symbols is controlled with "HST" in the DCB BRITE menu.

Position Symbols

All tracks have a single-character position symbol at their center that indicates which controller owns the track. Position symbols are determined as follows:

  • If the track is owned by a controller in the current controller's facility, the controller's sector ID is used. (For example, if N4P is the current controller's TCP, an aircraft controlled by N1V would be shown with an "V".
  • If the track is owned by a terminal controller in an adjacent facility, the facility id is shown.
  • If the track is owned by an enroute controller, either "C" or the enroute facility ID is shown.

The brightness of track symbols is controlled using "POS" in the DCB BRITE menu.

For unassociated primary tracks that are not squawking altitude, the triangle that is normally drawn for their position symbol can be disabled.

Command Function
[MULTIFUNC]2PI Inhibits the display of the position symbol for unassociated primary tracks.
[MULTIFUNC]2PE Enables the display of the position symbol for unassociated primary tracks.

For unassociated tracks that do have functioning transponders, is also possible to select individual beacon codes or beacon codes blocks; unassociated aircraft squawking matching beacon codes are then displayed with different position symbols than the usual. By default, all 12xx beacon codes are handled this way. In that case, aircraft not squawking altitude are drawn with a triangle position symbol and those that are are drawn with a square.



Command Function
[MULTIFUNC]B(##) /
[MULTIFUNC]B(####)
Toggle the display of either a single beacon code (if four digits are entered) or a beacon code bank (if two digits are entered). Beacon code banks are identified by the first two digits; for example B12 toggles the 12xx beacon code block.
[MULTIFUNC]B* Clear all selected beacon code blocks.

Datablock Types

There are three datablock formats that may be used, depending on circumstances: limited datablocks (LDBs), partial datablocks (PDBs), and full datablocks (FDBs)s.

Limited Datablocks (LDBs)

Limited datablocks are shown when a target is not tracked by a TCP. By default, they only display the altitude's altitude in hundreds of feet, though if the track is slewed, they display the aircraft's assigned squawk code and groundspeed for a short period of time.


A few commands are also available to control the display of squawk (beacon) codes in LDBs:

Command Function
[MULTIFUNC]B Toggle the display of beacon codes in LDBs.
[MULTIFUNC]B(SLEW) Toggle the display of the beacon code for an unassociated aircraft.
[MULTIFUNC]BE(SLEW) Enable the display of the beacon code for an unassociated aircraft.
[MULTIFUNC]BI(SLEW) Disable the display of the beacon code for an unassociated aircraft.

The brightness of LDBs is controlled using LDB in the DCB BRITE menu.

If a departing aircraft is squawking a non-1200 code but there is no flight plan for the code they are squawking, a flashing "WHO" is displayed in their LDB next to the code they are squawking:


Clicking on the track clears the "WHO".

If you're searching for an unassociated aircraft squawking a specific beacon code, the beacon code display command can be used to cause all aircraft squawking that code to flash it in yellow in their limited datablock.


Command Function
**#### For all unassociated aircraft squawking the entered beacon code, display the beacon code in flashing yellow text in their limited data block for a short period of time.

Partial Datablock (PDBs)

Partial Datablocks are associated datablocks that are owned by another controller. They show the aircraft's altitude and groundspeed (in tens of knots), followed by a letter indicating its consolidated wake turbulence (CWT) category; see below for more information about CWT. The altitude may alternate with the aircraft's scratchpad or destination airport, as in the example below:


Some STARS facilities use variations on the above PDB format: they may also include the secondary scratchpad, time-share the aircraft type with the groundspeed and CWT category, not include the groundspeed, or show the groundspeed and CWT category separately.

Slewing a PDB converts it to a full datablock; a second slew returns it to a PDB.


The brightness of PDBs is also controlled using LDB in the DCB BRITE menu.

Full Datablock (FDBs)

Full datablocks provide the most information about aircraft; at minimum, they show the aircraft identifier (i.e., its callsign), its altitude in hundreds of feet, its groundspeed in tens of knots, a letter denoting its CWT category, and the aircraft type. Groundspeed and CWT category alternate with the aircraft type, as shown here:


Various other information may be present in a FDB. Here we see the primary scratchpad "L30" and the secondary scratchpad "DEP" alternating with the altitude, where a "+" after "DEP" indicates that the secondary scratchpad is shown. We also see a temporary controller-assigned altitude of 12,000 feet indicated by "A120" in the third line.


The brightness of FDBs is also controlled using FDB in the DCB BRITE menu.

The FDB is displayed for a track if any of the following is true:

  • The track is owned by the current controller.
  • The track is being handed off from another controller to the current controller.
  • The track is a redirected handoff where the current controller has either redirected it or had it redirected to them.
  • Another controller has pointed out the track to the current controller and the point out hasn't been cleared.
  • The user has clicked on a track owned by another controller.
  • The track is owned by a controller whose sector id the user has quicklooked.
  • The track has been force quicklooked to the current controller by another controller.
  • "Quick look all" has been enabled by the controller.
  • The aircraft is squawking a special purpose code (e.g., 7700 for an emergency) or if it has an active safety alert (e.g., low altitude).
  • The aircraft's beacon code matches one being displayed via the **#### command.
  • The "overflight full datablocks" option is enabled and the track is an overflight.

Other than the commands related to modifying Flight Plans that can lead to changes in what entries are shown in the FDB, there is just one command to manage the FDB's contents:

Command Function
[FLT DATA][SLEW] Toggles display of the aircraft type in the FDB.

A few commands are also available to control whether the FDB is displayed for overflights that are not under the user's control:

Command Function
[MULTIFUNC]E Toggle the display of the FDB for overflights.
[MULTIFUNC]EE Enable the display of the FDB for overflights.
[MULTIFUNC]EI Disable ("inhibit") the display of the FDB for overflights.

"Beaconator"

The "beaconator" feature is enabled by holding the Control and F1 keys on the keyboard. In full datablocks, it causes the aircraft id to be replaced with the code the aircraft is squawking. Partial datablocks show the sqwawk code in the first line, and limited datablocks show the squawk code and aircraft id. Here is an example of all three types of datablock, alternating with the beaconator enabled and disabled.


Datablock Control Commands

Command Function
[MULTIFUNC]E Toggle FDB for overflights

Additional Datablock Entries

A number of additional useful pieces of information can be found in datablocks, depending on the circumstances. (See also the section on STARS Flight Plans for information about a number of things such as scratchpads and altitude assignments that appear in datablocks and are managed along with the aircraft's STARS flight plan.)

Ident

If a controller has instructed an aircraft to ident, a flashing "ID" will appear in its datablock. In FDBs, "ID" replaces the CWT category next to the airspeed and the aircraft type is temporarily no longer displayed. LDBs display the aircraft's squawk code and "ID" for identing aircraft, and PDBs display "ID" at the end of the second line of the datablock.


Squawk Codes

If an aircraft is not squawking the beacon code assigned to it, the bottom line of the full datablock shows both the code it is squawking (on the left) and the code it has been assigned (on the right). The code that it should be squawking flashes to alert the controller. Slewing the aircraft makes its assigned squawk code the same as the code it is currently squawking.

Consolidated Wake Turbulence (CWT)

Each type of aircraft has been assigned a Consolidated Wake Turbulence (CWT) category by the FAA. CWT categories range from "A" to "I" and go in decreasing order of aircraft size. Aircraft CWT categories are shown in both PDBs and FDBs. This table lists the categories and has representative aircraft types for each one.

Letter Category Examples
A Super A380
B Upper Heavy A33*, A34*, A35*, B744, B77*, B788, B789
C Lower Heavy A30*, A310, B76*, DC10, MD11
D Non-Pairwise Heavy B74[1,3,D,R,S], B78X
E B757 B752, B753
F Upper Large A31*, A32*, B73*, DH8D, E190
G Lower Large CRJ*, GLF[2,3,4]
H Upper Small BE40, B350, C560, LJ*
I Lower Small BE20, C25[A, B], PA31, SR22

Special Purpose Codes (SPCs)

If an aircraft squawks a special purpose code (SPC) (e.g., 7600 for a radio failure, 7700 for an emergency, etc.), the corresponding two-letter code is shown in red at the top of the FDB and an alert sounds. The alert can be silenced by slewing the aircraft. Here is an example for an aircraft squawking 7700.


The controller may also associate an SPC with an aircraft regardless of what it is squawking by entering a SPC and slewing the aircraft. An alert sound is not played in this case. The following codes may be used:

Command Function
LL[SLEW] Associates the "lost link" SPC with the selected aircraft.
HJ[SLEW] Associates the "hijack" SPC with the selected aircraft.
RF[SLEW] Associates the "radio failure" SPC with the selected aircraft.
EM[SLEW] Associates the "emergency" SPC with the selected aircraft.
MI[SLEW] Associates the "military intercept" SPC with the selected aircraft.

It is also possible to add custom codes for a facility via "custom_spcs" in "datablocks". Custom SPCs are shown in yellow.

Leader Lines and Positioning Datablocks

Leader lines connect radar tracks to the datablocks of the associated aircraft. They may have eight orientations, corresponding to the eight cardinal and ordinal directions. Here is an example of a radar track with a leader line East of the aircraft (left) and Northwest of it (right):


The DCB offers two buttons for configuring leader lines:


The top button, LDR DIR, is a spinner that controls the default direction of leader lines for aircraft whose tracks that are owned by the current controller. The bottom button, LDR, controls the length of all leader lines. The leader line length can range from 0 to 7, with the range of lengths shown below:


A number of keyboard commands are available to specify leader lines, including ways to specify them for subsets of the aircraft. These all use the numbers 1-9 to specify a leader line direction; depending on the command, 5 may be used to clear a previously-set direction or it may be invalid.

If you have a numeric keypad on your keyboard, you have an easy reference to the association between numbers and directions; consider the aircraft to be at the position of the "5" key and then the other numbers specify the direction of the leader line relative to the aircraft. If you don't have a numeric keypad, visualize one, or refer to this figure:

789
46
123

A number of commands are available to configure leader lines, where all uses of (#) below correspond to a number following the above convention for specifying directions:

Command Function
(#)[SLEW]/
[MULTIFUNC]L(#)[SLEW]/
[MULTIFUNC]L(#) (FLT ID)
Sets the leader line direction for the aircraft, where (#) is a valid leader line direction specifier. 5 may be given to clear a previously-assigned direction.
[MULTIFUNC]L(#)U Sets the default leader line direction for aircraft with unassociated tracks.
[MULTIFUNC]L(#)* Sets the default leader line direction for aircraft tracked by other controllers. 5 may be given to clear a previously-assigned direction.
[MULTIFUNC]L(TCP)(#) Sets the leader line for aircraft controlled by the specified TCP. If a one-letter TCP is entered for a controller in the same area, a space should be entered after it. 5 may be entered to clear a previously-assigned direction
[MULTIFUNC]L(##)[SLEW]/
[MULTIFUNC]L(##) (FLT ID)
Sets the default leader line for a single track system-wide, across all controllers' displays. 55 may be entered to clear a previously-specified direction.
[LDR] Activates the LDR spinner in the DCB.

Quicklook

"Quicklook" makes it possible to specify that all tracks owned by another controller will be shown with a full datablock instead of a partial datablock. This can be useful when one controller is feeding aircraft to another; quicklook gives some more visibility into the flow of inbound aircraft. When "quicklook plus" is used, the datablocks of quicklooked aircraft are also shown in white rather than green. Facility engineers may also specify regions of airspace where quicklook automatically applies.

A number of commands are available to control quicklook:

Command Function
(TCP)/
[MULTIFUNC]Q(TCP)

Toggles quicklook for the specified control position. Multiple positions may be specified, separated by spaces. If a "+" is included after the control position, quicklook plus is toggled.

If the user's current TCP is entered, the currently-quicklooked positions and enabled/disabled regions are shown in the preview area—here is an example:

ALL/
[MULTIFUNC]QALL
Enables "quicklook all", where all aircraft are shown as being quicklooked.
ALL+/
[MULTIFUNC]QALL+
Enables quicklook all plus for all aircraft.
[MULTIFUNC]Q Disables all active control position quicklooks.
[MULTIFUNC]Q(region) E Enable the named quicklook region.
[MULTIFUNC]Q(region) I Disable (inhibit) the named quicklook region.
[MULTIFUNC]Q(region) Toggle whether the named quicklook region is enabled.
[MULTIFUNC]Q* Disables all quicklook regions.

The currently-active quicklook positions can be shown in the SSA list, after "QL:".

To see which if any quicklook regions are available, select the "MAPS" menu from the DCB and then select "SYS PROC" to see the Processing Areas maps list. Quicklook regions can then be found among those maps; here we see that "QLRGNS" represents all quicklook regions and "QLCONEY" is an individual region:


Force Quicklook

A controller can also "force quicklook" a track that they own to cause its full datablock to be shown on another controller's display. Force quicklooked aircraft also have yellow datablocks for the recipient, until they clear the forced quicklook by slewing the track.

Command Function
**(TCP)[SLEW] Force quicklook the slewed track to the identified controller. Multiple controller IDs may be specified, separated by spaces. "ALL" forces quicklook to all controllers.
**[SLEW] Force quicklooks the slewed track to the current controller (if enabled in the facility adaptation).

Dwell Mode

Dwell mode increases the brightness of the track and datablock of the aircraft closest to the mouse cursor, if the mouse is reasonably close to a radar track. Here is an example of it:


It can be configured using the DWELL button in the auxiliary DCB; it may take the value OFF, ON, or LOCK. OFF disables DWELL mode and ON enables it, with the increase in brightness lasting as long as the mouse cursor is close to a track. With LOCK mode, the increased brightness of a track persists, even after the mouse cursor moves away. Only when another track is approached by the mouse cursor does the brightness increase switch to it.


Dwell mode can also be configured using the keyboard:

Command Function
[MULTIFUNC]DE Enable the ON dwell mode.
[MULTIFUNC]DI Disable dwell mode.
[MULTIFUNC]DL Enable the LOCK dwell mode.

Altitude Filters

Controllers can set altitude filters to hide the datablocks and leader lines of aircraft outside a range of altitudes of interest; doing so can help reduce the amount of clutter on the screen. Here is an example of a track that is outside the filter range:


Note that if an track is pointed out or is an inbound handoff, its full datablock will still be shown, even if it is outside of the current altitude filter.

STARS supports two filters, one for unassociated tracks and one for associated tracks. Each of these filters is a range of altitudes, specified in hundreds of feet. The following commands are available to manage altitude filters:

Command Function
[MULTIFUNC]F Display the current altitude filters in the preview area. The first filter range applies to unassociated tracks and the second applies to associated tracks.
[MULTIFUNC]FC(###)(###) Specifies the altitude filter range for associated tracks. The first three digits give the bottom altitude of the filter range and the second three digits give the top of the filter range. Both altitudes are given in hundreds of feet.
[MULTIFUNC]F(###)(###) (###)(###) Specifies the altitude filter range for both unassociated and associated tracks. The first three digits give the bottom of the filter range for unassociated tracks and the next three give the top of the range for unassociated tracks, both in hundreds of feet. The following pair of three digit numbers similarly give the filter range for associated tracks.

Flight Plans

vice offers a wide range of commands for creating flight plans on the fly for aircraft that didn't initially file one; the main example of this currently is VFR aircraft that call asking for flight following. A wide variety of are commands available to create flight plans in STARS—these are all documented in the following. In practice, however, it's just necessary to understand two main flows, depending on which type of flight plan is to be created:

  • Local Flight Plans: these are intended for flights conducted wholly within delegated airspace of the current TRACON. These flight plans are not sent to the host (overlying) ARTCC computer to be processed and forwarded "downstream" to adjacent facilities. Examples include IFR/VFR pop up requests where the flight will not exit the delegated airspace of the TRACON. However, local flight plans are not eligible for automated hand off to ARTCC. If an adjacent TRACON is adapted to accept local flight plans, then they may be transferred via automated handoff.
  • NAS Flight Plans: these are for aircraft that will enter adjacent facility airspace, for example, VFR aircraft requesting radar advisories/flight following from a point within delegated TRACON airspace to a location outside of it. STARS users are only permitted to create VFR NAS flight plans; IFR NAS flight plans would be entered via FDIO, which is a separate system from STARS and not yet simulated/not needed for vice (for now). VFR aircraft on NAS flight plans are eligible for automated handoff to adjacent facilities.

The most common way to enter a local flight plan is to type the aircraft's callsign, a space, the type of aircraft, and press [Enter]. For example: N123AB C172. (Additional fields may be entered; see the documentation below.) A summary of the flight plan will be printed in the preview area and the flight will appear in the tab list ("FLIGHT PLAN"). The beacon code assigned to the aircraft can be found in either place.

The usual way to create a NAS flight plan is to enter the callsign, the entry and exit fix separated by an asterisk, the aircraft type, and the requested altitude in hundreds of feet. Example: N123AB FRG*POU C172 085. The entry fix is usually the departure point of the aircraft or a point (VOR) near where they call for flight following and the exit fix is usually the VFR's destination; both must be three characters. When STARS sends the a VFR NAS flight plan to the ARTCC computer and it is accepted, "VFR" is displayed to the right of the aircraft's callsign in the "VFR LIST". The beacon code is displayed when received from ARTCC computer a few seconds later. The flight also appears in the "FLIGHT PLAN" list.

For the full documentation of the flight-plan related commands below, in addition to the command components defined above in Entering Commands, a few additional parameters are commonly-found in commands related to flight plans. Here are their definitions and syntax:

Field Description
(ACID) Aircraft identifier: an aircraft callsign starting with a letter and then followed by letters or digits, no more than 7 characters long. Example: UAL650.
(AC TYPE/EQ) Aircraft type: aircraft type optionally followed by a slash and a single character equipment suffix. Example: C172/G.
(#/AC TYPE/EQ) Aircraft type: aircraft type optionally preceded by a number and a slash and optionally followed by a slash and a single character equipment suffix; if specified, the number gives the number of aircraft flying in formation. Examples: 2/F16/G, B738.
(ASSIGNED ALT) Assigned altitude: three digits giving the aircraft's assigned altitude. An entry of 000 clears the assigned altitude.
(BEACON) Beacon code assignment: either four digits specifying a specific beacon code (####), + to specify a system-generated IFR code, / for a system generated VFR code, or /1, /2, /3, or /4 to signify a code from the associated beacon code bank.
(COORD TIME) Coordination time: 4 digits giving a time in Zulu for the flight's expected coordination time, optionally followed by an "E".
(FIX PAIR) VFR Fix Pair: three character entry fix followed by * and then a three character exit fix. Optionally, a second * and the type of flight may follow. Example: ISP*MVY.
(FLIGHT TYPE) Type of flight: A for arrival, P for departure, or E for an overflight
(PILOT ALT) Pilot-reported altitude: three digits giving a pilot-reported altitude in hundreds of feet. 000 clears the pilot-reported altitude.
(REQ ALT) Requested altitude: three digits giving the requested (final) altitude for the flight.
(RULES) Flight rules: a period followed by zero or one additional characters: V for VFR, P for VFR on top, E for enroute (IFR), and no entry for none (IFR). Example: .V
(SP1) Scratchpad 1: three (or up to four, at some facilities) characters for the aircraft's primary scratchpad entry.
(SP2) Scratchpad 2: three (or up to four, at some facilities) characters for the aircraft's secondary scratchpad entry.
(TCP OR FIX PAIR) TCP/Fix pair: either a number and a letter corresponding to (TCP) or a (FIX PAIR).

Creating Flight Plans

STARS offers numerous commands for controllers to enter new flight plans; most start with one or more required fields that are then followed by optional fields. Spaces separate all fields, both required and optional. See the table above of common components of flight plans for the rules for the format of the following entries.

The following create new flight plans that are not yet associated with an aircraft; these flight plans are shown in the FLIGHT PLAN system list and/or the VFR LIST, depending on their type.

Command Function
(ACID) (FIX PAIR) (AC TYPE/EQ) Create a NAS VFR flight plan with an automatically-assigned squawk code. Optional additional fields: (REQ ALT) and (TCP). The flight plan is assigned to the controller who created it if no other controller is specified via (TCP). Example: N123AB FRG*HPN C172/G 045.
(ACID) Create a local flight plan. Optional additional fields: (BEACON), (FLIGHT TYPE), ∆(SP1), +(SP2), (#/AC TYPE/EQ), (REQ ALT), and (RULES). Example: N123AB 6502 ∆ARR +R22 280.
[INIT CTNL](ACID) (BEACON) Create a flight plan with a specified beacon code. Optional additional fields: ∆(SP1) +(SP2) (#/AC TYPE/EQ).
[VP](ACID) (VFR FIX PAIR) (AC TYPE/EQ) Create a VFR flight plan. Optional additional fields: (REQ ALT) and (TCP).
[FLT DATA](ACID)[ENTER] Create a new flight plan. Optional additional fields: (BEACON), (TCP OR FIX PAIR), (COORD TIME), ∆(SP1), +(SP2), (#/AC TYPE/EQ), (REQ ALT), and (RULES).
*(####) Create a "quick flight plan" with the specified beacon code. The flight plan's ACID is automatically set with a predefined prefix that is followed by the given beacon code. A flight rules suffix may optionally be given immediately after the beacon code: E for enroute IFR, V for VFR, or P for VFR on top. If no suffix is given, a local non-enroute IFR flight plan is created.

It is also possible to create a new flight plan and immediately associate it with a track. For both of the following commands, if the beacon code isn't specified, the code that the track is currently squawking is used as the assigned code.

Command Function
(ACID)[SLEW] Create a new flight plan and associate it with the slewed track. Optional additional parameters: (BEACON), ∆(SP1), +(SP2), (ASSIGNED ALT), and (#/AC TYPE/EQ).
[INIT CTNL](ACID)[SLEW] Create a new flight plan and associate it with the track. Optional additional parameters:(BEACON), ∆(SP1), +(SP2), (ASSIGNED ALT), and (#/AC TYPE/EQ).
Y[SLEW] Creates a "quick ACID flight plan" with an automatically generated callsign and associates it with the slewed track. The track's datablock is drawn in yellow until the track is slewed a second time.

Activating Existing Flight Plans

If an unassociated track is squawking the beacon code associated with a flight plan, the flight plan will often automatically associate with the track. (This may not happen if the aircraft is outside of the predefined regions in a TRACON where flight plans automatically associate, but it is generally the case.) Alternatively, a command is available to associate an existing flight plan with a radar track.

Command Function
[INIT CTNL](FLT ID)[SLEW] Activate the identified flight plan and associate it with the slewed track. Takes the following optional parameters to modify the flight plan before it is associated: (SP1), ∆(SP1), (+SP2), and (ASSIGNED ALT).

Deleting Flight Plans

Two commands are available for deleting flight plans. If a flight plan is associated with a track, the track becomes unassociated if it is deleted.

Command Function
[TERM CNTL](FLT ID) Deletes the flight plan identified by the flight identifier.
[VP](FLT ID) Deletes the VFR flight plan identified by the flight identifier.
[TERM CNTL]ALL Deletes all flight plans controlled by the controller.

Flight Plan / Beacon Code Display

After a flight plan is created (and in some cases, after it is modified), an abbreviated version of the flight plan is displayed in the preview area. Here is an example:


We have an aircraft with callsign ANA203 that has aircraft type A388. The "/A" is its CWT weight class—super. It has been assigned beacon code 1711 and controller 2G is responsible for it. It is departing JFK airport and its exit fix is GAYEL, shortened here to "GAY". Its expected departure time is 2230 zulu, and its requested altitude is 37,000'.

There are also commands to cause a selected flight plan to be displayed:

Command Function
[MULTIFUNC]D[SLEW] /
[MULTIFUNC]D(FLT ID)
Display flight plan
[MULTIFUNC]B[SLEW] If the slewed aircraft is associated, display its aircraft id, received, and assigned beacon code in the preview area.

Modifying Flight Plans

For the following commands, if (FLT ID) is used to specify the flight plan, the command can be used both for associated and unassociated flight plans. The variants based on slewing a track can only be used on associated tracks, and apply to their associated flight plans.

Command Function
*(ACID)[SLEW] Sets the ACID for the slewed track.
*(#/AC TYPE/EQ)[SLEW] Sets the aircraft type and optionally the number of formation aircraft and the equipment suffix for the slewed track. If the aircraft type is less than four characters, it must be extended to 4 characters with asterisks: e.g,. "B2**".
[MULTIFUNC]H(FLT ID) (#/AC TYPE/EQ)/
[MULTIFUNC]H(#/AC TYPE/EQ)[SLEW]
Specifies aircraft type (and optionally the number of formation aircraft and equipment suffix, if given) for the track.
[MULTIFUNC]H(FLT ID) R/
[MULTIFUNC]HR[SLEW]
Toggles the RNAV specifier for the aircraft (shown as a caret, "^", in the full datablock.)
[MULTIFUNC]H(FLT ID) (RULES)/
[MULTIFUNC]H(RULES)[SLEW]
Specifies the flight rules for the track.
[MULTIFUNC]M(FLT ID) (ACID)/
[MULTIFUNC]M(ACID)[SLEW]
Changes the track's ACID to the specified callsign.
[MULTIFUNC]M(FLT ID) ∆(SP1)/
[MULTIFUNC]M∆(ASSIGNED ALT)[SLEW]
Changes the track's assigned altitude to the given altitude.
[MULTIFUNC]M(FLT ID) (BEACON)/
[MULTIFUNC]M(BEACON)[SLEW]
Changes the track's assigned beacon code to the one specified.
[MULTIFUNC]M(FLT ID) (COORD TIME)/
[MULTIFUNC]M(COORD TIME)[SLEW]
Changes the track's coordination time to the specified time.
[MULTIFUNC]M(FLT ID) (FIX PAIR)/
[MULTIFUNC]M(FIX PAIR)[SLEW]
Changes the track's entry/exit fix pair to the fixes specified.
[MULTIFUNC]M(FLT ID) (REQ ALT)/
[MULTIFUNC]M(REQ ALT)[SLEW]
Changes the track's requested altitude to the altitude specified.
[MULTIFUNC]M(FLT ID) ∆(SP1)/
[MULTIFUNC]M∆(SP1)[SLEW]
Changes the track's primary scratchpad to the text specified.
[MULTIFUNC]M(FLT ID) +(SP2)/
[MULTIFUNC]M+(SP2)[SLEW]
Changes the track's secondary scratchpad to the text specifie.
[MULTIFUNC]M(FLT ID) (TCP)/
[MULTIFUNC]M(TCP)[SLEW]
Changes the track's controller to the specified TCP.

Scratchpads

In STARS, scratchpads are used to convey information to controllers—for example, the departure exit gate, or an assigned approach. Each aircraft has a primary scratchpad and a secondary scratchpad. Either may be set independently. Scratchpads are three characters by default, but may be four at some facilities. They may contain letters, numbers, plus signs, periods, delta symbols, forward slashes, and asterisks, though they may not contain three numbers. The following commands can be used to manage scratchpads:

Command Function
(SCR)[SLEW] /
[MULTIFUNC]Y(SCR)[SLEW] /
[MULTIFUNC]Y(FLT ID) (SCR)
Sets the primary scratchpad to (SCR) for the selected aircraft. If (SCR) matches the current scratchpad, the scratchpad reverts to its previous setting. When the first form of this command is used, (SCR) must not be a controller ID; if it is, a handoff to the controller will be initiated instead.
+(SCR)[SLEW] /
[MULTIFUNC]Y+(SCR)[SLEW] /
[MULTIFUNC]Y+(FLT ID) (SCR)
Sets the secondary scratchpad to (SCR) for the selected aircraft. If (SCR) matches the current scratchpad, the scratchpad reverts to its previous setting. When the first form of this command is used, (SCR) must not be three digits; if it is, the aircraft's assigned altitude will be set instead.
.[SLEW] /
[MULTIFUNC]Y[SLEW] /
[MULTIFUNC]Y(FLT ID)
Clears the selected aircraft's primary scratchpad.
+[SLEW] /
[MULTIFUNC]Y+[SLEW] /
[MULTIFUNC]Y+(FLT ID)
Clears the selected aircraft's secondary scratchpad.

In PDBs and FDBs, the primary scratchpad multiplexes with the aircraft's altitude. The secondary scratchpad is only shown in FDBs, where it also multiplexes with the altitude and primary scratchpad, if set; it also has a plus sign displayed after it in the datablock. In the example below, the aircraft has "I2L" for its primary scratchpad and "SS" for its second.


Assigned (Temporary) Altitude

In order to help remember the altitudes they have assigned aircraft, controllers may associate an assigned altitude with each aircraft under their control. Assigned altitudes given in hundreds of feet and are shown on the right side of the bottom line of FDBs; here, we can see that AAL929, currently at 3,700', has been assigned a assigned altitude of 3,000'.


Two commands are available to manage the temporary altitudes associated with aircraft.

Command Function
+(###)[SLEW] Specifies an assigned altitude for the selected aircraft.
+000[SLEW] Clears the assigned altitude for the selected aircraft.

Requested Altitude

The requested final cruising altitudes of departing aircraft may optionally be displayed in FDBs, multiplexed with the airspeed and aircraft type. The following commands are available to control this:

Command Function
++(###)[SLEW] Sets the requested altitude (given in hundreds of feet) for the slewed aircraft.
[MULTIFUNC]RA[SLEW] Toggles display of requested altitude for the slewed aircraft.
[MULTIFUNC]RAE[SLEW] Enables the display of requested altitude for the slewed aircraft.
[MULTIFUNC]RAI[SLEW] Disables the display of requested altitude for the slewed aircraft.
[MULTIFUNC]RA Toggles display of requested altitude for all aircraft that have not had requested altitude display specifically enabled or inhibited.
[MULTIFUNC]RAE Enables the display of requested altitude for all aircraft that have not had requested altitude display inhibited.
[MULTIFUNC]RAI Disables the display of requested altitude for all aircraft that have not had requested altitude display enabled.

Pilot-Reported Altitude

If an aircraft's transponder is not transmitting altitude, the altitude field in the full datablock is left blank. Further, "ISR" is shown in yellow, indicating that there is an increased separation requirement for the aircraft compared to regular IFR separation.


For such aircraft, the pilot may verbally report their current altitude to the controller. A few commands are available to record pilot-reported altitude so that it can be displayed in the datablock. Here, the aircraft has reported that they are at 9,000'. "ISR" is no longer displayed and an asterisk after the altitude indicates that it is pilot-reported and not from the transponder.


Command Function
[MULTIFUNC]Y(FLT ID) ### /
[MULTIFUNC]###[SLEW] /
###[SLEW]
Sets the pilot-reported altitude for the aircraft.
[MULTIFUNC]Y(FLT ID) /
[MULTIFUNC]Y[SLEW]
Clears the pilot-reported altitude (and the scratchpad, if set) for the aircraft.
[MULTIFUNC]M[SLEW] Toggles display of Mode-C altitude for the aircraft.

Suspended Flight Plans

It can be useful to suspend flight plans to reduce clutter on the radar scope, for example when a number of aircraft are in the same holding pattern. These functions are available:

Command Function
[TRK SUSP][SLEW] /
[TRK SUSP](FLT ID)
Suspend the selected flight plan.
[INIT CTNL][SLEW] /
[INIT CTNL](FLT ID)
Activates the selected suspended flight plan. The following optional parameters may also be specified to modify the flight plan as it is unsuspended: (SP1), ∆(SP1), or +(SP2).
[TRK SUSP]E Enable display of altitude for active suspended tracks.
[TRK SUSP]I Disable (inhibit) display of altitude for active suspended tracks.

When a track's flight plan is suspended, the flight plan appears in the COAST/SUSPEND list and its datablock just shows the list index of the flight plan in the COAST/SUSPEND list. Clicking on the datablock displays its altitude for a few seconds; alternatively the commands above can be used to enable the display of altitudes for all tracks with suspended flight plans.

Here is an example of the result of suspending and then unsuspending a track's flight plan:


Repositioning Tracks and Unsupported Datablocks

STARS has commands that allow transferring an associated flight plan from one track to another one or converting it to an unsupported datablock, which is effectively a flight plan temporarily places at a position on the radar scope.

Command Function
[TRK RPOS][SLEW][SLEW]/
[TRK RPOS](FLT ID)[SLEW]
Take the flight plan from the first selected track, leaving it unassociated, and associate it with the second track (which must initially be unassociated.)
[TRK RPOS][SLEW][SCOPE]/
[TRK RPOS](FLT ID)[SCOPE]
Take the flight plan from the first selected track, leaving it unassociated, and create an unsupported datablock at the clicked position on the radar scope, [SCOPE].

Here is an example of an unsupported datablock. Note that the position symbol for the owning controller is shown (here, "G") as well as a full datablock, though without altitude and airspeed. There is no blue circle at the track position.


Unsupported datablocks may be repositioned back onto existing tracks or may be deleted using [TERM CNTL] and slewing or entering its associated ACID.

An unsupported datablock can also be created from a preexisting flight plan:

Command Function
[INIT CTNL](FLT ID)[SCOPE] Create an unsupported datablock at the clicked position on the scope, [SCOPE] from an existing flight plan. The following additional arguments to modify the unsupported datablock's flight plan may also be specified, separated by spaces: (SP1), ∆(SP1), +(SP2), or (ASSIGNED ALT).

Held Flight Plans

vice currently has incomplete support for held flight plans. (These will be useful for IFR aircraft to controlled fields in the future.) That said, the following command is available.

Command Function
[MULTIFUNC]ZZ[SLEW] /
[MULTIFUNC]ZZ (FLT ID)
Toggles the hold state for the specified flight plan.

Tools

STARS offers a variety of tools to help with vectoring aircraft and ensuring they remain separated. For most of the tools in this section, the font size is based on the TOOLS font size in the CHAR SIZE menu of the DCB and the brightness is based on the TLS setting in the BRITE menu of the DCB.

Position Reporting

Command Function
*[SLEW][CLICK] Shows the heading and distance from the clicked point in the STARS window to the selected aircraft.
[MULTIFUNC]D*[CLICK] Prints the latitude-longitude coordinates of the clicked location in the preview area.

Collision Alerts and Mode C Intruders

If there is a loss of separation between aircraft or if STARS predicts an imminent loss of separation, a collision alert will be issued where red text "CA" is shown in the aircraft datablocks and an alert sound will be played. The alert sound continues until one of the aircraft is slewed. Here is an example of a pair of aircraft with CA alerts:


An alert is also issued if an unassociated track loses separation with an associated track; in this case, the unassociated track is called a mode C intruder (MCI). No alerts are issued for pairs of unassociated tracks.

A few commands are available to enable and disable collision alerts and MCI alerts:

Command Function
[CA]K[SLEW]/
[CA]K (FLT ID)
Toggles whether CA warnings are enabled for the aircraft.
[CA][SLEW]/
[CA]P (FLT ID)
Toggles whether CA warnings are enabled for a pair of aircraft. The slewed aircraft must be in conflict with exactly one other aircraft or must have previously had collision alerts inhibited as part of a pair of aircraft.
[CA]AI Disable CA warnings on all aircraft.
[CA]AE Enable CA warnings, except for aircraft that have had them individually disabled.
[CA]M(FLT ID) #### /
[CA]M####[SLEW]
Suppress MCI alerts between the specified aircraft and the given beacon code.
[CA]MI Disable MCI warnings on all aircraft.
[CA]ME Enable MCI warnings, except for aircraft that have had them individually disabled.

If collision alerts are globally disabled, "TW OFF: CA" will be displayed in the SSA list. If they are disabled for a particular aircraft, a triangle will be shown after the aircraft's callsign in its datablock. Here is a case where disabling CA for two aircraft was not a good idea.


Minimum Safe Altitude Warnings

If aircraft are beneath the minimum vectoring altitude at their location, a minimum safe altitude warning (MSAW) may be issued. Aircraft with MSAWs have "LA" (for "low altitude") displayed in red at the top of their datablocks. An alert sound is played when an MSAW is issued; it can be silenced by slewing the corresponding aircraft. Here is an example of such an aircraft:


MSAWs can be configured with these commands:

Command Function
[MULTIFUNC]VMI Disable MSAW for all aircraft.
[MULTIFUNC]VME Enable MSAW for all aircraft other than those for which it has been individually disabled.
[MULTIFUNC]V[SLEW] Toggle whether MSAW is enabled for the specified aircraft.
[MULTIFUNC]Q[SLEW] Temporarily inhibit MSAW for an aircraft that currently has an MSAW. Once the aircraft is above the MVA at its location, MSAW will be reenabled for it.

When MSAW is disabled or inhibited, an asterisk is shown after its datablock. (If both MSAW and CA is disabled for an aircraft, a plus sign will be shown after its datablock).


A map showing the minimum vectoring altitudes used for MSAWs is included in the "SYS PROC" maps available from the "MAPS" menu in the DCB.

Predicted Track Lines

PTLs (Predicted Track Lines) show the aircraft's predicted course over the course of 0.5 to 3 minutes into the future. Here is an example of a track with a PTL:


PTLs can be controlled using these buttons in the auxiliary DCB menu, which is shown by selecting SHIFT from the main DCB.


PTL OWN sets whether PTLs are shown for tracks that are owned by the TCP, and PTL ALL sets whether PTLs are shown all associated tracks in the current altitude filters. It is also possible to display or hide the PTL of individual aircraft using a keyboard command.

Command Function
[MULTIFUNC]R[SLEW] Enable/disable the PTL for a radar track. An error is issued if the aircraft is already displaying a PTL due to PTL OWN or PTL ALL being enabled.

Range Bearing Lines

Range bearing lines (RBLs) track the distance and heading between aircraft and/or fixes. For example, the image below shows an RBL between two aircraft, indicating that N63A is 6.50nm miles along a 118 heading from AAL86. In this case, the RBL was drawn from AAL86 to N63A; if it had been drawn the other way, the label would be next to AAL86 and the heading would be 118+180=298. The "-1" at the end of the label indicates that this is RBL number 1. If additional RBLs were created, they would be given successive numbers to identify them.


RBLs may be created between pairs of aircraft, and aircraft and a fixed location, or a pair of fixed locations. When aircraft are involved, the corresponding RBL endpoint moves along with the aircraft.

The following commands are available to create and delete RBLs:

Command Function
*T[SLEW][SLEW] Create an RBL between the two slewed aircraft.
*T[SLEW](FIX) or *T(FIX)[SLEW] Create an RBL between the slewed aircraft and the fix FIX.
*T[SLEW](#) Delete the RBL with given number.
*T Delete all RBLs.

Minimum Separation

The predicted minimum separation between two aircraft can be shown. Below we see that based on their current routes the two aircraft are predicted to have a minimum separation of 2.15nm and that separation will occur when they are at the two points marked by small triangles.

tpa ring

The following commands are available for minimum separation display.

Command Function
[MIN][SLEW][SLEW] Display minimum separation between the two slewed aircraft.
[MIN] Clear minimum separation display.

TPA/ATPA

The terminal proximity alert (TPA) and automated TPA (ATPA) tools provide graphical representations that aid in ensuring that there is sufficient separation between aircraft. A TPA cone can be associated with an aircraft to show a given distance in nautical miles in front of it; see the left image below for a TPA cone marking 4nm. A TPA J-ring is a circle around an aircraft's radar track of specified radius; the right image below shows a J-ring with a 4nm radius.


The following keyboard commands are also available to configure TPA cones and J-rings:

Command Function
*J(###)[SLEW] Adds a TPA J-ring with radius given by ### to the selected track.
*J[SLEW] Removes TPA J-ring from the selected track.
**J Removes TPA J-rings from all tracks.
*P(###)[SLEW] Adds a TPA cone with length given by ### to the selected track.
*P[SLEW] Removes TPA cone from the selected track. (ATPA cones are unaffected.)
**P Removes TPA cones from all tracks. (ATPA cones are unaffected.)
*D+ Toggles the display of the mileage represented by TPA rings/cones for all tracks.
*D+[SLEW] Toggles the display of the mileage represented by TPA rings/cones for the selected track.
*D+E Enables the display of the mileage represented by TPA rings/cones for all tracks.
*D+E[SLEW] Enables the display of the mileage represented by TPA rings/cones for the selected track.
*D+I Inhibits the display of the mileage represented by TPA rings/cones for all tracks.
*D+I[SLEW] Inhibits the display of the mileage represented by TPA rings/cones for the selected track.

ATPA automatically generates cones for aircraft in the approach volume for a runway. (Approach volumes are generally along the glideslope for a runway.) For example, the image below shows a 5nm cone in front of BAW6895, indicating the required separation for a CWT F-class aircraft (upper large) behind an upper-heavy B-class aircraft. The current in-trail distance, 4.55nm, is shown in BAW6895's datablock, and both that distance and the cone are red, indicating an ATPA alert for loss of separation.

ATPA alert cone

This table shows the minimum in-trail distances required by ATPA for aircraft on approaches; NOWGT is used if the weight class of an aircraft is unknown:

Trailing CWT Class
A B C D E F G H I NOWGT
Leading CWT Class A -4.5667777810
B -3445555610
C ----3.53.53.55610
D -3445556610
E/F --------410
G/H/I ---------10
NOWGT 10101010101010101010

ATPA alerts are issued if a loss of separation is expected in the next 24 seconds, and ATPA warnings (which are drawn in yellow) are issued if a loss of separation is expected in the next 24-45 seconds.

TPA and ATPA can be configured by selecting "SHIFT" from the main DCB menu and then "TPA/ATPA". The following options are provided:


The first four buttons toggle a particular TPA/ATPA option and display "ENABLED" if the corresponding option is enabled, and "INHIBTD" if it is inhibited. "DONE" returns to the previous DCB menu.

  • A/TPA MILEAGE: whether the respective radius or length are shown with TPA J-rings or TPA/APTA cones.
  • INTRAIL DIST: determines whether the in-trail distance to the next aircraft is shown in the datablocks for arrivals in an ATPA volume.
  • ALERT CONES: determines whether ATPA warning and alert cones are automatically created when insufficient separation is predicted. If disabled but monitor cones are enabled, monitor cones will be shown.
  • MONITOR CONES: determines whether monitor cones may be automatically created for all arrivals in an ATPA volume.

The following keyboard commands are also available to configure ATPA:

Command Function
*AE Enables the display of ATPA warning/alert cones for all tracks.
*AE[SLEW] Enables the display of ATPA warning/alert cones for the selected track.
*AI Inhibits the display of ATPA warning/alert cones for all tracks.
*AI[SLEW] Inhibits the display of ATPA warning/alert cones for the selected track.
*BE Enables the display of ATPA monitor cones for all tracks.
*BE[SLEW] Enables the display of ATPA monitor cones for the selected track.
*BI Inhibits the display of ATPA monitor cones for all tracks.
*BI[SLEW] Inhibits the display of ATPA monitor cones for the selected track.
*DE Enables the display of ATPA in-trail distance all tracks.
*DE[SLEW] Enables the display of ATPA in-trail distance the selected track.
*DI Inhibits the display of ATPA in-trail distance for all tracks.
*DI[SLEW] Inhibits the display of ATPA in-trail distance for the selected track.

The following supervisor commands are available for system-wide ATPA configuration:

Command Function
[MULTIFUNC]2ATPAE Enables ATPA system-wide.
[MULTIFUNC]2ATPAI Disables ATPA system-wide.
[MULTIFUNC]2ATPA(id)E Enables the specified ATPA approach volume (e.g., 2ATPA22RE to enable the "22R" volume).
[MULTIFUNC]2ATPA(id)I Disables the specified ATPA approach volume.
[MULTIFUNC]2.5(id)E Enables 2.5nm reduced separation for the specified ATPA approach volume (if adapted).
[MULTIFUNC]2.5(id)I Disables 2.5nm reduced separation for the specified ATPA approach volume.

For facility engineers, the ATPA approach volumes are listed in the "PROCESSING AREAS" map list, which can be selected via "SYS PROC" from the DCB "MAPS" menu. Individual maps can be displayed and then hidden by entering [MAPS](###) where ### is the map number associated with the volume.

Compass

To help with determining headings when vectoring aircraft, a compass rose may be displayed around the edges of the STARS radar scope:


The brightness of the compass rose is controlled by CMP in the BRITE DCB menu and the size of the font used is set based on TOOLS in the CHAR SIZE DCB menu.

Range Rings

Range rings are concentric circles drawn around a selected point with successive steps between their radii that are 2, 5, 10, or 20nm. With 5nm steps, the default, here are the 5 and 10nm range rings drawn around KEWR:


A few buttons on the main DCB make it possible to configure range rings. Clicking on RR activates a spinner that allows selecting the step between radii. If PLACE RR is clicked, then the next location clicked on the radar scope will become the range rings' center point. Finally, clicking RR CNTR causes the range rings to be centered on the point at the center of the radar scope; If the range rings are not currently centered, RR CNTR is drawn depressed.


The radius of the range rings can also be set by entering [RANGE] and then 2, 5, 10, or 20, and then pressing enter.

The brightness of range rings can be controlled with the "RR" spinner in the "BRITE" menu of the main DCB. If the brightness is set to 0, range rings are not drawn.

CRDA

The Converging Runway Display Aid (CRDA) helps ensure separation between aircraft on intersecting paths. It does so by drawing "ghost" aircraft on one course that correspond to aircraft on another course. Although originally designed for converging runways, CRDA regions can be defined for any pair of converging paths, including those based on fixes or curved routes. The idea is perhaps best understood with an example:


Here four aircraft are approaching KPHL, AAL45 and JZA868 landing runway 27R and JIA1524 and FFT5099 landing runway 17. With CRDA enabled, ghosts of the aircraft landing 27R are drawn on the runway 17 approach course at the same distance out as they are from the point where the two runways intersect. If we compare the separation of AAL45's ghost with FFT5099, we can see that there will be adequate separation between the two aircraft—FFT5099 will be well past where the runways intersect before AAL45 lands. It's a little tighter with JZA868 and JIA1524, though CRDA might give us the hint to slow down JZA868 to increase distance between them.

Ghost aircraft may be positioned via either "stagger" or "tie" mode. With stagger mode, the ghosts are the same difference from a common point (e.g., the intersection of two runways); the controller's goal is then to ensure adequate separation between ghost and actual aircraft radar tracks. Alternatively, with tie mode, ghosts are offset so that the controller's goal is to have actual aircraft radar tracks coincide with the ghost tracks in order to achieve separation.

When CRDA is available at an airport, the CRDA status list may be displayed on the STARS scope. Entering [MULTIFUNC]TN toggles whether it is shown, and [MULTIFUNC]TN[SLEW] repositions it on the screen. In the example below, we can see from the "S" in the line two below "CRDA STATUS" that CRDA is enabled in stagger mode for runways 27R/17 at KPHL for the current controller, who has ID 6F.

CRDA status list

Ghost radar tracks are normally only generated for aircraft within a pre-defined volume of space around an approach course and only if their heading is within a specified range of the approach heading. However, a number of commands below allow forcing a ghost track even if these criteria are not met.

A variety of commands are available to configure CRDA. The following parameters are used with them:

Identifier Format and Use
(AIRPORT) Airport identifier: three characters identifying an airport. Note that the leading "K" from ICAO airport identifiers should not be included: "BOS", not "KBOS".
(REGION) CRDA region identifier: the name of a CRDA region from an enabled pair. This may be a runway name (e.g., "22L") or any other identifier used in the scenario's CRDA region definitions. The name must uniquely identify a region among all enabled CRDA pairs (or be preceded by an airport identifier to disambiguate).

And these are the CRDA-related commands:

Command Function
[MULTIFUNC]N Toggles whether CRDA is enabled.
[MULTIFUNC]NP(AIRPORT) (#)/
[MULTIFUNC]NP(#)
Toggles whether ghost tracks are enabled for the CRDA runway pair at the specified airport. The number is an index into the list of CRDA pairs for the airport in the CRDA system list. If no airport is specified, the controller's default airport is used.
[MULTIFUNC]NP(AIRPORT) (#)S/
[MULTIFUNC]NP(#)S
Toggles stagger mode for the CRDA runway pair at the specified airport. The number is an index into the list of CRDA pairs for the airport in the CRDA system list. If no airport is specified, the controller's default airport is used.
[MULTIFUNC]NP(AIRPORT) (#)T/
[MULTIFUNC]NP(#)T
Toggles tie mode for the given CRDA runway pair at the specified airport. The number is an index into the list of CRDA pairs for the airport in the CRDA system list. If no airport is specified, the controller's default airport is used.
[MULTIFUNC]NP(AIRPORT) (#)D/
[MULTIFUNC]NP(#)D
Disables CRDA for the given runway pair at the specified airport. The number is an index into the list of CRDA pairs for the airport in the CRDA system list. If no airport is specified, the controller's default airport is used.
[MULTIFUNC]NL(AIRPORT) (REGION)(#)/
[MULTIFUNC]NL(REGION)(#)
Set the leader line direction for ghost aircraft at the specified airport and given region according to the given number. Clears the assigned leader line direction if '5' is given. The airport may be omitted if the region uniquely identifies the corresponding airport.
[MULTIFUNC]N*ALL Force ghost tracks for all aircraft. (Aircraft still must be within the lateral boundary of their CRDA region for a ghost to be displayed, however.)
[MULTIFUNC]N[SLEW] If a ghost track was slewed, suppress display of that ghost. If a primary track was slewed, enable regular display of its ghost.
[MULTIFUNC]N*[SLEW] If a ghost track as slewed, display the aircraft's flight plan in the preview area. If a primary track was slewed, toggle whether display of its ghost is forced (i.e., always displayed regardless of heading, altitude, etc., so long as it is within the lateral boundary of its CRDA region.)
[MULTIFUNC]N(AIRPORT) (REGION) / [MULTIFUNC]N(REGION) Toggles whether ghosts are generated for the specified region. The airport may be omitted if the region uniquely identifies the corresponding airport.
[MULTIFUNC]N(AIRPORT) (REGION)E / [MULTIFUNC]N(REGION)E Enable ghosts for the specified region. The airport may be omitted if the region uniquely identifies the corresponding airport.
[MULTIFUNC]N(AIRPORT) (REGION)I / [MULTIFUNC]N(REGION)I Inhibit ghosts for the specified region. The airport may be omitted if the region uniquely identifies the corresponding airport.
[MULTIFUNC]N(AIRPORT) (REGION) B / [MULTIFUNC]N(REGION) B Toggle whether the qualification region for the CRDA region is drawn; this is the lateral region of space aircraft must be inside for a ghost to be generated. The airport may be omitted if the region uniquely identifies the corresponding airport.
[MULTIFUNC]N(AIRPORT) (REGION) L / [MULTIFUNC]N(REGION) L Toggle whether the course lines for the CRDA region are drawn; these show the approach course that CRDA is defined with respect to. The airport may be omitted if the region uniquely identifies the corresponding airport.
[MULTIFUNC]TN Toggles whether the CRDA system list is visible.
[MULTIFUNC]TN[SLEW] Specifies the position of the CRDA system list in the STARS window.
[MULTIFUNC]TN(##) Specifies the number of lines of text in the CRDA list

Significant Points

There are a number of significant points associated with each TRACON; these include arrival fixes and exits, airports in the TRACON and other relevant fixes (e.g., those with predefined holds.) STARS offers two commands that print the distance and heading from a selected point (e.g. an aircraft) to a significant point.

Command Function
*F[SLEW][SLEW] Shows the distance and heading from the first slewed point to the significant point closest to the second slewed point.
*F[SLEW](FIX) Shows the distance and heading from the slewed point to the significant point identified by (FIX).

Restriction Areas

Restriction areas are annotations on STARS maps that add additional information, usually related to temporary conditions (flight restrictions, events, etc.) They may be circular, polygonal, or have no shape associated with them, and may include text that provides additional information about them. They are drawn in yellow in the STARS window and their brightness is controlled via the "Map group B" brightness.

Here is a circular restriction area with 2nm radius centered at the KFRG airport:


Restriction areas may be defined by the controller using commands described below or may be defined in scenario definition files (see STARS). If a controller defines a restriction area, it is make available to all other controllers in the session. As a convenience, vice also downloads the current FAA TFRs and automatically generates restriction areas for them.

The currently-available restriction areas can be seen via the restriction area list, which can be displayed and positioned using these commands:

Command Function
[MULTIFUNC]TRA Toggles whether the restriction area list is visible.
[MULTIFUNC]TRA[SLEW] Places the restriction area list at the slewed location in the STARS window.

Here is an example of the restriction area list:


Restriction area numbers 1—100 are used for user-defined restriction areas and 101—200 for system-defined restriction areas.

The following commands can be used to create and delete restriction areas. (Note that system restriction areas cannot be deleted.) The syntax of the (RATEXT) and (RALOC) specifiers used for restriction areas is discussed below.

Command Function
[F12]G(RATEXT)(RALOC) Creates a text-only restriction area at the specified location. It is optional to enter a space between the G and the text.
[F12]C(###)(RATEXT) (RALOC)[ENTER] Creates a circular restriction area with given radius in nautical miles at the given location. The text is centered in the circle. A space may be entered between the radius and the text.
[F12]C(###)(RATEXT) (RALOC)[SLEW] Creates a circular restriction area with given radius in nautical miles at the given location. The text is centered at the slewed location. A space may be entered between the radius and the text.
[F12]A(RALOC)(RALOC)...(RATEXT)[SLEW] Creates an open polygonal restriction area with the given text with the specified vertices. At least two vertices but no more than ten must be provided. The text is centered at the final slewed point. Here, the ellipsis ... indicates that additional (RALOC) locations may be given, seperated by spaces. A space may be entered between the A and the first location.
[F12]P(RALOC)(RALOC)...(RATEXT)[SLEW] Creates a closed polygonal restriction area (i.e., the last vertex connects with the first) with the given text with the specified vertices. At least three vertices but no more than ten must be provided. The text is centered at the final slewed point. Here, the ellipsis ... indicates that multiple successive (RALOC) locations may be given. A space may optionally be entered between the P and the first location.
[F12](###)DEL Deletes the restriction area with the given number.

In the restriction area commands, (RATEXT) is used to indicate specification of the text associated with the restriction area. One or two lines of text may be specified; if a second line is given, it should be separated from the first by a space. Because space is used to separate lines, periods must be entered for spaces within a line of text. These periods are converted to spaces by vice.

Depending on the context, a third line with additional qualifiers can be entered: to indicate that the text should blink and + to indicate that its associated shape should be shaded, or * followed by a number from 1—8 to specify a color for the graphics. Here are the colors associated with each number:

1 2 3 4 5 6 7 8

(RALOC) corresponds to specifying a location. One way to do so is by clicking a point in the STARS window; alternatively, the names of a fix, a fix offset by a given distance in a given direction, or a latitude-longitude coordinate may be provided. If keyboard entry is used, [ENTER] must be pressed after each location. Here are a few examples of text input:

  • CCC: specifies that the location of the CCC VOR should be used.
  • CCC/320/2.5: specifies a point 2.5nm miles along the 320 bearing from the CCC VOR.
  • 403758N/0734617W: specifies a latitude-longitude coordinate 40.37.58N, 73.46.17W. In other words, for latitude, the first two digits are degrees, the next two are minutes, and the next two are seconds, followed by a "N" or an "S". For longitude, three digits are used for degrees (and leading 0s must be used if necessary), then two digits for each of minutes and seconds, followed by "W" or "E". Latitude and longitude coordinates are separated by a slash /.

Putting all of the above together, the a restriction area above that is a 2nm circle around KFRG might be created by [F12]C2 REPUBLIC FRG[ENTER][ENTER]. We could instead make a shaded area with two lines of flashing by entering [F12]C2 REPUBLIC SHADED.AREA +∆ FRG[ENTER][ENTER]. Here is the result:


A number of commands are available to modify existing restriction areas and manage which ones are displayed:

Command Function
[F12]E(###) Displays the restriction area with the given number.
[F12]I(###) Hides the restriction area with the given number.
[F12](###) If the text in the restriction area with the given number is blinking, stops its blinking. Otherwise, toggles the restriction area's visibility.
[F12](###)T Toggles whether the text associated with the restriction area is visible.
[F12](###)T∆ / br [F12](###)T ∆ Toggles whether the text associated with the restriction area is visible. If it is visible, start the text blinking.
[F12](###)T(RATEXT) Changes the text for the associated restriction area to the specified text.
[F12](###)*(RALOC) /
[F12](###)*[SLEW]
Moves the center of the restriction area to the specified location. Note that only user-defined restriction areas may be moved.
[F12](###)*∆(RALOC) /
[F12](###)*∆[SLEW]
Moves the center of the restriction area to the specified location and display the text blinking. Note that only user-defined restriction areas may be moved.

Controller Airspace

Note: this feature is not present in real-world STARS.

vice is able to indicate when aircraft are outside of the departure or approach airspace, if it has information about the airspace boundaries. (This information is not available at all airports.) If an aircraft is outside of its assigned airspace, a red "AS" error will be printed at the top of its datablock, as shown below. The valid altitudes for the aircraft are shown as well, if there are any valid altitudes at its current location. For example, the aircraft below is at 5,000' but should be between 11,000' and 12,000' (or should be at a different location!)


The airspace volumes associated with controllers can be displayed by clicking on the button in the menu bar to display the information window and then opening the "Airspace" section.

STARS Configuration

Range and Center

The left side of the main DCB has a few buttons for controlling the range of the STARS scope and where it is centered:


Clicking on RANGE activates the range spinner, which allows setting the scope range to be between 6 and 256 nautical miles. The center of the scope can be changed by clicking PLACE CNTR; moving the mouse moves the scope accordingly. Click a second time when you're happy with the scope's position. Finally, OFF CNTR is shown as depressed when the scope's center is different than the default center specified in the scenario configuration. Clicking on it restores the center to the default.

Alternatively, center of the radar scope can be moved by clicking the right mouse button and dragging. Zoom in and out using the mouse wheel; each step increases or decreases the radius shown by one nautical mile. Holding down the control key while using the mouse wheel gives three mile steps in the radius. Zooming and panning the scope in this way can be disabled with vice's settings window, which is displayed when the in the menubar is clicked.

Character Size

Clicking the CHAR SIZE button in the main DCB brings up the character size DCB menu, shown here:


The sizes controlled by the buttons are:

Clicking DONE returns to the main DCB.

All types of character sizes may range from 0 to 5, except for DCB, which goes from 0 to 2.

Brightness

Selecting the BRITE button in the main DCB brings up the brightness DCB menu, shown here:


The item brightness that the buttons control are:

  • DCB: the DCB itself.
  • MPA: maps in group "A" (generally, the primary video maps).
  • FDB: full data blocks, the cursor, and preview area.
  • POS: position symbols in radar tracks owned by the controller.
  • OTH: datablocks and position symbols for tracks owned by other controllers and ghost tracks.
  • RR: range rings.
  • BCN: beacon targets (not currently used).
  • HST: history circles behind track paths.
  • WXC: weather contrast; i.e., the stippled patterns.
  • BKC: background contrast.
  • MPB: maps in group "B" (generally, the secondary maps).
  • LST: system lists.
  • LDB: limited and partial datablocks and their position symbols.
  • TLS: STARS tools.
  • CMP: the compass rose at the edges of the STARS display
  • PRI: primary target symbols.
  • WX: weather.

Some of these brightnesses can be set to 0, in which case "OFF" is shown in the BRITE menu and the corresponding item isn't drawn at all. Others have a minimum required brightness.

RADAR Sites

The STARS RADAR configuration can be managed by clicking the SITE button in the main DCB, which also shows the current RADAR mode. STARS supports three RADAR modes:

  • SINGLE: RADAR data from a single RADAR site is used determine aircraft locations.
  • MULTI: multiple RADAR sites are used to determine aircraft locations, where (more or less), the closest site to each aircraft is used.
  • FUSED: RADAR data from multiple sites is combined with ADS-B data from aircraft to determine their locations.

SINGLE mode can be selected by clicking on a radar site in the SITE DCB sub-menu (here, NXX and PHL are available.) MULTI and FUSED are selected by clicking on the corresponding buttons.


Note that the choice of RADAR mode affects which symbols are used for tracks in STARS. Furthermore, in SINGLE and MULTI modes, radar tracks are only updated once every 5 seconds. In FUSION mode, they are updated once per second.

Keyboard commands can also be used to select the RADAR mode:

Command Function
[SITE]+ Set fused radar mode.
[SITE]△ Set multi-radar mode.
[SITE](#) Select primary radar site by number.
[SITE](X) Select primary radar site by single-character identifier.

Audio

Audio alerts are played when there is a minimum safe altitude warning for an aircraft, if an aircraft is squawking a special purpose code (e.g., 7700 for an emergency), it a SPC has been manually assigned to an aircraft, or if there is a conflict alert between two aircraft. The "VOL" control in the main DCB can be used to control the volume of these alerts.

A few keyboard commands can be used to control audio:

Command Function
[MULTIFUNC]ZA Briefly plays the audio test sound.
[MULTIFUNC]ZEE Enables audio alerts when an invalid command is entered.
[MULTIFUNC]ZEI Inhibits audio alerts when an invalid command is entered.

vice also provides optional audio alerts for when there is an inbound handoff to the current controller and when an outbound handoff is accepted (though real-world STARS does not have these.) These alerts can be enabled and disabled under the "STARS" section of vice's settings menu.

Preferences

Various details of the current STARS configuration like brightness settings, font sizes, and the layout of the system lists can be saved in a STARS preference set. The current preference set stores the preference settings that are currently active, and up to 32 additional named preference sets can be stored. vice stores separate preferences for each TRACON, which makes it easy to customize STARS's settings in different ways for different facilities.

Functionality for loading and saving preference sets can be accessed by clicking PREF on the main DCB menu, which brings up the PREF menu:


Here we can see that there are two saved preference sets, PHLN and FINAL, and that FINAL is active. Clicking on a saved preference set selects it and loads its settings. Preferences can be restored to their defaults by clicking on DEFAULT. Clicking RESTORE restores the preferences to what they were when the PREF button was clicked to bring up the PREF DCB menu. If a preference set is selected, then SAVE is enabled; clicking on it saves the current preference settings to the selected preference set. DELETE deletes the selected preference set.

A new preference set is created when SAVE AS is clicked: the preview area will prompt PREF SET NAME and the name for the preference set can be entered, followed by the ENTER key. Preference set names may be up to 7 alphanumeric characters and may not be a number between 1 and 32.

These keyboard commands are available for preference sets:

Command Function
[MULTIFUNC]K Resets the current preferences to the system defaults.
[PREF SET](##) /
[PREF SET](ABC)
Selects a preference set by number (1–32) or name.

FDAMs

Flight Data Auto-Modify (FDAM) regions automatically modify flight data when an associated track enters an adapted airspace volume. Entry actions may include changing scratchpads, setting leader line directions, initiating handoffs or ownership transfers, and issuing force quicklooks. Some of these changes can be automatically reverted when the track exits the region. FDAM regions are defined in scenario configuration files; see the Facility Engineering section for details on their configuration.

The lateral extent of FDAM regions can be shown on the scope via "SYS PROC" from the DCB "MAPS" menu.

The following supervisor commands control FDAM processing.

Command Function
[MULTIFUNC]2X Toggles FDAM processing system-wide.
[MULTIFUNC]2XE Enables FDAM processing system-wide.
[MULTIFUNC]2XI Inhibits FDAM processing system-wide.
[MULTIFUNC]2X(REGION) Toggles FDAM processing for a single region.
[MULTIFUNC]2X(REGION) E Enables FDAM processing for a single region.
[MULTIFUNC]2X(REGION) I Inhibits FDAM processing for a single region.
[MULTIFUNC]2XS Displays the status of all FDAM regions.

Display Elements

In addition to radar tracks and their datablocks, the STARS display contains various system lists that display useful text information, video maps of the local control area, and, optionally, a weather radar showing precipitation. These are all described in this section.

System Lists

The system lists show various types of useful information in the form of text. Their font size can be adjusted using the "LISTS" control in the "CHAR SIZE" DCB menu and their brightness is set with "LST" in the "BRITE" DCB menu. All of the system lists other than ones for CRDA and maps are documented in this section; see the CRDA documentation above for information about the CRDA system list and Video Maps for information about the maps system list.

Lists can be repositioned by clicking the middle mouse button inside a list; a white frame will appear around the list. Move the cursor to the desired location and click the middle mouse button again to complete the move, or press Escape to cancel. If two or more lists overlap, green frames are drawn around them to indicate the overlap. Clicking and holding the middle mouse button (when not over a list or aircraft track) will display green frames and labels around all visible lists.

System Status Area List

The System Status Area (SSA) list displays general information about the configuration of the STARS radar scope. Here is an example:


The red triangle indicates that STARS is functioning correctly; in vice it will always be there. The first line of text shows the current zulu time 03:07:27 and the altimeter at the primary airport for the current scenario, PHL. The following line shows the network status (always "OK/OK/NA" in vice) as well as the current radar mode, FUSED. Next is the current range shown from the scope's center, 17nm, and the length of predicted track lines (PTLs), 0.5 minutes. Next are the altitude filters, first for unassociated tracks and then for associated tracks (both in hundreds of feet.) The next few line again shows the altimeter at PHL and contains the altimeters at nearby airports in multi-airport scenarios.

A few lines are only shown when corresponding features are enabled. Here, "QL: 6S" indicates that TCP 6S has been quicklooked and "TW OFF: MSAW" indicates that MSAW has been disabled system-wide. Finally, we can see that CRDA has been enabled for the runway pair 27R/17, with the "S" indicating "stagger" mode.

The SSA list is always visible; a keyboard command is available to position it:

Command Function
[MULTIFUNC]S[SLEW] Places the upper-left corner of the SSA list at the selected location.

The SSA list also includes the ATIS letter and GI (General Information) text, which can be set with the following commands:

Command Function
[MULTIFUNC]S Clear ATIS and first line
[MULTIFUNC]S(A) Set current ATIS where (A) is a letter from A to Z.
[MULTIFUNC]S(A)(TEXT) Set the ATIS in the first line to (A) and the GI text to (TEXT)
[MULTIFUNC]S* Clear ATIS in the first line
[MULTIFUNC]S(A)* Set current ATIS where (A) is a letter from A to Z and clear the first line of GI text
[MULTIFUNC]S(#) (A) Set the ATIS in the given line
[MULTIFUNC]S(#) (A)* Set the ATIS in the given line and clear the line's GI text
[MULTIFUNC]S(#) (A) (TEXT) Set the ATIS in the given line and the line's GI text to (TEXT)
[MULTIFUNC]S(#) (TEXT) Set the given line of GI text to (TEXT)
[MULTIFUNC]S(#) Clear ATIS and GI text given line
[MULTIFUNC]S(#) * Clear ATIS in given line
[MULTIFUNC]S(#) * (TEXT) Clear ATIS in given line and set GI text

Which elements are displayed in the SSA list can be configured by selecting the "SSA FILTER" menu from the main DCB, which brings up the SSA DCB.


The buttons toggle display of the following elements:

  • TIME: current time in zulu
  • STATUS: system status; always "OK/OK/NA"
  • RADAR: radar mode: FUSED, MULTI, or SINGLE
  • SPC: whether to show an alert for any special purpose codes currently being squawked by aircraft (e.g., "RF" for an aircraft squawking 7600 due to a radio failure.)
  • RANGE: radar range
  • ALT FIL: altitude filters
  • AIRPORT: altimeter at nearby airports
  • QL: quick looked sectors
  • CRDA: active CRDA pairs
  • WX: available and displayed weather precipitation levels
  • ALTSTG: show altimeter at primary airport
  • CODES: show selected beacon codes
  • PTL: length of predicted track lines
  • WX HIST: weather history snapshot currently being displayed
  • TW OFF: disabled system features (e.g., CA, MSAW)

Flight Plan List

The flight plan list shows flight plans that are not yet associated with aircraft and that you will be responsible for when they do. (This includes both future arrivals and departures.) Once they are associated with aircraft, flight plans are automatically removed from the list. Here is an example:


Each line includes the flight's tab list id, a two-digit number that can be used to refer to the flight plan with STARS commands, the aircraft's callsign, the assigned beacon code (right column), the aircraft's final altitude in hundreds of feet, and one letter indicating the arrival/departure fixes.

The flight plan list can be managed with these commands:

Command Function
[MULTIFUNC]T Toggles whether the the flight plan list is visible.
[MULTIFUNC]T[SLEW] Places the upper left corner of the flight plan list at the slewed point.
[MULTIFUNC]T(##) Sets how the maximum number of lines of text displayed in the flight plan list. If not currently visible, the flight plan list is made visible if the number of visible lines is set.

VFR List

The VFR list shows VFR flight plans that have NAS beacon codes assigned. It shows the tab list index, the callsign, and the assigned beacon code.


The VFR list is managed with these commands:

Command Function
[MULTIFUNC]TV Toggles whether the the VFR list is visible.
[MULTIFUNC]TV[SLEW] Places the upper left corner of the VFR list at the slewed point.
[MULTIFUNC]TV(##) Sets how the maximum number of lines of text displayed in the VFR list. The VFR list is made visible if the number of visible lines is set when it is invisible.

Tower List

The tower list shows arrivals at an airport. Up to three tower lists can be displayed; each show arriving aircraft sorted by their distance to the airport. The assignment of airports to tower lists is done by the facility engineer in the scenario specification and can't be changed while vice is running. Here is an example, showing a few arrivals to PHL:


The following commands can be used to configure the tower lists. For all of them the first number gives the tower list index and must be 1, 2, or 3.

Command Function
[MULTIFUNC]P(#) Toggles whether the corresponding tower list is shown.
[MULTIFUNC]P(#)[SLEW] Places the upper left corner of the given tower list at the slewed point.
[MULTIFUNC]P(#)(##) Sets how the maximum number of lines of text displayed in the specified tower list. The first number corresponds to the tower list index.

Alert List

The Alert List shows the aircraft that currently have altitudes below the minimum vectoring altitude at their present position (LA) or have collision alerts (CA). Below we see that JZA868 is too low (and is currently at 600 feet altitude) and that separation has been lost between JIA1524 and NKS9096.

la/ca system list

The maximum number of lines in the alert list is hard-coded to 50 and it is not possible to hide the alert list. However, its position in the STARS window can be set using the following command:

Command Function
[MULTIFUNC]TM[SLEW] Sets the position of the alert list on the STARS scope.

MCI Suppression List

If specific MCI alerts have been suppressed, the corresponding pairs of callsigns and beacon codes are listed in the MCI suppression list. Commands are available to control whether it is displayed and where it is placed on the screen.


Command Function
[MULTITUNC]TQ Toggle display of the MCI suppression list.
[MULTITUNC]TQ[SLEW] Place the MCI suppression list at the selected location on the screen. The list is also displayed if it has previously been hidden.

Coast/Suspend List

The coast/suspend list lists coasting tracks (not yet implemented in vice) and suspended flight plans.


This list is always visible, but its position and length can be set:

Command Function
[MULTIFUNC]TC[SLEW] Places the upper left corner of the Coast/Suspend list at the slewed point.
[MULTIFUNC]TC(##) Sets how the maximum number of lines of text displayed in the Coast/Suspend list. The list is made visible if the number of visible lines is set when it is invisible.

Coordination Lists

Coordination lists are used for tower and departure controllers to coordinate aircraft releases. When there is a departure ready to be released from an airport the controller is responsible for, it is added to the coordination list by the tower controller. After the departure controller releases an aircraft, it will depart within the next few minutes. Here is an example coordination list:


Aircraft that are awaiting release flash, as DPJ7156 is here. Released aircraft are no longer flashing and have a plus sign after their tab list number (here, 0 and 2 for EJA5253 and LXJ13, respectively.) The coordination list also includes the aircraft type, the aircraft's assigned squawk code, its exit, and its requested final altitude.

These keyboard commands are used to manage coordination lists and releases:

Command Function
[F13] If there is a single unreleased aircraft in the controller's coordination lists, release that aircraft.
[F13](FLT ID) For an unreleased aircraft, release the specified aircraft; if the aircraft has been released, then remove it from the coordination list. Aircraft may be specified by their callsign, beacon code, or their list number (the first column).
[F13]P(ID) A* Enable automatic releases for the specified coordination list. Note that automatic releases only apply to new aircraft; aircraft already in the list waiting to be released still must be released manually. "AUTO" will appear in the header line of the coordination list when automatic releases are enabled.
[F13]P(ID) M* Disable automatic releases for the specified coordination list.
[MULTIFUNC]P(ID)[SLEW] Specifies the position of the given coordination list in the STARS window.
[MULTIFUNC]P(ID) (##) Specifies the number of lines to display in the given coordination list.
[F13]T Toggles whether empty coordination lists are displayed.
[F13]TE Enables the display of empty coordination lists.
[F13]TI Disables the display of empty coordination lists.

Coordination list identifiers ((ID) in the above commands) are one to three alphanumeric characters. They can be found in the scenario information window, accessed by clicking the button in the menubar. Here we can see that the "REPUBLIC" coordination list has id "A".


Sign On List

The sign-on list shows the TCP covered by the current controller as well as the time they signed on (in Zulu time).


It can be configured using these commands:

Command Function
[MULTIFUNC]TM Toggles whether the sign on list is shown.
[MULTIFUNC]TM[SLEW] Sets the position of the sign on list on the STARS scope.

Video Maps

One or more video maps may be displayed in the STARS window to show items like airports and runways, approaches, important fixes, and geographical features like bridges. There are default video maps specified for each control position and controllers may add an remove maps depending on circumstances.

The main DCB includes a MAPS button, which displays the DCB MAPS menu, and six buttons to toggle the display of six video maps; here are six from a KJFK scenario:


The button for map number 849, CLASS_B, is depressed, indicating that the corresponding map (which shows the class B airspace) is currently visible. The other maps are not currently displayed. Clicking on map's button toggles whether it is visible.

Here is the MAPS DCB menu for that same scenario:


The map labeled 4L_R which has number 201, is currently visible, though none of the others are. Each map is in one of two map groups—A or B; the brightness of the groups is controlled by MPA and MPB in the BRITE DCB menu. Unfortunately, STARS doesn't directly show which group a particular map is in.

The other buttons in the MAPS DCB do the following:

  • DONE: returns to the main menu.
  • CLR ALL: deselects all video maps.
  • GEO MAPS: toggles display of the maps system list and shows the available video maps in it.
  • SYS PROC: toggles display of the maps system list and shows maps related to STARS system operation (e.g., CRDA regions, ATPA volumes, RADAR site ranges, etc.) in it.
  • CURRENT: toggles display of the maps system list and shows the currently displayed maps in it.

Depending on which maps have been included, there may be buttons for the following map categories; when pressed, they cause the corresponding type of available maps to be shown in the maps system list: AIRPORT, CONTROL, DANGER AREAS, GENERAL AV, GEO POINTS, MIL, RUNWAYS, and SID STAR.

Here is the maps system list for that same KJFK scenario. For each map, we have the map number, the map label (as shown in the DCB), and a longer name describing the map's contents. Maps that are currently displayed have > symbols next to them.


The following keyboard commands can be used to manage video maps.

Command Function
[MULTIFUNC]TX Toggles whether the maps list is shown.
[MULTIFUNC]TX(###) Sets the number of lines of text in the video maps list.
[MULTIFUNC]TX[SLEW] Sets the position of the maps list on the STARS scope.
[MAPS](###) Toggles display of the video map with the given map number.
[MAPS](###)E Displays the video map with the given map number.
[MAPS](###)I Stops displaying the video map with the given map number.
[MAPS]A Removes all video maps.

Preview Area

The preview area is a display element that shows various types of information when using different commands, such as flight plan details, coordinates, or quicklook status.

The following command allows you to position the preview area:

Command Function
[MULTIFUNC]P[SLEW] Places the preview area at the selected location.

Weather

The current weather radar that shows precipitation can be displayed on the STARS scope. Here is an example North of KORD during some summer thunderstorms. The blue-green areas indicate light precipitation, while the mustard-colored area is moderate to heavy precipitation. Stippling in the radar also indicates the strength, where a denser stipple is heavier precipitation.


AWI8111 would be well-advised to turn a few degrees to the right.

The brightness of the weather on the STARS scope can be controlled using the "WX" spinner in the BRITE menu of the DCB and the brightness of the stipple is controlled using the "WXC" BRITE control. It is also possible to control which levels of precipitation are shown using the "WX*" buttons in the main DCB. When precipitation of a given level is available to be displayed, "AVL" is shown in the button and the button has a blue-grey color. When there is no precipitation at a level, the corresponding button has the regular green color.


With the selection above, the three lowest levels, WX1 and WX2 are not shown, while all of the higher levels of precipitation are.

If the WX button in the SSA list is enabled, the currently available WX levels and whether they are displayed is shown in the SSA list. In the example below, there is precipitation at levels 1–5, though not 6. Levels 3, 4, and 5 are shown in the STARS window:


A few keyboard commands related to weather are available:

Command Function
[MULTIFUNC]W∆ Display weather history: the precipitation shown two weather cycles ago is shown for 5 seconds, then the precipitation from the previous cycle is shown for 5 seconds. (Weather is updated every 5 minutes, so this shows the last 10 minutes of weather radar.) While the history is drawn, "IN PROGRESS" is shown in the preview area. If WX HIST is enabled in the SSA list, then "WX HIST:" and the history index is shown there.
[WX]A Recall previously selected weather levels (toggles between current and previous weather display settings).
[WX]C Clear weather display: don't show any levels of weather radar in the STARS window.
[WX](#) If # is between 1 and 6, toggle display of the associated weather radar level.
[WX](#)E If # is between 1 and 6, enable display of the associated weather radar level.
[WX](#)I If # is between 1 and 6, disable (inhibit) display of the associated weather radar level.

Vice-Specific Display Commands

vice provides a few additional display commands not found in the standard STARS system:

Command Function
.BOUNDS Toggle display of the TRACON boundary on the STARS scope.
.ROUTE[SLEW] Display the filed route for the clicked aircraft, showing it as a line on the STARS scope.
.ROUTE Clear the route display.