Monday, October 12, 2015

Compatibility...

Charts...

If you have created some charts with the previous EasyATC V1.1 and you want to keep them, you must update their format...
  • Make a backup of the files first
  • Open the flight planner
  • Select Helpers/Update format.
  • A dialog box should display the number of updated files (only .txt files are processed).
  • Then open a flight plan and check that the columns are correctly filled. The new column ATC type should display some ATC type items. The updater is supposed to automatically fill this field depending on the ATC callsign field: if you have Dallas Center, CENTER should now be displayed on the ATC type column. You have now to remove the Center word from the Callsign to just keep Dallas).

Waypoints fields...

The waypoints are edited in the flight planner before the flight. A bunch of waypoints is a chart. Waypoints are defined by several fields...

Identifier
The identifier of the airport, the navaid the fix or whatever this waypoint is.
  • This identifer should be the official name of the checkpoint so that EasyATC can find some extra information about this checkpoint within the simulator data.
  • That said, the identifier can be the name you want. In some cases you will need to use a custom name
    • If you need a checkpoint somewhere for a better realism in ATC behaviour
    • If you have cross-overs in the flight plan
  • A given chart cannot have two waypoints with the same identifier. But a bunch of charts within one flight plan can. See Charts section...
  • Avoid special characters especially ";". I often use " ", "-", "(" or ")".
Type
The kind of checkpoint it is. Note that you can leave this field blank. No problem for the ATC. But the better there are filled, the best the ATC will be smart!
  • APRON - For Taxi charts only. This type define the parking place you use to start from. At this stage, EasyTAC only use the ATC information (frequency and callsign) as the ATC to contact to have a flight clearance.
  • APT – An airport you plan to fly over and not land on nor take -off from
  • RWY_ALT - Alternate airport. The ATC will ignore this waypoint until you contact its controller or if you set your transponder to emergency and this airport is the closest in the flight plan.
  • RWY – An airport (a runway, actually…) you plan to land on or take-off from
  • RWY_L – The same with some detailed knowledge provided to EasyATC. This way it will know there are two runways and this one is the left one!
  • RWY_R – Same but right side…
  • FAF – Final approach fix. Used by EasyATC to announce the « cleared to land » message. If no FAF, EasyATC uses a mix of the distance to the airport and the plane heading to speech this message anyway…
  • IAF – Initial approach fix. Used by EasyATC to know when talking to you about the expected landing procedure and runway
  • IF – Intermediate fix (not used at this stage)
  • HOLD – Holding pattern entry point. This way EasyATC knows it can ask you to wait a little bit ! Not used yet but coming soon…
  • MAPT – Missed approach point. Not used at this stage but who knows…
  • REPORT – (VFR only) A fix where you have to report to the ATC (not implemented yet)
  • TWY – Taxiway checkpoint. EasyATC will soon be able to give you some taxiway directives I hope…
ATC Callsign
The name the ATC calls itself when talking to you. It's the name of the controller you are supposed to talk with from this checkpoint to the next one.

ATC Type
The kind of ATC. See ATC section for details...
  • APPROACH
  • CENTER
  • DEPARTURE
  • FIS
  • GROUND
  • TMA
  • TOWER
  • UNICOM
ATC Freq.
  • The frequency of the ATC.
  • WARNING: no decimal. This weird format is the way the frequencies are stored inside X-Plane...
  • Note that when the frequency is filled by the auto-complete helper, the last digit (sixth one) is always "0" which can leads to wrong frequency like 128170. The right frequency should be 128175. This is because the frequency in the X-Plane data files are stored with 5 digits and I just add a 0. Should be improved later...
Transition altitude
The published transition altitude of the airspace the waypoints belongs to. This field can be left blank in most cases since EasyATC apply the default transition altitude as defined in the Constants.

Altitude
The minimum altitude at this point or the cruise altitude planned

Speed
The speed to not exceed at this point

