Skip to main content

Bridge Xbox controller inputs to Nintendo Switch

Project description

Xbox Switch Bridge

Use your Xbox controller with Nintendo Switch via Raspberry Pi.

Requirements

  • Raspberry Pi (tested on Pi 4 and Pi 3B+)
  • Bluetooth capability
  • Python 3.7+
  • Root access for Bluetooth operations
  • Xbox Controller (tested with Xbox Series X/S controllers)
  • Nintendo Switch

System Dependencies

Before installing, make sure you have the required system packages:

sudo apt-get update
sudo apt-get install -y python3-pip python3-dev bluetooth bluez bluez-tools raspberrypi-kernel-headers dkms git

Installing xpadneo Driver

The xpadneo driver is required for Xbox wireless controller support. The installation script will handle this automatically, but if you want to install it manually:

# Clone the repository
git clone https://github.com/atar-axis/xpadneo.git

# Navigate to the directory
cd xpadneo

# Install
sudo ./install.sh

# Reboot is required after installation
sudo reboot

Installation

  1. Install the package:
sudo pip install xbox-switch-bridge
  1. Run the post-installation setup:
sudo xbox-switch-bridge --install

This will:

  • Install xpadneo driver if not present
  • Configure Bluetooth settings
  • Install and enable the systemd service
  • Set up required permissions

Usage

As a Service

Once installed, the bridge will start automatically on boot. You can manage it with:

sudo systemctl start xbox-switch-bridge   # Start the service
sudo systemctl stop xbox-switch-bridge    # Stop the service
sudo systemctl status xbox-switch-bridge  # Check status

Manual Usage

Run directly (requires root):

sudo xbox-switch-bridge --run

Troubleshooting

  1. Check the logs:
sudo journalctl -u xbox-switch-bridge
  1. Verify Bluetooth:
sudo systemctl status bluetooth
bluetoothctl show
  1. Check xpadneo driver:
dkms status | grep xpadneo
ls /sys/module/xpadneo
  1. Common issues:
  • Controller not detected: Ensure it's in pairing mode and xpadneo is properly installed
  • Switch not connecting: Open the "Change Grip/Order" menu
  • Permission errors: Make sure you're running as root
  • Controller not responding: Try re-pairing the controller or check xpadneo installation

Uninstallation

sudo xbox-switch-bridge --uninstall
sudo pip uninstall xbox-switch-bridge

To also remove xpadneo:

sudo dkms remove xpadneo/latest --all

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xbox_switch_bridge-0.3.2.tar.gz (9.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

xbox_switch_bridge-0.3.2-py3-none-any.whl (9.8 kB view details)

Uploaded Python 3

File details

Details for the file xbox_switch_bridge-0.3.2.tar.gz.

File metadata

  • Download URL: xbox_switch_bridge-0.3.2.tar.gz
  • Upload date:
  • Size: 9.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.19

File hashes

Hashes for xbox_switch_bridge-0.3.2.tar.gz
Algorithm Hash digest
SHA256 3d798819d5599d1fe0fcfaf4b652c039031b291589dd29d51f14282429e92ddf
MD5 84319498430c790df753122a098f16cc
BLAKE2b-256 6f11aa88b66758402f923cb33444ee7f06f77da4fdea940804eafa7a8d53a6ea

See more details on using hashes here.

File details

Details for the file xbox_switch_bridge-0.3.2-py3-none-any.whl.

File metadata

File hashes

Hashes for xbox_switch_bridge-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ae38f0eeb2c90dd3ba39e448fb56d640ebb8146be3d46eb56dbc88402badea95
MD5 2cc02f7497ac18761cdbad3fbd56d0cf
BLAKE2b-256 580c6ba329b80086dc858215b8bf9f781042aad16b72e3f377cf8db365c5241f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page