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:
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
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.2.0.tar.gz (8.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.2.0-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: xbox_switch_bridge-0.2.0.tar.gz
  • Upload date:
  • Size: 8.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.2.0.tar.gz
Algorithm Hash digest
SHA256 2835d3b7912897234bd4405575a999cf5e03ab4ee3a1b0714e7a0ca3cd55b001
MD5 5e969b227afb92bad12ccb9a6bdb9620
BLAKE2b-256 8551249fbd0f429d1fa9047297ffc14295b1269332cacd9b4948b74fad650554

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for xbox_switch_bridge-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 90fe37fb91293342c75e7bcbe704674cd29cf3187fc2fe2a55e0ba892c62ac2e
MD5 a4394e66a3ac013c91ef2b4533aeeb22
BLAKE2b-256 a41127950797fd83d2aa7bbfeed35e0e0003742a4cd876b4cc06bcbb9c02c6f5

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