Progress Continues
We've already had 21401 updates since Dolphin 5.0. Keep up with Dolphin's continuing progress through the Dolphin Blog: August, September, and October 2023 Progress Report. |
The Dolphin Emulator Wiki needs your help! Dolphin can play thousands of games, and changes are happening all the time. Help us keep up! Join in and help us make this the best resource for Dolphin. |
Bluetooth Passthrough: Difference between revisions
m (change Wiimote to Wii Remote) |
|||
Line 1: | Line 1: | ||
Since [https://dolp.in/v5.0-910 5.0-910], Dolphin has the ability to passthrough a Bluetooth adapter for emulated Wii software. This gives emulated Wii software full control of a Bluetooth adapter, which, provided a decent, working adapter, notably allows pairing | Since [https://dolp.in/v5.0-910 5.0-910], Dolphin has the ability to passthrough a Bluetooth adapter for emulated Wii software. This gives emulated Wii software full control of a Bluetooth adapter, which, provided a decent, working adapter, notably allows pairing Wii Remotes to Dolphin, third-party Wii Remote support, working Wii Remote audio and more accurate connectivity. | ||
== Setting up == | == Setting up == | ||
Line 30: | Line 30: | ||
== Using passthrough mode in Dolphin == | == Using passthrough mode in Dolphin == | ||
In Dolphin, open the Controller Configuration dialog, then select the "Passthrough a Bluetooth adapter" option in the | In Dolphin, open the Controller Configuration dialog, then select the "Passthrough a Bluetooth adapter" option in the Wii Remotes section. | ||
While a game is running: | While a game is running: | ||
* | * Wii Remotes can be synced and paired to Dolphin by using the Sync button. | ||
* All saved | * All saved Wii Remote pairings can be reset by using the Reset button. This will also disconnect all currently connected Wii Remotes. | ||
=== Advanced usage === | === Advanced usage === | ||
Line 60: | Line 60: | ||
Dolphin tried to automatically unload the Bluetooth USB kernel module and failed to. Unload the module manually before starting a game to avoid this issue. | Dolphin tried to automatically unload the Bluetooth USB kernel module and failed to. Unload the module manually before starting a game to avoid this issue. | ||
=== | === Wii Remotes do not stay paired after closing the game === | ||
This means that your adapter is likely broken and does not remember | This means that your adapter is likely broken and does not remember Wii Remote link keys properly. Use a different adapter to avoid this issue. | ||
=== Black screen on boot === | === Black screen on boot === | ||
Line 73: | Line 73: | ||
* Save states cannot be used at all with passthrough mode. As of 5.0-993, loading a state will break Bluetooth connectivity. | * Save states cannot be used at all with passthrough mode. As of 5.0-993, loading a state will break Bluetooth connectivity. | ||
* Because Bluetooth Passthrough Mode skips Dolphin's emulated Bluetooth and | * Because Bluetooth Passthrough Mode skips Dolphin's emulated Bluetooth and Wii Remote code entirely, it is not possible to mix passthrough mode and emulated/real/hybrid Wii Remote. This means that netplay, TAS input, input display, etc. cannot work. | ||
== Adapter test results == | == Adapter test results == |
Revision as of 20:20, 11 October 2016
Since 5.0-910, Dolphin has the ability to passthrough a Bluetooth adapter for emulated Wii software. This gives emulated Wii software full control of a Bluetooth adapter, which, provided a decent, working adapter, notably allows pairing Wii Remotes to Dolphin, third-party Wii Remote support, working Wii Remote audio and more accurate connectivity.
Setting up
Linux
A udev rule has to be installed so Dolphin can use a Bluetooth adapter without having to get root privileges.
SUBSYSTEM=="usb", ATTRS{idVendor}=="YOURVID", ATTRS{idProduct}=="YOURPID", TAG+="uaccess"
Dolphin should be able to automatically unload the USB Bluetooth kernel module (assuming you have permission to; you typically need to be in the plugdev
group). If not, unload it with modprobe -r btusb
.
Windows
Download and open Zadig, then:
1. In the "Options" menu in Zadig, make sure "List All Devices" is enabled.
2. Select your Bluetooth adapter in the device list.
3. On the right column, select "WinUSB" then click "Replace Driver". Select "Yes" to modify the system driver.
Dolphin will be able to use the adapter after the driver is successfully installed, and until you revert back to the default Bluetooth driver.
macOS
There is currently no way to use this feature on versions newer than 10.9, because Apple removed the ability to unload the Bluetooth kernel module.
A potential solution would be to force the OS to ignore the adapter with a codeless .kext, but this hasn't been tried yet.
Android
This feature is not supported on Android.
Using passthrough mode in Dolphin
In Dolphin, open the Controller Configuration dialog, then select the "Passthrough a Bluetooth adapter" option in the Wii Remotes section.
While a game is running:
- Wii Remotes can be synced and paired to Dolphin by using the Sync button.
- All saved Wii Remote pairings can be reset by using the Reset button. This will also disconnect all currently connected Wii Remotes.
Advanced usage
Sync button hotkey
It is possible to use the Press Sync Button hotkey as an alternative to the buttons in the controller configuration dialog. It is designed to work just like the Wii's red sync button:
- Pressing the hotkey will trigger a sync.
- Holding the hotkey for 10 seconds will clear all saved pairings.
Forcing a specific adapter
If you need to use a specific adapter, instead of using the first Bluetooth adapter that is found, you can force Dolphin to use it by editing Dolphin's configuration file (Config/Dolphin.ini). In the BluetoothPassthrough section, set "VID" and "PID" to your adapter's vendor ID and product ID (that you previously converted from hex to decimal).
Troubleshooting
"Failed to open Bluetooth device: LIBUSB_ERROR_ACCESS"
This error means that Dolphin doesn't have permission to use the Bluetooth adapter.
If on Linux, make sure the udev rule is set up correctly.
"Failed to open Bluetooth device: LIBUSB_ERROR_NOT_SUPPORTED"
On Windows, this typically means that the libusb/WinUSB driver was not installed for the adapter.
"Failed to detach kernel driver for BT passthrough"
Dolphin tried to automatically unload the Bluetooth USB kernel module and failed to. Unload the module manually before starting a game to avoid this issue.
Wii Remotes do not stay paired after closing the game
This means that your adapter is likely broken and does not remember Wii Remote link keys properly. Use a different adapter to avoid this issue.
Black screen on boot
Games send a reset command to the Bluetooth adapter when they start and wait for it to be acknowledged. If you are getting a black screen for a long time (more than 10 seconds), your adapter may be stuck in a broken state and is unable to respond to any commands. Unplug the adapter and try again.
Limitations
- The functionality and quality of the connections heavily depend on the quality of the adapter.
- Even though most adapters work fine in passthrough mode, the only perfect adapter is the Wii's Bluetooth module (so far).
- Save states cannot be used at all with passthrough mode. As of 5.0-993, loading a state will break Bluetooth connectivity.
- Because Bluetooth Passthrough Mode skips Dolphin's emulated Bluetooth and Wii Remote code entirely, it is not possible to mix passthrough mode and emulated/real/hybrid Wii Remote. This means that netplay, TAS input, input display, etc. cannot work.
Adapter test results
Adapter | VID | PID | Revision | Works | Stable | Pairing | Audio | Range |
---|---|---|---|---|---|---|---|---|
Asus BT-400 | ? | ? | ? | ? | ? | ? | ? | ? |
Azio BTD-V401 | ? | ? | ? | Yes | ? | ? | ? | Short |
Trendnet TBW-106UB | ? | ? | ? | Yes | ? | No | Some issues | ? |
StarTech.com USBBT1EDR4 (Class 1) | ? | ? | ? | Yes | ? | ? | Short range | ? |
StarTech.com USBBT2EDR4 (Class 2) | ? | ? | ? | ? | ? | ? | ? | ? |
Trendnet TBW-105UB | ? | ? | ? | Yes | No | ? | Garbage | ? |
Asus BT-211 | ? | ? | ? | ? | ? | ? | ? | ? |
Azio BTD-V201 | 0a12 | 0001 | ? | Yes | Yes | Yes | Good | Good |
CSL BSN23996 | 0a12 | 0001 | 8891 | Yes | Yes, except in some games | Yes | Good | Good |
Generic Adapter | 0a12 | 0001 | 3164 | Yes | No | No | Good | ? |
Intel 7260 (integrated) | 8087 | 07dc | ? | Yes | No, randomly stops working | Yes | Good | Good |
Wii Bluetooth Module | 057e | 0305 | ? | Yes | Yes | Yes | Perfect | Perfect |