How to Set Up Xbox Controllers on Raspberry Pi ?

The Raspberry Pi is a fantastic mini-computer for retro gaming. Pairing it with Xbox controllers provides a familiar, comfortable way to play your favorite classic games. This guide will walk you through everything you need to set up Xbox controllers on your Raspberry Pi, from the hardware and software you’ll need to configuration tips and troubleshooting.

How to Set Up Xbox Controllers on Raspberry Pi ?

What You Need to Connect Xbox Controllers to Raspberry Pi

Before we dive into the setup process, let’s review the key items you’ll need:

  • Raspberry Pi (2, 3, or 4)
  • Raspberry Pi power supply
  • MicroSD card (8GB or larger)
  • HDMI cable
  • Xbox 360 or Xbox One controller (wired or wireless)
  • Xbox 360 Wireless Gaming Receiver (for wireless 360 controllers)
  • 2 AA batteries (for wireless controllers)

I recommend a Raspberry Pi 4 for the best performance, but a Pi 2 or 3 will work well for most retro gaming. Be sure to use a power supply that provides sufficient power for your Pi model.

For the Xbox controller, both Xbox 360 and Xbox One models are supported, either wired or wireless. Wired is simpler to set up – just plug it in and you’re ready to go. For wireless controllers, you’ll need the Xbox 360 Wireless Gaming Receiver accessory to pair them with the Pi.

Setting Up RetroPie on the Raspberry Pi

RetroPie is the most popular retro gaming OS for the Raspberry Pi. It’s free, open-source, and makes it easy to install and play classic games. Here’s how to set it up:

  1. Download the latest RetroPie image from
  2. Flash the image to your microSD card using a tool like Etcher
  3. Insert the microSD card into your Raspberry Pi
  4. Connect the Pi to your TV or monitor with the HDMI cable
  5. Plug in your power supply and turn on the Pi
  6. Follow the on-screen prompts to configure your controller and setup RetroPie

Alternatively, you can install RetroPie on top of an existing Raspberry Pi OS installation. See the RetroPie documentation for instructions.

Configuring Your Xbox Controller

Once you have RetroPie up and running, it’s time to configure your Xbox controller. The process is a bit different depending on if you have a wired or wireless controller.

Wired Xbox 360 or Xbox One Controller

  1. Plug your wired controller into one of the Pi’s USB ports
  2. From the main RetroPie menu, select “Configure Input”
  3. Press and hold any button on the controller to begin the configuration process
  4. Follow the on-screen prompts, pressing the buttons on the controller as instructed
  5. Choose a name for the controller configuration when prompted
  6. Select “OK” to finish the configuration

Your wired Xbox controller should now be set up and ready to use in RetroPie!

Wireless Xbox 360 Controller

Setting up a wireless Xbox 360 controller requires the additional Xbox 360 Wireless Gaming Receiver accessory. Here are the steps:

  1. Plug the Xbox 360 Wireless Gaming Receiver into one of the Pi’s USB ports
  2. Insert 2 AA batteries into your controller and turn it on by pressing the Guide button
  3. Press the Connect button on the receiver (the small button next to the green LED)
  4. Within 20 seconds, press and hold the Connect button on the controller (a small button on the front edge) until the Guide button flashes
  5. The controller will connect to the receiver (the Guide button will stay lit)
  6. In RetroPie, go to “Configure Input” and configure the controller as described above for wired controllers

Your wireless Xbox 360 controller should now be connected and configured in RetroPie.

Wireless Xbox One Controller

Unfortunately, wireless Xbox One controllers can’t directly connect to the Raspberry Pi without additional hardware/adapters. The best option is to use it wired by plugging in via USB. However, you can use it wirelessly with one of these methods:

  • Xbox Wireless Adapter for Windows – lets you connect up to 8 Xbox One controllers
  • Microsoft Xbox Controller USB Adapter – adapts the proprietary Xbox connector to standard USB
  • Mayflash Magic-NS Wireless Controller Adapter – supports wireless Xbox, PlayStation and Switch controllers

