Questions

How to use a flight stick or HOTAS on a Mac

Download on the Mac App StoreInputConfig is completely free on the Mac App Store. You don't have to make an account, there are no subscriptions, and nothing is locked. Optimized for Apple silicon.

Plug it in. A USB flight stick, throttle, HOTAS or set of rudder pedals is a standard HID device, and macOS reads it with no driver, on Apple silicon and Intel. Flight simulators that run on a Mac, X-Plane first among them, read it directly and set it up in their own joystick screen. Games made for the keyboard do not, and for those InputConfig turns each axis and button into keys or mouse movement. It is free. I make it, so weigh that.

On this page
  1. Steps
  2. Set it up in a flight simulator
  3. Fly keyboard games with a mapper
  4. Put stick, throttle and pedals on one preset
  5. Check what InputConfig reads
  6. Check a T.Flight, HOTAS 4 or HOTAS One, and GeForce NOW
  7. What it cannot do
  8. Before you buy one
  9. The short version
  10. Questions

Steps

  1. Plug the stick, throttle and pedals into USB.
  2. In a flight sim, set the axes in its joystick settings.
  3. For keyboard games, add each device to an InputConfig preset.
  4. Check every axis in the Live Visualizer, then choose the keys.

Set it up in a flight simulator

X-Plane 12 runs natively on the Mac and has its own joystick settings: move each axis, tell it which is pitch, roll, yaw and throttle, then assign the buttons. FlightGear does the same. In a sim like that you do not need a mapper, and running one on top would make the stick do two things at once.

  • Microsoft Flight Simulator and DCS World. No Mac version. On a Mac they need Windows in a virtual machine or a compatibility layer, and a stick is only as good as that setup.
  • Game Controllers in System Settings. Nothing appears there for a flight stick. That list is only for pads Apple's framework supports. System Information, USB is where to check that the Mac sees it.

Fly keyboard games with a mapper

Plenty of Mac games fly from the keyboard. In InputConfig each axis direction is its own row, so a stick is four rows and a throttle is two. A row holds its key while the axis is past the row's deadzone, 25 percent of the travel by default, and Adjust live in the row's options sets that point while you watch the axis. For Kerbal Space Program, which runs natively on the Mac, a HOTAS looks like this:

ControlKeyWhat it does
Stick forward and backW and SPitch down and up
Stick left and rightQ and ERoll
Twist or rudder pedalsA and DYaw
Throttle forward and backShift and CtrlThrottle up and down
TriggerSpaceStage
Two thumb buttonsT and RSAS and RCS
A spare buttonCaps LockFine controls
  • Keys are on or off. A small push is a full deflection. Kerbal's fine controls, on Caps Lock, make that gentle. The Kerbal Space Program layout uses the same keys on a gamepad.
  • A throttle lever stays where you leave it. A key on it stays held for as long as the lever is past the row's point, which suits throttle up and down, and a boost, better than a key you tap. A band, a range of the lever's travel such as its last third, can be a button of its own.
  • Mouse steering. For a game that steers with the mouse, give the stick's rows Mouse Motion instead, and turn on Variable Sensitivity so a small push moves slowly and a full push moves fast.
Rows in InputConfig's editor for a HOTAS: four for the stick, two for the twist and one for the trigger, each sending a key.
Figure 1. Each direction of an axis gets its own row: four for the stick, two for the twist, one for the trigger.

Put stick, throttle and pedals on one preset

  • Separate cables. A HOTAS whose stick and throttle plug in separately is two USB devices, and InputConfig gives each its own slot. One preset holds rows for both, and rudder pedals on their own cable are a third slot.
  • One cable. Many HOTAS sets, such as the ones where the throttle clips to the stick, are a single USB device, and then everything sits in one slot.
  • You: On an empty input device, choose Automatically insert available inputs.
  • InputConfig: Adds a row for every button and axis the device reports, which saves adding thirty rows by hand.
  • Check: Every control has a row. Now choose what each one sends. If a device is not picked up on its own, tick it under InputConfig, Devices in the menu bar.

Check what InputConfig reads

Every part of a HID stick that the stick reports: every button, up to 128 of them; the X, Y and Z axes and the three rotation axes; sliders and dials; and every hat switch, each as its own D-pad. Since 1.6 every axis is read at the size the stick sends it, including the 10-bit and other odd-sized axes that earlier versions could not decode, so the full travel comes through. Hat switches that report an angle are read too, and buttons a stick sends as a list are numbered after the controls it already had, so existing presets keep working. A throttle that rests at one end reads its whole travel with the row option Rests at one end, which Scan turns on when the lever starts from an end.

  • You: Before you build a layout, open a preset and move each axis to its end while you watch the Live Visualizer, or press Scan on a row and move the control you mean.
  • InputConfig: Draws the axis moving, or fills the row with the control it heard.
  • Check: Each axis reaches both ends, and each button lights.

