Bluetooth Passthrough: Difference between revisions

Jump to navigation Jump to search
→‎Adapter test results: got my hands on a Lenovo laptop with the Intel 3165 card; unfortunately, it has the same issues as most other Intel cards
(Fixes table sorting problem)
(→‎Adapter test results: got my hands on a Lenovo laptop with the Intel 3165 card; unfortunately, it has the same issues as most other Intel cards)
(43 intermediate revisions by 13 users not shown)
Line 1: Line 1:
Since {{revision|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.
Since {{revision|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.
== Limitations ==
* The functionality and stability of the connection heavily depends on the compatibility of the Bluetooth adapter used.
* Even though most Bluetooth adapters can be used in passthrough mode, perfect compatibility is only guaranteed with the Bluetooth modules from Wii consoles.
* When using Bluetooth Passthrough mode, the emulated software directly communicates with the Bluetooth adapter, so it's not possible to mix passthrough mode with emulated Wii Remotes and some Dolphin features like Netplay, TAS input, input display, among others, won't be available.
* Save states made in Bluetooth Passthrough mode can't be loaded on "Emulate a BT Adapter" mode, nor vice-versa.
* Wii Remote connection state dictates whether save states made in Bluetooth Passthrough mode will work or not:
:{|class="wikitable"
! When saving state
! When loading state
! Works?
|-
| One or more Wii Remotes connected
| One or more Wii Remotes connected '''on the same session'''<sup>[[#SaveStateNotes|[1]]]</sup>
| bgcolor="#afa" | Yes
|-
| One or more Wii Remotes connected
| One or more Wii Remotes connected '''on a different session'''<sup>[[#SaveStateNotes|[1]]]</sup>
| bgcolor="#faa" | No
|-
| One or more Wii Remotes connected
| Some or all Wii Remotes disconnected
| bgcolor="#afa" | Yes<sup>[[#SaveStateNotes|[2]]]</sup>
|-
| No Wii Remotes connected
| One or more Wii Remotes connected
| bgcolor="#faa" | No
|-
| No Wii Remotes connected
| No Wii Remotes connected
| bgcolor="#afa" | Yes
|}
<div id="SaveStateNotes">
::<sup>[1]</sup> Same session: for instances where Wii Remotes haven't been disconnected and emulation hasn't been stopped during anywhere between saving and loading of a save state.<br/> Different session: when any one of these has been intervened.
::<sup>[2]</sup> First (re)connection will fail, subsequent connections will work. Depending of the Bluetooth adapter, it might be necessary to connect then disconnect the Wii Remotes before loading the saved state.
</div>


== Setting up ==
== Setting up ==
Line 5: Line 43:
A udev rule has to be installed so Dolphin can use a Bluetooth adapter without having to get root privileges.
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"
'''1.''' Paste the following into '''/etc/udev/rules.d/52-dolphin.rules''' (/lib/udev/rules.d/52-dolphin.rules if making a package). Replace 'YOURVID' and 'YOURPID' with the Vendor ID and Product ID respectively.
 
<code>SUBSYSTEM=="usb", ATTRS{idVendor}=="YOURVID", ATTRS{idProduct}=="YOURPID", TAG+="uaccess"</code>
 
'''2.''' Reload udev rules with:
<code>sudo udevadm control --reload-rules</code>
 
'''3.''' Reinsert the adapter.


Dolphin should be able to automatically unload the USB Bluetooth kernel module (assuming you have permission to; you typically need to be in the <code>plugdev</code> group). If not, unload it with <code>modprobe -r btusb</code>.
Dolphin should be able to automatically unload the USB Bluetooth kernel module (assuming you have permission to; you typically need to be in the <code>plugdev</code> group). If not, unload it with <code>modprobe -r btusb</code>.


=== Windows ===
=== Windows ===
WARNING:  While a libusb driver is installed, other programs/devices will not be able to use your Bluetooth device.  This can be easily reverted in Windows Device Manager and instructions are provided below.
Download and open [http://zadig.akeo.ie/ Zadig] as Administrator, then:
Download and open [http://zadig.akeo.ie/ Zadig] as Administrator, then:
# In the "Options" menu in Zadig, make sure "List All Devices" is enabled.
# Look through the devices for the radio to passthrough.
# On the right column, select "libusbK", then click "Replace Driver". Select "Yes" to modify the system driver.
If you wish to return your Bluetooth drivers back to normal, start "Device Manager" and locate "libusbK" devices in the list.  Right-click the device you wish to restore and select 'Uninstall Device'.  Upon plugging it in next time, Windows will install the default Bluetooth driver and it will resume normal functions.  NOTE:  If you used the winUSB driver instead, it will be located under "Universal Serial Bus Devices." Same instructions apply otherwise.


1. In the "Options" menu in Zadig, make sure "List All Devices" is enabled.
If Dolphin is unable to use your Bluetooth device after doing this, it may not have the necessary hardware features. You can attempt to use the "winUSB" driver from Zadig as a last ditch effort.


2. Look through the devices for the device to passthrough.
==== usbdk ====


3. On the right column, select "libusbk" then click "Replace Driver". Select "Yes" to modify the system driver.
As of {{revision|5.0-10617}} usbdk is no longer supported.


If you run into problems after doing this, such as an "LIBUSB_ERROR_NOT_FOUND" error when trying to use the adapter with Dolphin, downloading and installing the [https://github.com/daynix/UsbDk/releases latest x64 usbdk driver] could help.
Some users who wish to maintain use of their Bluetooth Device and use it in Dolphin without swapping drivers have opted to use usbdk.  When Dolphin starts up, you will lose control of your Bluetooth Device and regain it when Dolphin shuts down.  While this cuts down on the work you need to use your Bluetooth device across many controllers, usbdk has many bugs; the worst of which is that any ES_Launch will immediately crash/freeze the game due to usbdk losing control of the Bluetooth.


=== macOS ===
=== macOS ===
Line 32: Line 85:


While a game is running:
While a game is running:
* Wii Remotes can be synced and paired to Dolphin by using the Sync button.
* 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.
* All saved Wii Remote pairings can be reset by using the Reset button. This will also disconnect all currently connected Wii Remotes.
Line 43: Line 95:


"Press Sync Button" is designed to work just like the Wii's red sync button:
"Press Sync Button" is designed to work just like the Wii's red sync button:
* Pressing the hotkey will trigger a sync.
* Pressing the hotkey will trigger a sync.
* Holding the hotkey for 10 seconds will clear all saved pairings.
* Holding the hotkey for 10 seconds will clear all saved pairings.


==== Forcing a specific adapter ====
==== 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).
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. [http://www.rapidtables.com/convert/number/hex-to-decimal.htm These values should be converted from hex to decimal], for example a VID of "057E" should be inputted as "1406".


== Troubleshooting ==
== Troubleshooting ==
Line 72: Line 123:
=== No usable adapter found ===
=== No usable adapter found ===
This can happen with some adapters. You'll need to [[#Forcing_a_specific_adapter|force your adapter to be used]].
This can happen with some adapters. You'll need to [[#Forcing_a_specific_adapter|force your adapter to be used]].
== 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 can be used with some limitations.
* 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 ==
{|class="wikitable sortable"
{|class="wikitable sortable"
! Adapter
! Adapter
! <abbr title="Vendor Identification">VID</abbr> !! <abbr title="Product Identification">PID</abbr> !! Revision
! Type
! <abbr title="Supported Bluetooth Version">BT</abbr>
! <abbr title="Vendor Identification">VID</abbr> !! <abbr title="Product Identification">PID</abbr> !! <abbr title="Hardware Revision">Rev</abbr>
! Works?
! Works?
! Stable?
! Stable?
! Remembers pairings?
! Remembers pairings?
! Audio
! Audio
! Range
|-
|-
| Asus BT-211
| bgcolor="#afa" | Asus AR9462 Wi-Fi Card
| ? || ? || ?
| mPCIe || 4.0
| 0B05 || 17D0 || 0001
| bgcolor="#afa" colspan="4" style="text-align: center;" | Yes
|-
| bgcolor="#fda" | Asus QCA6174A Wi-Fi Card
| M.2 || 4.1
| 0B05 || 1825 || 0001
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| ?
| bgcolor="#fda" | Limited <sup>[[#Notes|[3]]]</sup>
| ?
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
| ?
| ?
|-
|-
| bgcolor="#faa" | Asus BT-400 (BCM20702A0)
| bgcolor="#fda" | Asus USB-BT400 [BCM20702]
| USB || 4.0
| 0B05 || 17CB || ?
| 0B05 || 17CB || ?
| bgcolor="#fda" | Forced driver <sup>[[#Notes|[1]]]</sup>
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#fda" | Limited <sup>[[#Notes|[5]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[2]]]</sup>
| bgcolor="#faa" | No
| bgcolor="#faa" | No
| Good
| bgcolor="#afa" | Yes
| ?
|-
|-
| bgcolor="#faa" | [https://www.amazon.com/dp/B00DJ83070?linkCode=wey&tag=dolphin-emu-20 Asus BT-400 (BCM20702A0)]
| bgcolor="#fda" | [https://www.amazon.com/dp/B00DJ83070?linkCode=wey&tag=dolphin-emu-20 Asus USB-BT400] [BCM20702]
| USB || 4.0
| 0B05 || 17CF || ?
| 0B05 || 17CF || ?
| bgcolor="#fda" | Forced driver <sup>[[#Notes|[1]]]</sup>
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#fda" | Limited <sup>[[#Notes|[6]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[3]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[4]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[8]]]</sup>
| Good
| bgcolor="#afa" | Yes
| Very long
|-
| bgcolor="#afa" | [https://www.amazon.com/dp/B003765X38?linkCode=wey&tag=dolphin-emu-20 Azio BTD-V201] [CSR8510]
| USB || 2.1
| 0A12 || 0001 || ?
| bgcolor="#afa" colspan="4" style="text-align: center;" | Yes
|-
|-
| bgcolor="#fda" |Atheros AR3012 (AR9462)
| bgcolor="#fda" | Belkin Mini Bluetooth Adapter (F8T065BF) [BCM20702]
| 0CF3 || 3004 || 0001
| USB || 4.0
| bgcolor="#afa" | Yes
| 050D || 065A || ?
| bgcolor="#fda" | Limited <sup>[[#Notes|[7]]]</sup>
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#fda" | Limited <sup>[[#Notes|[1]]]</sup>
| bgcolor="#faa" | No
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| Good
| Very long
|-
|-
| bgcolor="#afa" | Atheros AR9462
| bgcolor="#fda" | CSL USB Bluetooth Nano Adapter (BSN23996) [CSR8510]
| 0B05 || 17D0 || 0001
| USB || 4.0
| 0A12 || 0001 || 8891
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[2]]]</sup>
| bgcolor="#afa" | Yes
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
| Good
| Very long
|-
|-
| bgcolor="#afa" | [https://www.amazon.com/dp/B003765X38?linkCode=wey&tag=dolphin-emu-20 Azio BTD-V201]
| bgcolor="#fda" | E-Blue Mini Nova EBA012V00 [CSR8510]
| USB || 2.1
| 0A12 || 0001 || ?
| 0A12 || 0001 || ?
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
| bgcolor="#faa" | No
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
|-
| bgcolor="#fda" | Foxconn T77H348.02 Wi-Fi Card [AR9462]
| mPCIe || 4.0
| 0489 || E04E || 0001
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[1]]]</sup>
| bgcolor="#faa" | No
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| Good
| Long
|-
| [https://www.amazon.com/dp/B00JAZGSXY?linkCode=wey&tag=dolphin-emu-20 Azio BTD-V401]
| ? || ? || ?
| bgcolor="#afa" | Yes
| ?
| ?
| ?
| Short
|-
|-
| Billionth Systems, Inc GUBTCR42I (Class 2)
| bgcolor="#fda" | [https://www.amazon.com/dp/B01EZTR2G6 Gembird BTD-MINI5] [CSR8510]
| 0A12 || 0001 || ?
| USB || 4.0
| ?
| ?
| ?
| ?
| ?
|-
| bgcolor="#fda" | CSL BSN23996
| 0A12 || 0001 || 8891
| 0A12 || 0001 || 8891
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[5]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[1]]]</sup>
| bgcolor="#faa" | No
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| Good
| Long
|-
|-
| bgcolor="#fda" | [https://www.amazon.com/dp/B01HRZCDEG?linkCode=wey&tag=dolphin-emu-20 CSR 8510 A10 (Generic)]
| bgcolor="#faa" | Generic Bluetooth Adapter [CSR8510]
| 0A12 || 0001 || 8891
| USB || ?
| 0A12 || 0001 || 3164
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[5]]]</sup>
| bgcolor="#faa" colspan="2" style="text-align: center;" | No
| bgcolor="#fda" | Limited <sup>[[#Notes|[3]]]</sup>
| Good
| Long
|-
| bgcolor="#fda" | [https://www.amazon.com/dp/B0169O12UC?linkCode=wey&tag=dolphin-emu-20 Orico Bta408 (BCM20702A0)]
| 0A5C || 21EC || ?
| bgcolor="#fda" | Forced driver <sup>[[#Notes|[1]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[6]]]</sup>
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| Good
| Very long
|-
|-
| bgcolor="#faa" | CSR Generic Bluetooth Edr Mini Nova E Blue 2.1
| bgcolor="#fda" | Generic Bluetooth Adapter [IS1032N]
| 0A12 || 0001 || ?
| USB || 2.0
| 1131 || 1004 || 0373
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[5]]]</sup>
| bgcolor="#faa" | No
| bgcolor="#fda" | Limited <sup>[[#Notes|[7]]]</sup>
| Good
| bgcolor="#fda" | Limited
| Average
|-
|-
| bgcolor="#fda" | Foxconn T77H348.02 (AR9462)
| bgcolor="#fda" | [https://www.amazon.com/dp/B01HRZCDEG?linkCode=wey&tag=dolphin-emu-20 Generic Bluetooth Adapter] [CSR8510]
| 0489 || E04E || 0001
| USB || 4.0
| 0A12 || 0001 || 8891
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[2]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[2]]]</sup>
| bgcolor="#faa" | No
| bgcolor="#fda" | Limited <sup>[[#Notes|[7]]]</sup>
| Good
| Very long
|-
| bgcolor="#faa" | Generic Adapter
| 0A12 || 0001 || 3164
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#faa" | No
| bgcolor="#faa" | No
| Good
| ?
|-
|-
| bgcolor="#faa" | [https://www.amazon.com/dp/B00F85ZPIY?linkCode=wey&tag=dolphin-emu-20 GMYLE Ultra-Mini USB CSR4.0]
| bgcolor="#faa" | [https://www.amazon.com/dp/B00F85ZPIY?linkCode=wey&tag=dolphin-emu-20 GMYLE Ultra-Mini USB CSR4.0] [CSR8510]
| USB || 4.0
| 0A12 || 0001 || 8891
| 0A12 || 0001 || 8891
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[2]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[1]]]</sup>
| bgcolor="#faa" | No
| bgcolor="#faa" | No
| Average
| bgcolor="#fda" | Limited
| Short
|-
|-
| bgcolor="#afa" | Intel Dual Band Wireless-AC 7260
| bgcolor="#fda" | Intel Dual Band Wireless-AC 3160
| M.2 || 4.0
| 8087 || 07DC || 0001
| 8087 || 07DC || 0001
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[6]]]</sup>
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
|-
| bgcolor="#fda" | Intel Dual Band Wireless-AC 3165
| M.2 || 4.2
| 8087 || 0A2A || 0001
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[6]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[7]]]</sup>
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| Good
| Long
|-
|-
| bgcolor="#afa" | [https://www.amazon.com/dp/B0018O9JIG?linkCode=wey&tag=dolphin-emu-20 IOGear GBU421]
| bgcolor="#fda" | Intel Dual Band Wireless-AC 7260
| 0A5C || 2148 || ?
| M.2 || 4.0
| 8087 || 07DC || 0001
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[6]]]</sup>
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
|-
| bgcolor="#fda" | Intel Wireless-AC 9260
| M.2 || 5.1
| 8087 || 0025 || 0002
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[6]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[7]]]</sup>
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| Good
| Long
|-
|-
| bgcolor="#faa" | [https://www.amazon.com/dp/B007GFX0PY?linkCode=wey&tag=dolphin-emu-20 IOGear GBU521]
| bgcolor="#afa" | [https://www.amazon.com/dp/B0018O9JIG?linkCode=wey&tag=dolphin-emu-20 IOGear GBU421] [BCM2046]
| USB || 2.1
| 0A5C || 2148 || ?
| bgcolor="#afa" colspan="4" style="text-align: center;" | Yes
|-
| bgcolor="#fda" | [https://www.amazon.com/dp/B007GFX0PY?linkCode=wey&tag=dolphin-emu-20 IOGear GBU521] [BCM20702]
| USB || 4.0
| 0A5C || 21E8 || 0112
| 0A5C || 21E8 || 0112
| bgcolor="#fda" | Forced driver <sup>[[#Notes|[1]]]</sup>
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#faa" | No
| bgcolor="#faa" | No
| Good
| Long
|-
| bgcolor="#fda" | ISSC EDR Bluetooth Adapter
| 1131 || 1004 || 0373
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[8]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[3]]]</sup>
| Short range
| Average
|-
|-
| bgcolor="#fda" | [https://www.amazon.com/dp/B005Z5HT2M?linkCode=wey&tag=dolphin-emu-20 Kinivo BTD-300]
| bgcolor="#fda" | Kinivo BTD-300 [BCM2070]
| USB || 3.0
| 0A5C || 2198 || 0391
| 0A5C || 2198 || 0391
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[2]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[1]]]</sup>
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| Average
| bgcolor="#fda" | Limited
| Average
|-
|-
| bgcolor="#afa" | [https://www.amazon.com/dp/B007Q45EF4?linkCode=wey&tag=dolphin-emu-20 Kinivo BTD-400]
| bgcolor="#fda" | [https://www.amazon.com/dp/B007Q45EF4?linkCode=wey&tag=dolphin-emu-20 Kinivo BTD-400] [BCM20702]
| USB || 4.0
| 0A5C || 21E8 || 0112
| 0A5C || 21E8 || 0112
| bgcolor="#fda" | Forced driver <sup>[[#Notes|[1]]]</sup>
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[1]]]</sup>
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| Average
| bgcolor="#fda" | Limited
| Very long
|-
|-
| Lenovo X1 Carbon Laptop, built in adapter
| bgcolor="#fda" | Lite-On WCBN807A Wi-Fi Card [QCA6174A]
| 8087 || 0A2A || 0001
| M.2 || 5.0
| 04CA|| 3016 || 0001
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[7]]]</sup>
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| ?
| ?
| ?
|-
|-
| bgcolor="#faa" | [https://www.amazon.com/dp/B00HZWEB74?linkCode=wey&tag=dolphin-emu-20 Mayflash DolphinBar]
| bgcolor="#faa" | [https://www.amazon.com/dp/B00HZWEB74?linkCode=wey&tag=dolphin-emu-20 Mayflash DolphinBar (W010)]
| ? || ? || ?
| USB
| bgcolor="#faa" | No
| colspan="4" style="text-align: center;" | N/A
| ?
| bgcolor="#faa" colspan="4" style="text-align: center;" | Not supported<sup>[[#Notes|[9]]]</sup>
| ?
| ?
| ?
|-
|-
| NoteShip Bluetooth Adapter
| NoteShip Bluetooth Adapter [CSR8510]
| USB || ?
| 0A12|| 0001 || 0100
| 0A12|| 0001 || 0100
| bgcolor="#afa" | Yes
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
| bgcolor="#afa" | Yes
| ?
| ?
| ?
| ?
| ?
|-
|-
| bgcolor="#fda" | Plugable USB 2.0 Bluetooth Adapter (BCM20702A0)
| bgcolor="#afa" | Nintendo Wii Bluetooth Module (WML-C43) [BCM2045]
| USB<sup>[[#Notes|[10]]]</sup> || 2.0
| 057E || 0305 || ?
| bgcolor="#afa" colspan="4" style="text-align: center;" | Yes
|-
| bgcolor="#afa" | Nintendo Wii Bluetooth Module (J27H002) [BCM2045]
| USB<sup>[[#Notes|[10]]]</sup> || 2.0
| 057E || 0305 || ?
| bgcolor="#afa" colspan="4" style="text-align: center;" | Yes
|-
| bgcolor="#afa" | Orico BTA-403 [CSR8510]
| USB || 4.0
| 0A12 || 0001 || 8891
| bgcolor="#afa" colspan="4" style="text-align: center;" | Yes
|-
| bgcolor="#fda" | [https://www.amazon.com/dp/B0169O12UC?linkCode=wey&tag=dolphin-emu-20 Orico BTA-408] [BCM20702]
| USB || 4.0
| 0A5C || 21EC || ?
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#fda" | Limited <sup>[[#Notes|[3]]]</sup>
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
|-
| bgcolor="#fda" | Plugable USB-BT4LE Bluetooth Adapter [BCM20702]
| USB || 4.0
| 0A5C || 21E8 || 0112
| 0A5C || 21E8 || 0112
| bgcolor="#fda" | Forced driver <sup>[[#Notes|[1]]]</sup>
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#fda" | Limited <sup>[[#Notes|[6]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[3]]]</sup>
| bgcolor="#afa" | Yes
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
| Good
| Very long
|-
|-
| bgcolor="#fda" | Qualcomm Atheros QCA61x4A
| bgcolor="#fda" | Qualcomm Atheros AR5B22 Wi-Fi Card [AR9462]
| 0B05 || 1825 || 0001
| mPCIe || 4.0
| 0CF3 || 3004 || 0001
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[6]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[4]]]</sup>
| bgcolor="#afa" | Yes
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
| Good
| Very long
|-
|-
| bgcolor="#faa" | [https://www.amazon.com/dp/B001D8CCYK?linkCode=wey&tag=dolphin-emu-20 Rocketfish Bluetooth Adapter]
| bgcolor="#faa" | [https://www.amazon.com/dp/B001D8CCYK?linkCode=wey&tag=dolphin-emu-20 Rocketfish RF-MRBTAD Micro Bluetooth Adapter] [BCM2046]
| USB || 2.1
| 0461 || 4D75 || ?
| 0461 || 4D75 || ?
| bgcolor="#fda" | Forced driver <sup>[[#Notes|[1]]]</sup>
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#faa" | No
| bgcolor="#faa" colspan="2" style="text-align: center;" | No
| bgcolor="#faa" | No
| ?
| ?
| ?
|-
|-
| bgcolor="#afa" | [http://www.senanetworks.com/products/industrial_bluetooth/ud100.php Sena UD100 Bluetooth Adapter]
| bgcolor="#afa" | [http://www.senanetworks.com/ud100-g03.html?sc=14&category=3968 Sena Networks Parani-UD100] [CSR8510]
| USB || 4.0
| 0A12 || 0001 || 8241
| 0A12 || 0001 || 8241
| bgcolor="#afa" | Yes
| bgcolor="#afa" colspan="4" style="text-align: center;" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| Good
| Very long
|-
|-
| bgcolor="#fda" | Silicon Wave Bluetooth Wireless Adapter
| bgcolor="#fda" | Silicon Wave Bluetooth Wireless Adapter [BCM????]
| USB || ?
| 0C10 || 0000 || 1915
| 0C10 || 0000 || 1915
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[5]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[2]]]</sup>
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| ?
| ?
| ?
|-
|-
| [https://www.amazon.com/dp/B00F25Z0FS?linkCode=wey&tag=dolphin-emu-20 SoundBot SB340]
| [https://www.amazon.com/dp/B00F25Z0FS?linkCode=wey&tag=dolphin-emu-20 SoundBot SB340] [CSR8510]
| USB || 4.0
| 0A12 || 0001 || ?
| 0A12 || 0001 || ?
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| ?
| ?
| ?
| ?
| Good
| Long
|-
| StarTech.com USBBT1EDR4 (Class 1)
| ? || ? || ?
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| ?
| ?
| Short range
| ?
|-
|-
| StarTech.com USBBT2EDR4 (Class 2)
| Trendnet TBW-106UB [CSR8510]
| ? || ? || ?
| USB || 4.0
| ?
| ?
| ?
| ?
| ?
|-
| bgcolor="#faa" | Trendnet TBW-105UB
| ? || ? || ?
| bgcolor="#afa" | Yes
| bgcolor="#faa" | No
| ?
| Garbage
| ?
|-
| bgcolor="#faa" | Trendnet TBW-106UB
| 0A12 || 0001 || 8891
| 0A12 || 0001 || 8891
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| ?
| ?
| bgcolor="#faa" | No
| bgcolor="#faa" | No
| Average
| bgcolor="#fda" | Limited
| ?
|-
|-
| bgcolor="#afa" | [http://www.ebay.com/itm/BRAND-NEW-BLUETOOTH-WML-C43-PCB-CIRCUIT-BOARD-FOR-NINTENDO-Wii-VH55-/380860957466 Wii Bluetooth Module (WML-C43, BCM2045)]
| bgcolor="#fda" | [https://www.trust.com/en/product/17772-bluetooth-3-0-usb-adapter Trust Bluetooth 3.0 Adapter] [AR3011]
| 057E || 0305 || ?
| USB || 3.0
| bgcolor="#afa" | Yes
| 0CF3 || 3002 || 0001
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[4]]][[#Notes|[6]]]</sup>
| bgcolor="#faa" | No
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| Good
| Very long
|-
|-
| bgcolor="#afa" | [http://www.ebay.com/itm/Wii-OEM-Nintendo-Wii-Bluetooth-BT-Board-J27H002-Replacement-/161905837348 Wii Bluetooth Module (J27H002, BCM2045)]
| bgcolor="#afa" | [https://www.amazon.com/dp/B01LX6HISL?linkCode=wey&tag=dolphin-emu-20 UGREEN USB Bluetooth 4.0 Adapter] [CSR8510]
| 057E || 0305 || ?
| USB || 4.0
| bgcolor="#afa" | Yes
| 0A12 || 0001 || 8891
| bgcolor="#afa" | Yes
| bgcolor="#afa" colspan="4" style="text-align: center;" | Yes
| bgcolor="#afa" | Yes
| Good
| Very long
|-
| Wii U Bluetooth Module (BCM20702)
| ? || ? || ?
| ?
| ?
| ?
| ?
| ?
|}
|}


:<span style="background-color:#faa; border:1px solid #aaa;">&nbsp;&nbsp;&nbsp;&nbsp;</span> '''Not recommended.''' Does not work well and has significant limitations.
:<span style="background-color:#f9f9f9; border:1px solid #aaa;">&nbsp;&nbsp;&nbsp;&nbsp;</span> '''Unknown.''' Not enough information to classify.
:<span style="background-color:#fda; border:1px solid #aaa;">&nbsp;&nbsp;&nbsp;&nbsp;</span> '''Recommended, in some cases.''' This adapter will work well in most cases, but there may be issues in some "Bluetooth intensive" games.
:<span style="background-color:#faa; border:1px solid #aaa;">&nbsp;&nbsp;&nbsp;&nbsp;</span> '''Incompatible.''' Does not work or has significant limitations.
:<span style="background-color:#afa; border:1px solid #aaa;">&nbsp;&nbsp;&nbsp;&nbsp;</span> '''Recommended.''' This adapter will work well in all cases and will give the same experience as a Wii Bluetooth adapter.
:<span style="background-color:#fda; border:1px solid #aaa;">&nbsp;&nbsp;&nbsp;&nbsp;</span> '''Partially compatible.''' Works well in most cases, but there may be some issues.
:<span style="background-color:#afa; border:1px solid #aaa;">&nbsp;&nbsp;&nbsp;&nbsp;</span> '''Fully compatible.''' Works well in all cases and will give the same experience as a Wii Bluetooth adapter.


<div id="Notes">
<div id="Notes">
'''Initialization'''
'''Stability'''
:<sup>[1]</sup> Needs to [[#No_usable_adapter_found|force Dolphin to use the adapter]].
:<sup>[1]</sup> May stop working after HCI resets (stopping, resetting emulation or going back to the system menu).
:<sup>[2]</sup> Has issues with games which send a lot of commands (including [[New Super Mario Bros. Wii]] and [[The Legend of Zelda: Skyward Sword]] before you get in game).
:<sup>[3]</sup> Starts having lag issues after ~30 minutes. Reconnecting the Wii remote is required.
:<sup>[4]</sup> May stop working after HCI resets on Windows, works fine on Linux and macOS.
:<sup>[5]</sup> Randomly stop working on Windows, works fine on Linux and macOS.
:<sup>[6]</sup> Has issues connecting multiple Wiimotes.


'''Stability'''
'''Pairing'''
:<sup>[2]</sup> May stop working after HCI resets (stopping, resetting emulation or going back to the system menu).
:<sup>[7]</sup> Has issues reconnecting multiple Wiimotes.
:<sup>[5]</sup> Has issues with games which send a lot of commands (including [[New Super Mario Bros. Wii]] and [[The Legend of Zelda: Skyward Sword]] before you get in game).
:<sup>[8]</sup> Remembers only one Wiimote.
:<sup>[6]</sup> Starts having lag issues after ~30 minutes. Reconnecting the Wii remote is required.
:<sup>[7]</sup> May stop working after HCI resets on Windows, works fine on Linux and macOS.
:<sup>[8]</sup> Randomly stop working on Windows, works fine on Linux and macOS.


'''Pairings'''
'''Other'''
:<sup>[3]</sup> Has issues reconnecting multiple Wiimotes.
:<sup>[9]</sup> Doesn't expose its internal Bluetooth adapter, can't be used with Bluetooth Passthrough in any capacity.
:<sup>[4]</sup> Limited to 1 remote.
</div>
</div>
:<sup>[10]</sup> Must be modded before use, [https://forums.dolphin-emu.org/Thread-how-to-wire-a-wii-s-bluetooth-module-to-a-pc-usb-port refer to this forum thread].
[[Category:Tutorials]]
[[Category:Tutorials]]

Navigation menu