With one of those adapters, you can configure your wireless Xbox One controller using the wired controller instructions above.

Optimal Controller Settings for Retro Gaming

To get the best retro gaming experience with your Xbox controller on RetroPie, you’ll want to customize a few settings. Here are some key optimizations:

  • D-pad for menus: Configure your D-pad to navigate menus instead of the analog stick. It’s more precise and won’t cause accidental clicks. Do this in the “Configure Input” menu by setting the hotkey buttons.
  • Swap A/B and X/Y: Some older games (e.g. Nintendo) use B and Y as the main action buttons, which is reversed from modern Xbox controllers. Swap them in each emulator’s core input settings for a more authentic feel.
  • Quick save/load: Set hotkeys for quick saving and loading game states. The Select and R/L shoulder buttons work well for this. Configure them in the runcommand menu brought up when launching a game.
  • Exit combo: Choose a controller combo to cleanly exit games back to the RetroPie menu. I like Select+Start. Set this in the runcommand launch menu like the save/load hotkeys.

Adjust the analog stick and trigger sensitivities if needed in the “Configure Input” menu. Fine-tune settings per emulator core for the best experience across different systems.

Troubleshooting Controller Issues

If you run into problems with your controller, here are some troubleshooting tips:

  • Won’t connect: For wired, make sure the cable is firmly plugged in. For wireless, re-pair it with the receiver. Check the batteries.
  • Not working in-game: Double-check the button mappings and reload the controller config file. Reinstall the controller driver and reboot if issues persist.
  • Lag or missed inputs: Reduce the polling rate in the controller settings. Lower the video resolution in the emulators. Make sure you’re using a good quality USB cable if wired.
  • Random disconnects: Could be due to low batteries, USB power saving features, or interference. Try replacing the batteries, disabling USB suspend, and moving the Pi away from potential interference sources.

Check the RetroPie and emulator log files for error messages that might help pinpoint the issue. Search the RetroPie forums as well – chances are someone else has encountered the same problem.

Key Takeaways

  • Xbox 360 and Xbox One controllers, both wired and wireless, work well with the Raspberry Pi for retro gaming
  • Wired controllers are plug-and-play, wireless require the Xbox 360 Wireless Gaming Receiver
  • Set up your controllers in RetroPie’s “Configure Input” menu
  • Customize controller settings for the optimal retro gaming experience
  • Troubleshoot issues by checking connections, reinstalling drivers, reducing polling rate/resolution, and searching log files and forums


Setting up Xbox controllers on your Raspberry Pi with RetroPie unlocks a world of retro gaming possibilities. With the hardware and software basics covered in this guide, you’re well on your way to enjoying your favorite classic games with the comfort and precision of an Xbox controller.

Take the time to find the ideal controller settings for your preferences and be prepared to do some troubleshooting if issues come up. But most importantly, have fun reveling in the nostalgia and discovering new old games to conquer with your trusty Xbox gamepad!

