Home/Guides/Moonlight controllers
Moonlight · Sunshine

The Moonlight & Sunshine controller guide — any pad, up to 4 players

Updated July 2026· 5 min read

Your stream looks perfect, but the controller won't show up — or you can only get one working. It's almost always the client device's Bluetooth, not Moonlight itself. Here's how to feed it any pad, cleanly, up to four at once.

The thing nobody tells you about Moonlight controllers

Moonlight doesn't have its own controller magic. It passes through whatever controller the client device has already paired — your phone, your PC, or your Fire TV Stick — and Sunshine turns that into a virtual gamepad on the gaming PC. That works great when the client is a phone. It falls apart when the client is a device with weak Bluetooth:

The fix isn't a Moonlight setting. It's supplying the client with a controller it can actually use.

Controller Gateway is the missing input layer

Pair your controllers to your phone, and Controller Gateway relays them to the client (Fire Stick or PC) as standard Xbox controllers — which Moonlight forwards without complaint. Up to four players, low latency, and no dependence on the client's Bluetooth at all.

Get Controller Gateway

How to set it up

Streaming to a Fire TV Stick or Android TV

  1. Pair your controller(s) to your phone over Bluetooth.
  2. Enable ADB debugging on the Fire TV (Settings → My Fire TV → About → tap the name 7×), then in Controller Gateway tap Find, choose the stick, and Start.
  3. Open Moonlight on the Fire Stick and connect to your PC — it now sees your controller(s) as standard Xbox pads.

Streaming to a Windows PC

  1. Install the free Controller Gateway PC receiver.
  2. Pair your controller to your phone, then Find PC → Start.
  3. Run Moonlight on the PC — the relayed pad is already a standard Xbox controller, so it forwards straight through Sunshine's virtual gamepad on the host.
Latency

The relay adds only about 2 ms one-way on 5 GHz Wi-Fi, and on older Fire Sticks it actually lowers total controller lag versus the stick's own Bluetooth (~83 ms vs up to ~167 ms in our tests — and players report direct Bluetooth as bad as ~500 ms in the wild). Ideal for streaming, where every millisecond matters.

Local co-op, done right

Because each controller is relayed as its own player, you get clean P1–P4 assignment even on clients where pairing multiple Bluetooth pads normally breaks. Great for couch co-op and party games streamed to the TV.

Give Moonlight a controller it can actually use.

Any pad, on your Fire TV or PC, up to four players — independent of the client's Bluetooth.

Frequently asked

Why isn't my controller working in Moonlight?
Moonlight forwards whatever controller the client device has paired. If the client (often a Fire TV Stick) can't pair your pad, Moonlight has nothing to send. Controller Gateway supplies the controller as a standard Xbox pad so it forwards normally.
Does this work with Sunshine?
Yes. Sunshine creates a virtual Xbox/DS4 gamepad on the host from what the client sends. Since Controller Gateway already presents a standard Xbox controller on the client, it slots straight in.
Can I use more than one controller?
Up to four, each as its own player — particularly handy on Fire TV and Android TV clients where multi-controller Bluetooth is unreliable.