Heading
The expected heading from this checkpoint to the next one. his can be left blank since EasyATC computes the headings "on the fly". It must be filled in the given cases:

  1. The waypoint is an airfield : the heading must be the heading of one of the runways (note that if it does not match the wind direction, EasyATC will automatically reverse the heading for take-off or landing)
  2. You want the ATC to give you the route as published in the charts (if you are out of the track (IFR), or if you ask for the heading to the next waypoint, or when the ATC wants to give you some NavAid advices). Don't worry, if this field is not filled, the ATC will calculate a relevant heading.

Latitude/Longitude
Decimal coordinates of the checkpoint. Please use “.” and not “,” for decimals. Note that you can double click on the cell to open the Converter windows (see below…)

DME distance
This field is used in the following cases:

  1. The expected DME radius if this waypoint belongs to a DME arc procedure.
  2. The magnetic variation of the airfield if the waypoint is an airfield.
Then, if EasyATC finds a value in this field and if the waypoint is not an airport, he expects you to fly a DME arc of the given distance from the NavAid1.


NavAid1
The NavAid you are supposed to use when following the given Heading or the DME arc. When it's not a DME arc, use this NavAid1 if the route is outbound from the NavAid

Freq.
The frequency of NavAid1

NavAid2
The NavAid you are supposed to fly inbound when following the given Heading.

Freq.
The frequency of NavAid2

Custom message
Optional. This field can be used in the followig cases:

  1. The name of the SID or STAR procedure if it's the first waypoint of the chart. This name is used by the ATC when giving you the approach clearance ("cleared for Los Angeles airport LOC ILS approach, blabla..."
  2. The name of the Apron if the waypoint is the Apron of a Taxi chart.
  3. Extra message the ATC will say when you will trigger this waypoint

Linked checkpoints
The identifier(s) of the waypoint(s) EasyATC can ask you to proceed directly after flying over the waypoint. The probability of shortcuts is defined in the Constants and the destination is chosen randomly through the available identifiers. You must separate the identifiers with “;”

Flight plans and charts directories...

Three folders are used for flight planning. You can add some sub-directories for your own purpose if you want but the flight plan and the chart files MUST remain at the root of these directories.

ACTIVE_FlightPlan
In this folder, the flight planner makes a copy of the flight plan you have saved as the active flight plan.

DATABASE_FlightPlans
When you save or save as a flight plan, it is stored in this directory.

DATABASE_Charts
When you save a single chart or a flight plan, this chart or all the charts in the flight plan are saved (or updated) in this directory.

How to create a flight plan?

You can edit quick flight plans from an airport to another with a bunch of checkpoints from scratch. You can do the same by importing a FMS file. And if you want to fly a fully realistic flight route with close to reality communications with ATC, you can edit an advanced flight plan.

Taxi chart...

Taxi charts can be edited to make taxiing more realistic. Since version 3.0, the taxi charts are dynamically loaded by EasyATC. It is not needed anymore to put a Taxi chart in the flight plan when editing.

How it works...
Take-off
When you start your flight on ground, EasyATC detects the airport you are triggering, let say LFKJ, and try to find a LFKJ Taxi chart. If he doesn't find, he simply expects you to call the ATC of the airfield as edited in the flight plan (usually a TOWER), see Default taxi below...
If he finds an Taxi chart for the airfield, EasyATC expects you to first call the ATC as edited in the APRON line of the Taxi chart (see Edition below...) to get the flight clearance. When the departure ATC will give the flight clearance, he will give you the frequency of the GROUND ATC (this frequency is edited in the holding short lines)

Landing
When you approach on airport and have requested to land, EasyATC detects the airport you are targeting, let say LFKJ, and try to find a LFKJ taxi chart.
Once you have touched down, EasyATC looks for a GROUND frequency in the Taxi chart. If he finds one, the Airfield ATC (usually a Tower) will say "welcome in Ajaccio airport, call back runway vacated" and then (when you will have called back), "contact ground on xxx.xx, bye bye". Then you can ask a taxi clearance to the GROUND ATC. EasyATC will pick-up the closest holding point from your plane in the taxi chart and will deliver the appropriate taxiways to use to go back to the APRON. 

Default taxi...
If there is no taxi chart in the flight plan, you must ask the flight clearance and then the take-off clearance to the ATC of the airport you take-off from (usually a TOWER).