Frequently Asked Questions

  1. Can I use an Xbox Elite controller with the Raspberry Pi?
    Yes, the Xbox Elite controller works with the Raspberry Pi, both wired and wirelessly (with the Xbox Wireless Adapter). Configure it the same way as a standard Xbox controller in RetroPie.

  2. How do I connect an Xbox controller to the Raspberry Pi without RetroPie?
    Install the xboxdrv driver on Raspbian using the command “sudo apt-get install xboxdrv”. Then connect your Xbox controller via USB and it should be recognized as an input device.

  3. Can I use an original Xbox controller on the Raspberry Pi?
    Original Xbox controllers are not natively supported on the Pi. However, you can use a USB adapter like the Mayflash Xbox to Xbox 360 Controller Adapter to connect them.

  4. How do I use an Xbox controller with RecalBox on the Raspberry Pi?
    RecalBox supports Xbox controllers out of the box. Just connect your controller via USB or the wireless receiver and configure it in the Controllers settings menu.

  5. Can I connect my Xbox controller to the Raspberry Pi over Bluetooth?
    The Pi does have Bluetooth, but Xbox controllers don’t use standard Bluetooth. You need the Xbox Wireless Adapter or a special Bluetooth adapter like the 8BitDo Wireless USB Adapter to connect wirelessly.

  6. What do I do if my Xbox controller keeps disconnecting from the Raspberry Pi?
    Check the batteries first. Try using a different USB port and a high-quality USB cable. Consider a powered USB hub if you’re using multiple controllers. Disable any conflicting drivers or services.

  7. How do I use an Xbox controller with Lakka on the Raspberry Pi?
    Lakka supports Xbox controllers by default. Connect your controller and configure it in the Settings > Input menu. Wireless controllers will need the Xbox receiver or adapter.

  8. Can I use the Xbox Chatpad with the Raspberry Pi?
    The Xbox 360 Chatpad does work on the Pi when connected to a wired controller. It should be recognized as a USB keyboard input. The Xbox One Chatpad is not currently supported.

  9. How do I map the Xbox controller guide button in RetroPie?
    In the EmulationStation menu, select the option to configure your controller. Press and hold the Xbox button when prompted to select it as a hotkey button.

  10. Can I use a wireless Xbox controller with OSMC on the Raspberry Pi?
    Yes, you can use the Xbox 360 Wireless Receiver or an Xbox One controller via USB. Map the controller buttons in the OSMC input device settings.

  11. How do I use an Xbox controller with Moonlight on the Raspberry Pi?
    Moonlight supports Xbox controllers natively. Connect your controller to the Pi and it should be automatically detected when you launch Moonlight.

  12. Can I use the Xbox One S/X controller’s Bluetooth with the Raspberry Pi?
    The newer Xbox One S/X controllers have Bluetooth, but it’s not the standard Bluetooth protocol. It will only work with the official Xbox Wireless Adapter, not the built-in Pi Bluetooth.

  13. How do I check if my Xbox controller is recognized by the Raspberry Pi?
    In the terminal, run the command “lsusb” to list connected USB devices. Look for a line mentioning “Xbox” or “Microsoft” to confirm your controller is detected.

  14. Can I use a wireless Xbox controller with the Raspberry Pi Zero?
    The Pi Zero doesn’t have built-in wireless, but you can use a USB OTG adapter to connect the Xbox Wireless Receiver dongle.

  15. How do I use an Xbox controller with Steam Link on the Raspberry Pi?
    The Steam Link app has built-in support for Xbox controllers. Just connect your controller to the Pi before launching Steam Link and it should work automatically.

  16. Can I use the Xbox One Kinect with the Raspberry Pi?
    There is no official support for the Xbox One Kinect on the Pi. It requires proprietary drivers that haven’t been ported to the Pi’s ARM architecture.

  17. How do I fix a laggy Xbox controller on the Raspberry Pi?
    Try a different USB port or a powered USB hub. Lower the polling rate in the controller driver settings. Check for other resource-intensive processes that could be causing latency.

  18. Can I use an Xbox controller with Minecraft on the Raspberry Pi?
    Yes, the Pi version of Minecraft supports Xbox controllers. Connect your controller and it should be usable in-game without additional setup.

  19. How do I configure the rumble feature on my Xbox controller in RetroPie?
    In the EmulationStation menu, select Configuration Editor and choose your Xbox controller. Change the “Rumble” option to On. You may need to adjust rumble strength per emulator core.

  20. Can I charge my Xbox controller through the Raspberry Pi?
    The Pi’s USB ports don’t provide enough power to charge Xbox controllers. Use a separate USB charger or the official Xbox charging cable/dock to recharge your controller batteries.

Leave a Comment