Two sticks have drawings of their own, the Logitech Extreme 3D Pro and the Thrustmaster T.16000M, but both are experimental and switched off. Until they are tested on real sticks, the Live Visualizer shows a plain map of every axis, the hat and each button. Other sticks are drawn as a generic device and are read just the same.

InputConfig's Live Visualizer showing a HOTAS as a plain map of its axes and numbered buttons, each labeled with its key.
Figure 2. A HOTAS drawn as a plain map of what it reports. Buttons show as numbers, and each one carries the key it sends.

Check a T.Flight, HOTAS 4 or HOTAS One, and GeForce NOW

Thrustmaster's T.Flight line, which includes the HOTAS 4 and the HOTAS One, is built for consoles and PC. I have not tested any of them on a Mac, so I cannot tell you what a Mac reads from them.

  • You: Plug it in with a data cable. If it has a mode switch, try each position and look again, then check System Information, USB.
  • InputConfig: Lists the device under InputConfig, Devices in the menu bar if it can read it, and the Live Visualizer draws each axis.
  • Check: Every axis reaches both ends and every button lights. If the stick is missing from both lists, a different mode is the first thing to try.

For GeForce NOW, the game runs on Nvidia's servers and the Mac app sends it what you press. I have not confirmed which flight sticks that app passes through on a Mac. For a game that takes the keyboard, InputConfig can send the keys to the app instead, and the GeForce NOW controller page has the details. Test the stick on the Mac before you build a game or a subscription around it.

If you only own an Xbox controller, using an Xbox controller as a HOTAS on a Mac covers that route.

What it cannot do

  • Force feedback. It is not driven.
  • Look like a joystick to a game. InputConfig sends keyboard and mouse input. It does not present the stick to a game as a controller, so a game that only accepts a joystick has to read it itself.
  • Promise every stick. I have not tested every stick, and the project's GitHub page is the place to report one that misbehaves.

Before you buy one

A stick that works on a PC without its own software is almost always read by a Mac the same way, because both see a standard HID device. The maker's programming software, for profiles, macros and lights, is a separate thing, so check its system requirements before you count on it. If you plan to use InputConfig, check every axis in the Live Visualizer in the first days, while a return is still easy.

The short version

  • No driver. Plug it in. The Mac reads it as a HID device.
  • Flight sims. Set it up in the sim's own joystick screen, with no mapper running.
  • Keyboard games. One row per axis direction in InputConfig, with every axis read at full resolution.

Let the sim read the stick when it can, and map it only when it cannot.

Questions

Do I need a driver for a flight stick or HOTAS on a Mac?

No. The Mac reads USB flight sticks, throttles and pedals as standard HID devices. The maker's software, where there is any, is for extras such as profiles and macros.

Can I use an Xbox controller as a HOTAS on a Mac?

Yes. For games that fly from the keyboard, InputConfig turns the sticks into the keys or mouse movement the game expects, and a trigger can hold the throttle key. Flight simulators that read controllers, such as X-Plane, can also assign the sticks in their own joystick settings.

Does a Thrustmaster or Logitech HOTAS work on a Mac?

Usually, yes: the Mac reads their PC sticks as HID devices with no driver, and X-Plane sets them up in its joystick screen. For games that need keys, InputConfig maps them. Check each axis in the Live Visualizer first.

Can the stick and throttle of a HOTAS work together?

Yes. If they plug in separately, they are two USB devices, InputConfig gives each its own slot, and one preset holds rows for both. A HOTAS on one cable is one device in one slot.

How many buttons can InputConfig read on a flight stick?

Up to 128 per controller, along with every axis and every hat switch, so a full HOTAS fits.

Can InputConfig make my flight stick look like a controller to a game?

No. It sends keyboard and mouse input. A game that only accepts a joystick has to read the stick itself, the way X-Plane does.

Why is my flight stick not in System Settings, Game Controllers?

That list only shows pads Apple's framework supports. A flight stick is a plain HID device, so it is missing there even when it works. Check System Information, USB instead.

This page in other languages: Deutsch, Français, Italiano, 日本語, 한국어, 繁體中文

Download on the Mac App StoreOpen source on GitHub.

Updated