Edition...
Apron
  • The first line of a Taxi chart must be an APRON in the Waypoint type field and the Identifier field must be the name of the airport (I mean the same name that you put in the flight plan, usually the OACI code)
  • Set the ATC Callsign and Frequency to the ATC you have to contact for the flight clearance
  • The coordinates of the Apron are used for one thing: after landing, when you get the taxi clearacne to go back to the APRON, once you are at less than 0,1 Nm from these coordinates, the taxi ATC will deliver you a "frequency change approved, bye bye" message and the flight will be closed. Note that you can use the transit out request to force the ATC to close the flight.
  • Since V3.0 the DME distance field is used to indicate the magnetic variation of the airport.
Holding points
  • The Identifier is the name of the holding point used by the ATC when saying "taxi to holding short Identifier via..."
  • Select RWY, RWY_L or RWY_R to allow the ATC to know which runway this holding point gives access
  • Set at least one of the holding points with a GROUND frequency. I usually edit this frequency in the first holding point of the chart. Note that it's not possible at this stage to have different GROUND frequencies depending on the taxiway...
  • Don't forget to indicate to the ATC the Heading of the runway. Usually, a given holding point is used for one runway direction. If the holding point can lead to the two directions, duplicate the line: one with a given heading, one with the opposite heading. If you don't fill the heading cell (like in the sample image above), the holding point is only used as an exit after landing.
  • Be precise in the coordinates values. Please use the Record feature (since V3.0) to set coordinates precisely.
  • The Linked checkpoints column is filled with the taxyways identifiers separated by spaces. The ATC will enumarate the identifiers by spelling the letters and numbers : example, if you want the ATC to say "Golf one, Delta one, Charlie", the field must be G1 D1 C
Runways info
Since V3.0, you must indicate some information about the available runways. This has been added to fix problems in big airports!
  • A runway information line is identified by setting the ATC Type field value to INFO.
  • Put the Identifier you want. EasyATC don't use it. I usually write RWY 10/28, RWY 01/19 L, RWY 04/22 R, etc...
  • Set the Checkpoint Type with the appropriate kind of runway
    • RWY if this runway has not a "twin" runway on left or right
    • RWY_L or RWY_R if the runway has a left and a right "twin".
    • Note that you don't need to have one line per directions.
Example: in Los Angeles KLAX, there is 2 runways 06/24 and 2 runways 07/25. Note that only two headings are edited: 060 and 070. Let say EasyATC needs to make you take-off or land on the runway 25, he will just pick-up randomly one of the runways 07 and simply reverse the Heading value (and the side: 07 RWY_L will become 25 RWY_R!)


  • The coordinates are very important: EasyATC uses them to know if your plane is on the right runway and in the right direction. These coordinates must be as close as possible to the middle of the runway. Please use Record feature to set these coordinates precisely.

Voices...

To work properly and to be understandable, EasyATC needs at least two synthetic voices installed in the OS.
Assuming you have, when the controller changes during the flight (when ATC Frequency change), a new voice is picked-up among the available installed voices. The pilot's voice is never selected to avoid "monolog" feeling!

