Fix FS2004 altitude hold with the correct autopilot sequence, then troubleshoot mode capture, trim, controller conflicts, ILS and add-on panels.
FS2004 altitude hold usually fails because the autopilot master is not engaged, the wrong vertical mode is active, the target altitude was never armed or captured, or a controller is sending unwanted pitch or trim input. Stabilise and trim the aircraft, use the panel's correct capture sequence, then test at 1x.
How do I engage altitude hold correctly in FS2004?
In Microsoft Flight Simulator 2004 (FS2004 or FS9), ALT works only when the autopilot master is active and the panel's required vertical mode has been selected. A flight director provides guidance but does not fly the aircraft by itself.
FS2004 panels do not all use the altitude selector in the same way. A simple system captures the aircraft's present altitude when ALT is pressed. A preselect system uses the number in the altitude window as a target, with vertical-speed or pitch mode commanding the climb or descent. Some panels arm altitude capture automatically; others require another mode selection. Our guide to how altitude capture and hold modes work explains this distinction.
- Return to 1x simulation rate. Use clear weather for testing and establish a safe speed away from the stall or overspeed limits.
- Stabilise and trim the aircraft. It should require little control pressure before the autopilot takes over.
- Engage the autopilot master. Check the panel annunciator rather than assuming that the flight director or an illuminated selector means the autopilot is engaged.
- Command the correct vertical mode. Press
ALTat the desired level on a hold-now system. On a preselect system, set the target altitude, select a sensible vertical speed or pitch mode, and arm altitude capture if the panel requires it. - Watch for capture. As the aircraft approaches the target, the vertical speed should reduce and the annunciator should change to altitude capture or hold.
- Manage power and airspeed. Altitude hold controls pitch, not necessarily the throttle. Unless an autothrottle is installed and engaged, power remains the pilot's responsibility.
Avoid moving the yoke or operating elevator trim after engagement. Depending on the aircraft, FS2004 may disconnect the autopilot or leave it apparently engaged while the manual input fights its pitch commands.
FS2004 altitude hold troubleshooting by symptom
The mode annunciator and the aircraft's response usually reveal whether the problem is power, mode selection, controller input or panel logic.
| Symptom | Likely cause | What to check |
|---|---|---|
ALT will not illuminate or immediately switches off | Autopilot master is off, required electrical power is unavailable, a failure is active or a binding repeatedly sends a disconnect command | Check the master annunciator, power, failures and control assignments; then operate the panel with the mouse |
Aircraft holds the altitude where ALT was pressed | The panel uses current-altitude or hold-now logic | Climb or descend first, or use the panel's preselect and vertical-speed sequence |
| Aircraft flies through the selected altitude | Capture was not armed, the vertical speed is excessive or a custom gauge did not run | Reduce the climb or descent rate, reselect the mode and compare the result with a stock aircraft |
| Aircraft climbs and descends repeatedly | Low airspeed, poor trim, time acceleration, a noisy pitch axis or an unsuitable centre of gravity | Recover manually, retrim, return to 1x and isolate the controller |
| Altitude is steady but differs from ATC's reported altitude | The barometric pressure setting is wrong | Set the correct altimeter pressure; altitude hold itself may be working normally |
ALT changes to a descent during an ILS | APP mode has captured the glideslope | This is expected if the aircraft is correctly established for the approach |
Why does it hold the current altitude instead of the selected altitude?
The altitude window is not always a command to climb or descend. A mistake we see constantly is setting a new number and expecting the aircraft to move there while the existing altitude-hold mode remains active.
On a hold-now system, disengage altitude hold, establish the climb or descent, and press ALT when the desired level is reached. On a preselect system, set the target and use vertical-speed or pitch mode so that the autopilot has a command that takes it towards that target.
Boeing-style panels commonly combine an altitude preselector with a separate vertical mode. For the stock jet and similarly arranged panels, see our FS2004 Boeing altitude-selector and vertical-speed procedure. Custom add-ons may model different logic, so their supplied documentation takes precedence.
Why does altitude hold disconnect or oscillate?
Repeated disconnections or pitch oscillations usually mean that another input is fighting the autopilot, or that the aircraft lacks enough speed, power or pitch authority to maintain the selected altitude.
- Duplicate assignments: Inspect assignments for autopilot disconnect, altitude hold, elevator, elevator trim and pitch controls. If FSUIPC is installed, do not assign the same button or axis in both FSUIPC and FS2004.
- Noisy hardware: A spiking yoke, joystick or trim wheel can send constant pitch inputs. Recalibrate it, increase the appropriate null zone and temporarily disconnect suspect hardware.
- Manual trim: Trim before engaging the autopilot. Repeated trim input afterwards can create a cycle in which the autopilot continually corrects against the new trim position.
- Unsafe flight condition: An autopilot cannot hold altitude indefinitely near a stall, with insufficient power or after reaching its pitch or trim limit.
- High simulation rate: Older FS2004 gauges and autopilot logic can become unstable under time acceleration. Diagnose every fault at 1x.
- Loading and centre of gravity: Extreme loading or a badly configured add-on flight model can leave inadequate elevator authority.
If more than altitude hold is affected, work through our full FS2004 autopilot troubleshooting checklist for power, failures, assignments and simulation-rate faults.
Is the add-on aircraft at fault?
If altitude hold works in an unmodified stock aircraft but not in an add-on, the add-on's panel, gauges, configuration or operating procedure is the likely cause.
- Start a new flight. Do not load a saved situation that may contain old autopilot modes, failures or abnormal trim.
- Choose a stock aircraft with its original autopilot panel. Use clear weather, a normal cruise speed and 1x simulation rate.
- Use the mouse. Operate the panel directly instead of using keyboard shortcuts, joystick buttons or external control software.
- Compare the result. If the stock aircraft holds altitude, return to the add-on and check its installation and documented mode sequence. If both fail, investigate simulator-wide controls, failures and configuration.
For an add-on, confirm that it is the FS2004 version and that all supplied gauges and modules are installed. Restore its original panel.cfg if panels have been mixed between aircraft. The [autopilot] section in aircraft.cfg must also enable and define the autopilot, but copying that entire section from an unrelated aircraft can create worse pitch and trim behaviour.
If every stock aircraft fails after controller inputs and failures have been ruled out, close FS2004 and back up %APPDATA%\Microsoft\FS9\fs9.cfg. Rename the file and let FS2004 create a fresh configuration on the next launch. This resets customised graphics, sound and control settings, so use it as a final diagnostic rather than the first fix.
Why does altitude hold release during an ILS approach?
Altitude hold should be replaced by glideslope guidance when APP mode captures the ILS glideslope. The resulting descent is intentional, not an altitude-hold failure.
The aircraft should normally intercept the glideslope from below while established on the localiser. The NAV/GPS selector controls the lateral navigation source in stock FS2004 and should not command a vertical descent by itself. If the problem begins only after selecting APP, follow the correct FS2004 ILS capture and autopilot landing sequence before changing controller or aircraft files.