Add a custom ILS approach in FSX: place the localiser and glideslope, create approach data, compile the BGL, install it and fix common faults.
To add a custom ILS approach in FSX or FSX: Steam Edition, edit the airport with an FSX-compatible airport design tool, place and configure the localiser and glideslope, link them to the runway, add the approach procedure if GPS/ATC recognition is required, compile a scenery BGL, then activate it above the stock airport.
FSX treats the radio beam and the published approach procedure as separate data. Adding only the localiser and glideslope gives you signals that can be tuned manually; it does not necessarily create an approach in the GPS PROC menu or make FSX ATC and AI traffic use it.
| Required result | Data to add |
|---|---|
| Manual ILS and autopilot capture | Localiser, glideslope and runway association |
| Approach listed in the GPS | ILS equipment plus an approach procedure and its legs |
| Better ATC and AI recognition | Complete approach, transition and missed-approach data |
| Correction of an existing ILS | An airport override that suppresses or replaces the old data |
Can I modify a default FSX airport safely?
Yes—modify it through an add-on airport BGL, never by replacing FSX's stock scenery files. Load the stock airport into an FSX-capable airport editor, make the change in a separate project and compile an override which sits above the default scenery.
Airport Design Editor, commonly called ADE, is one tool used for this work. It must be configured in FSX mode and have access to an FSX-compatible BGL compiler; an FS2004 or Prepar3D project should not be compiled and assumed to behave identically. Compiler availability and setup can differ between boxed FSX and FSX: Steam Edition installations.
If you are correcting an airport supplied by another add-on, edit that airport's project when permitted or remove the conflict. Stacking several BGL files that all redefine the same runways, ILS equipment and approaches is a common cause of duplicate or ignored data. This practical Detroit AFCAD example with modified approach data shows the type of airport-level work involved.
How do I create the localiser and glideslope?
Create the beam, runway association and procedure data in the airport editor before compiling the FSX airport BGL.
- Load the correct airport. Confirm the ICAO code, runway designator, airport elevation and the runway end receiving the ILS. A renamed runway or an airport add-on with different geometry can invalidate otherwise correct approach data.
- Add or edit the localiser. Assign a unique identifier, a valid ILS channel in the 108.10–111.95 MHz range and a suitable signal range. Link it to the landing runway end.
- Position the localiser antenna. Place it beyond the runway's rollout end and align its inbound beam with the actual centreline. Do not assume that the runway number multiplied by ten is the precise course.
- Check heading units. Charts normally present magnetic courses, while scenery fields or editors may handle true headings internally. Follow the units shown by the editor and verify the result in FSX; confusing true and magnetic headings produces an offset or reversed beam.
- Add the glideslope transmitter. Position it beside the runway near the touchdown area, associate it with the same ILS and set the required descent angle. About three degrees is common, but a real airport should use its published value.
- Add DME if required. DME is optional and must be configured as part of the facility if the intended approach provides distance information.
- Validate and compile. Resolve warnings about duplicate identifiers, missing runway links or malformed procedure legs, then compile with the FSX BGL compiler. Keep the editor project and source XML outside the live scenery folder.
When replacing a stock ILS, make sure the airport project suppresses the old navaid and approach records. Leaving both versions active can produce two frequencies, conflicting courses or GPS entries that do not match the visible runway.
Do I need to create an approach procedure as well?
You need an approach procedure record if the custom ILS must appear in the FSX GPS or be recognised properly by ATC and AI traffic. The navaid alone is enough only for manual tuning and localiser/glideslope reception.
In the editor's approach section, create an ILS procedure for the correct runway and define sensible entry, intermediate, final and missed-approach legs. Fix names, leg order, courses and altitude constraints must agree with the runway and ILS. Transitions can be added for specific initial approach fixes; a missed approach should not simply end at the runway.
The mistake we see most often is a working localiser accompanied by an empty GPS approach list. That means the beam was added but the procedure record was not. An FSX scenery example containing approach records for GPS and AI use illustrates why those records belong in the airport BGL.
How do I install and test the custom ILS?
Install the compiled BGL in an active scenery area above the default airport, restart FSX and test both the radio signal and the procedure listing.
- Create a scenery area. A conventional location is
Addon Scenery\Custom ILS\scenery. Copy only the compiled BGL into thesceneryfolder. - Activate the parent area. Add it through the FSX Scenery Library and give it higher priority than the default scenery. If another add-on modifies the same airport, decide which airport package should take precedence rather than relying on two partial overrides.
- Restart FSX. Airport and navigation changes may not reload reliably during the same session.
- Check the procedure. Open the airport in the GPS and inspect its available approaches. Absence from the list indicates missing or invalid approach records, even if the raw radio beam works.
- Fly an interception test. Start several miles outside the final approach course and below the expected glideslope. Tune NAV1, verify the Morse identifier, set the inbound course, select NAV rather than GPS guidance and intercept the localiser at a modest angle.
The flight planner can route you to the airport but does not automatically tune or capture the new ILS; our guide to what the built-in FSX flight planner does and does not control explains that distinction. For the airborne test itself, follow our FSX localiser, glideslope and autopilot procedure.
Why is the custom ILS not working?
Most custom ILS failures come from scenery priority, duplicate airport records, incorrect course units or an incomplete approach definition.
| Symptom | Likely cause and fix |
|---|---|
| No localiser indication | Confirm that the scenery area is active, the BGL was compiled for FSX, NAV1 has the correct frequency and the aircraft is within the configured signal range. |
| Beam is reversed or offset | Correct the localiser position and heading. Check whether the editor expects true or magnetic course data. |
| Localiser works but no glideslope appears | Verify that a glideslope object exists and belongs to the same ILS. Approach from below; an aircraft already above the beam may never capture it. |
| ILS works manually but is absent from GPS | Add or repair the approach procedure record, including valid legs and the correct runway designator. |
| ATC does not offer the approach | Check the procedure and active runway. FSX ATC also considers wind and runway use, so creating an ILS does not guarantee it will be offered under every condition. |
| Old airport or frequency still appears | Raise the custom scenery area's priority and remove conflicting airport BGL files. Ensure the override suppresses the original ILS rather than adding a duplicate. |