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
- Install the package:
sudo pip install xbox-switch-bridge
- 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
- Check the logs:
sudo journalctl -u xbox-switch-bridge
- Verify Bluetooth:
sudo systemctl status bluetooth
bluetoothctl show
- Check xpadneo driver:
dkms status | grep xpadneo
ls /sys/module/xpadneo
- 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file xbox_switch_bridge-0.3.0.tar.gz.
File metadata
- Download URL: xbox_switch_bridge-0.3.0.tar.gz
- Upload date:
- Size: 9.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.9.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f058b6a069627fcf5dbe7a9be2b51f20327d1b2e53e70b64ebb0ae6748a6efea
|
|
| MD5 |
ca7674da691eb43c16e0ebe4dac1f6c2
|
|
| BLAKE2b-256 |
72e3faa024a5c66dd1d65dcf7ecac9a2f065a302b019ffeed051271a555a895b
|
File details
Details for the file xbox_switch_bridge-0.3.0-py3-none-any.whl.
File metadata
- Download URL: xbox_switch_bridge-0.3.0-py3-none-any.whl
- Upload date:
- Size: 9.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.9.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
92959c45acbc35f62cd955d58c0ddb567d1c3a3bcc87227158920560fae5c277
|
|
| MD5 |
95bddf16ff8874db7ad2f52004cbbd3e
|
|
| BLAKE2b-256 |
92987b8eef7df0e509bf4689eb007437deefcfe046937c066f6985d6ba704c39
|