Setting voices...
  • To have enough synthetic voices, you need to install one ore more languages in your OS. These voices are called "System voices". See this How to...
  • Since V3.0 you need to install this to benefit extra synthesizer voices ( install x86_SpeechPlatformRuntime\SpeechPlatformRuntime.msi or x64_SpeechPlatformRuntime\SpeechPlatformRuntime.msi depending on your Windows (32 or 64bits), then you can install some of the Microsoft Speech Runtime Languages. Note that the issue related here usually happens. See this bug before installing any of those voices!
  • Clic on Settings/Pilot's voice to select the voice you want for the pilot (this dialog should appear the first time you execute EasyATC)
  • You can disable/enable the Pilot's voice. Note that this just disable the sound, but the readbacks will still be displayed in the Message text box.
  • You can disable/enable the Pilot's auto-readback too. In this case, you need to press a key to readback. If not the ATC will ask "did you copy?"
Languages...
Settings
  • Clic on Settings/Language and select the language you want the ATC and the pilot to use.This is not affecting the localization of the synthetic voices but just the words they will say. It means that if you select French for example, whatevever the localization of the voice is used by the ATC (English, Chinese,..), it will speak in french! But the accent will be english or chinese...
Editing
You can modify the languages files as you wish.
    • I recommend to make a backup first.
    • You must keep the first line (localization official string to define the languages, for example FR-fr)
    • You must keep the line structure
Each sentence or word is defined as an identifier followed by the corresponding text. Both parts are separated by a dot comma (";"). You MUST keep this structure!

Example:
AIRPORT_LOCATION; runway at about 
  • AIRPORT_LOCATION is the identifier
  • runway at about is what the ATC or the pilot will say
  • Note that there is one empty/blank character at the beginning and at the end of the sentence. If you forget this space, the sentence will be "runway at about20 miles" instead of "runway at about 20 miles". EasyATC will not crash but the speech will be weird...
  • You can add commas to make some short pauses in the ATC speech if you wish (already done in some of the topics (Squawk code or QNH).
Speed
If you provide Taxi charts to the ATC in your flight plan, the number of runways impacts the speed of the voice of the ATC. Within the code, the Rate property of the Synthetic voice is increased so that the controller seems busy! This is fake and will be improved one day depending on time and day of the week and who knows... traffic density!
Speed is slightly increased when your plane is on emergency too.

Traffic patterns...

When flying VFR, after having requested instructions for landing to the Tower ATC, or announced your landing in Unicom, you can use the Landing Pattern request (not a request actually but it works the same way than the requests (by pressing the appropriate key on your keyboard)).
The Landing pattern command makes the pilot announce the appropriate landing pattern state among the following...
Entry...
  • To hear the pilot saying "entering...", your altitude MUST be 1500 ft or more ABOVE the airfield altitude (so don't forget to indicate the altitude of the airfield in the filght plan).
  • If you fly on the downwind left hand side of the runway, the pilot will say "entering left hand". He will say "entering right hand" if you approach from the other side.
  • If you fly BELOW this limit, EasyATC will consider you have entered the traffic pattern and the pilot will say one of the followings...
Pattern...
Crosswind
"Crosswind left hand" if your heading is close to 90° from the runway landing heading AND the airport is between 9 and about 11 o'clock. I let you guess for the right hand...


Downwind
"Downwind left hand" if your heading is close to 180° from the runway landing heading AND the airport is between about 7 and 11 o'clock.

Base leg
"Base leg" if your heading is close to -90° from the runway landing heading AND the airport is between about 9 and 11 o'clock.

Final
"Long final" if your heading is close to 0° from the runway landing heading AND the airport is between about 10 and 2 o'clock AND you are at more than 5 miles from the airfield.
"Short final" if you are closer.

FAQ...

Why the ATC is not talking?
  • Normally, the Debug display should indicate everything you need to understand why the ATC is not talking. Look at the ATC COM1 CANNOT SPEAK text. If everything goes right, this text should be followed by the reason why it is not talking. See Debug display for the different cases...
  • If ATC COM1 CANNOT SPEAK is not displayed but EXPECTED STATE is displayed, check the following:
    • The synthesis voices of your OS are working fine
    • Make sure ATC is enabled

Why the ATC is speaking continuously, randomly?
  • Make sure the keys you use for requesting are not used for any other purpose (moving flaps of your plane for example!). In this case, while you just want to move down your flaps, maybe you will request a lower altitude to the ATC!
  • Make sure you have at least two different voices installed so that the pilot and the ATC speaks with different voices. If not, it sounds like a horrible monolog!

Why the ATC expected flight segment remains the same while I don't fly this segment?

Why the ATC is not clearing me to take-off?
First there is two clearances before starting a flight: a flight clearance and a take-off clearance. If you have a taxi chart, see the Taxi chart article for how requesting flight, taxi and take-off.
  • Check that you are using the right runway! Ask a take-off clearance and pay attention on the runway heading the ATC gives. Depending on the wind direction, the take-off runway can be different from the planned runway.
  • If you are not using a taxi chart, you must be on the right side of the expected runway with the same heading (+/- about 10 degrees). Make sure the coordinates of the airport are as close as possible to the middle of the runway you want to take-off from: to know if you are ready for take-off, EasyATC processes the coordinates and heading of your plane with the coordinates of the airport and the heading of the expected runway. 
  • If you have a taxi clearance (see Taxi chart section), make sure you are within the trigger limit of the taxi waypoint (0.1 Nm by default, this value is displayed in the Debug text)
  • You must trigger the airport
  • You must talk to the appropriate ATC: any ATC that have the same CallSign that the aiport. For example if you take-off from Lima, you must contact a Lima ATC (Lima Tower or Lima Approach or Lima Departure). Note that Centers and FIS don't deliver take-off clearance.

Why the ATC is not clearing me to land?
  • Make sure you are landing in the right direction. Ask a landing clearance if needed and pay attention on the runway heading. Depending on the wind direction, the take-off runway can be different from the planned runway.
  • The ATC says the clearance:
    • You just have triggered a FAF or a MAPT waypoint (IFR stuff)
    • If not, when the distance from your plane to the airport is lower than about 2.5 miles (actually, it depends on the triggers min, max, and minimum for airport Constants)

Why my requests are not said nor displayed?
  • Make sure the EasyATC/Preferences/Commands.txt file exists, is not corrupted and all the commands you want to use have a valid value (not equal to -1)

Quick start...

Assume that you have properly installed EasyATC. The simulator can be running.

Settings...
Execute EasyATC.exe. This window should open...


Clic on Settings/Language and select the language you want the ATC and the pilot to use.
    • This is not affecting the localization of the synthetic voices but just the words they will say. It means that if you select French for example, whatevever the localization of the voice is used by the ATC (English, French, Chinese,..), it will speak with a french voice and accent...
Clic Settings/Requests
    • Select the line in the list you want to change then press the key you want to use for the given request. The key you pressed must appear in the "Key" column.
    • WARNING: you must use keys that you will not use in X-Plane or any other application! If not, assuming that "A" key is requesting for take-off clearance in EasyATC and is used for toggling gears in X-Plane, when you will press this key after take-off to move up gears, the pilot's voice will request for a take-off clearance!
    • Clic Save button when all affectations are done
    • WARNING 2: since V4.Beta, any input requires TWO key presses: see Requests and clearances section
Check Settings/Voices options and check//uncheck as you wish...

Flight plan...
  1. Clic Flight plan/Create/Load/Edit
  2. Clic New to create a flight plan, Load or Load FMS file
  3. Clic Flight plan/Save as active flight plan
    • This makes a copy of the flight plan file into the EasyATC active flight plan directory so that the ATC is now informed that you gonna fly this flight plan
    • You can close the Flight planner (or not...)
Take-off...
  1. Run X-Plane if it is not running yet
  2. Deactivate the default X-Plane ATC (Settings/Sound  and uncheck verbal ATC and text ATC)
  3. Move to the starting airport of the flight plan. Put the plane at the starting point of the runway you selected in the flight plan or in a parking or an apron.
  4. On EasyATC, clic ATC/Enable
    • Select the flight mode you want to fly (VFR or IFR). Note that any flight plan can be fly on both modes but the ATC will not behave the same way.
    • Select your expected cruise altitude
    • You can Reverse the flight plan by checking the Reverse Flight Plan check-box (not tested a lot. Probably buggy!)
    • The ATC menu item color should switch from red to green
    • The debug text box at the bottom of the EasyATC should display the plane position and the closer flight segment. See Debug display section...
  5. Set your COM1 radio to the airport frequency (Frequency column in the flight plan)
  6. Press the flight request key
    • You should hear the pilot calling the ATC if you have enabled the pilot's voice...
  7. Enjoy your flight!

Installation...

Prerequisite...
  1. For Windows only. Tested on Windows 8.1 & 10
  2. You need to have at least two synthetic voices in your OS
Installation...
  1. Unzip the downloaded file
  2. Copy the EasyATC directory in your C:\ root (EasyATC is supposed to work wherever you put this folder. It seems to work but I didn't really try...). If any update is available, usually a single executable file, replace the (old) exe in the main package by the (new) updated exe.
  3. Copy the EasyATCPlugIn into the X-Plane/Resources/plugins directory
  4. Now you are ready for Quick-start