Bluetooth Passthrough: Difference between revisions

→‎Adapter test results: correct TP-Link UB400 details
(→‎Adapter test results: Use colspan where applicable (known fields only))
(→‎Adapter test results: correct TP-Link UB400 details)
(74 intermediate revisions by 16 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 is a powerful option that allows for perfect Wii Remote behaviors on Dolphin, given a powerful enough Bluetooth adapter. Unlike standard Bluetooth emulation, Bluetooth Passthrough supports pairing third party Wii Remotes, Wii Remote audio, and can more accurately communicate fine motions. However, because Bluetooth Passthrough gives the Bluetooth adapter directly to the emulated software, there are heaps of limitations that make it only worthwhile for certain situations.


== Limitations ==
== Limitations ==
* The functionality and quality of the connections heavily depend on the quality of the adapter.
* Requires a specialized driver on Windows, and on Linux requires a udev rule. The Operating System will not be able to access the Bluetooth adapter while it is in use.
* Even though most adapters work fine in passthrough mode, the only perfect adapter is the Wii's Bluetooth module (so far).
* The functionality and stability of the connection heavily depends on the compatibility of the Bluetooth adapter used.
* Save states can be used with some limitations.
* Even though most Bluetooth adapters can be used in passthrough mode, perfect compatibility is only guaranteed with the Bluetooth modules from Wii consoles.
* 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.
* Many features do not work. Netplay, input recordings will be limited. The Wii Remote may disconnect if Dolphin is running too fast or too slow. If the Bluetooth is disconnected from your computer, Dolphin may crash.
* 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 11: Line 44:
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 ===
Download and open [http://zadig.akeo.ie/ Zadig] as Administrator, then:
 
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 [https://zadig.akeo.ie/ Zadig] as Administrator, then:
# In the "Options" menu in Zadig, make sure "List All Devices" is enabled.
# In the "Options" menu in Zadig, make sure "List All Devices" is enabled.
# Look through the devices for the device to passthrough.
# 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.
# 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.
 
If this does not revert your device driver, you may right click on the Bluetooth device in Device Manager, select "Update Driver", "Browse my computer for drivers", then select "Let me pick from a list of available drivers on my computer". From there, select "Generic Bluetooth Adapter". This should permanently revert your Bluetooth driver.
 
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.
 
==== usbdk ====
 
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 77: Line 130:
{|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="#fda" | Asus BT-400 (BCM20702A0)
| bgcolor="#fda" | Asus USB-BT400 [BCM20702]
| USB || 4.0
| 0B05 || 17CB || ?
| 0B05 || 17CB || ?
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#fda" | Limited <sup>[[#Notes|[2]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[2]]]</sup>
| bgcolor="#faa" | No
| bgcolor="#faa" | No
| Good
| bgcolor="#afa" | Yes
| ?
|-
|-
| bgcolor="#fda" | [https://www.amazon.com/dp/B00DJ83070?linkCode=wey&tag=dolphin-emu-20 Asus BT-400 (BCM20702A0)]
| bgcolor="#fda" | Asus USB-BT400 [BCM20702]
| USB || 4.0
| 0B05 || 17CF || ?
| 0B05 || 17CF || ?
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#fda" | Limited <sup>[[#Notes|[3]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[3]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[7]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[8]]]</sup>
| Good
| Very long
|-
| bgcolor="#fda" |Atheros AR3012 (AR9462)
| 0CF3 || 3004 || 0001
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[4]]]</sup>
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| Good
| Very long
|-
| bgcolor="#afa" | Atheros AR9462
| 0B05 || 17D0 || 0001
| bgcolor="#afa" colspan="3" 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="#afa" | Azio BTD-V201 [CSR8510]
| USB || 2.1
| 0A12 || 0001 || ?
| 0A12 || 0001 || ?
| bgcolor="#afa" colspan="3" style="text-align: center;" | Yes
| bgcolor="#afa" colspan="4" style="text-align: center;" | Yes
| Good
| Long
|-
| [https://www.amazon.com/dp/B00JAZGSXY?linkCode=wey&tag=dolphin-emu-20 Azio BTD-V401]
| ? || ? || ?
| bgcolor="#afa" | Yes
| ?
| ?
| ?
| Short
|-
|-
| bgcolor="#fda" | Belkin Mini BT 4.0 Adapter
| bgcolor="#fda" | Belkin Mini Bluetooth Adapter (F8T065BF) [BCM20702]
| USB || 4.0
| 050D || 065A || ?
| 050D || 065A || ?
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#fda" | Limited <sup>[[#Notes|[1]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[1]]]</sup>
| bgcolor="#faa" | No
| bgcolor="#faa" | No
| Good
| ?
|-
| bgcolor="#fda" | CSL BSN23996
| 0A12 || 0001 || 8891
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[2]]]</sup>
| bgcolor="#afa" | Yes
| Good
| Long
|-
| bgcolor="#fda" | [https://www.amazon.com/dp/B01HRZCDEG?linkCode=wey&tag=dolphin-emu-20 CSR 8510 A10 (Generic)]
| 0A12 || 0001 || 8891
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[2]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[6]]]</sup>
| Good
| Long
|-
|-
| bgcolor="#fda" | [https://www.amazon.com/dp/B0169O12UC?linkCode=wey&tag=dolphin-emu-20 Orico Bta408 (BCM20702A0)]
| bgcolor="#fda" | Buro BU-BT40B [BCM20702]
| USB || 4.0
| 0A5C || 21EC || ?
| 0A5C || 21EC || ?
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#fda" | Limited <sup>[[#Notes|[3]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[3]]]</sup>
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
|-
| bgcolor="#fda" | CSL USB Bluetooth Nano Adapter (BSN23996) [CSR8510]
| USB || 4.0
| 0A12 || 0001 || 8891
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| Good
| bgcolor="#fda" | Limited <sup>[[#Notes|[2]]]</sup>
| Very long
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
|-
|-
| bgcolor="#fda" | CSR Generic Bluetooth EDR Mini Nova E Blue 2.1
| 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="#afa" colspan="2" style="text-align: center;" | Yes
| bgcolor="#faa" | No
| bgcolor="#faa" | No
| Good
| bgcolor="#afa" | Yes
| Average
|-
| bgcolor="#faa" | Foxconn T77H114.32 Bluetooth Module [BCM2070]
| USB <sup>[[#Notes|[14]]]</sup> || 2.1
| 0489 || E00F || 0596
| bgcolor="#faa" colspan="4" style="text-align: center;" | No
|-
|-
| bgcolor="#fda" | Foxconn T77H348.02 (AR9462)
| bgcolor="#fda" | Foxconn T77H348.02 Wi-Fi Card [AR9462]
| mPCIe || 4.0
| 0489 || E04E || 0001
| 0489 || E04E || 0001
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[1]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[1]]]</sup>
| bgcolor="#faa" | No
| bgcolor="#faa" | No
| Good
| bgcolor="#afa" | Yes
| Very long
|-
| bgcolor="#fda" | Gembird BTD-MINI5 [CSR8510]
| USB || 4.0
| 0A12 || 0001 || 8891
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[1]]]</sup>
| bgcolor="#faa" | No
| bgcolor="#afa" | Yes
|-
|-
| bgcolor="#faa" | Generic Adapter
| bgcolor="#faa" | Generic Bluetooth Adapter [CSR8510]
| USB || ?
| 0A12 || 0001 || 2520
| bgcolor="#faa" colspan="4" style="text-align: center;" | No
|-
| bgcolor="#faa" | Generic Bluetooth Adapter [CSR8510]
| USB || ?
| 0A12 || 0001 || 3164
| 0A12 || 0001 || 3164
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#faa" colspan="2" style="text-align: center;" | No
| bgcolor="#faa" colspan="2" style="text-align: center;" | No
| Good
| bgcolor="#afa" | Yes
| ?
|-
| bgcolor="#fda" | Generic Bluetooth Adapter [CSR8510]
| USB || 4.0
| 0A12 || 0001 || 8891
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[2]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[7]]]</sup>
| bgcolor="#afa" | Yes
|-
| bgcolor="#fda" | Generic Bluetooth Adapter [IS1032N]
| USB || 2.0
| 1131 || 1004 || 0373
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[5]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[7]]]</sup>
| bgcolor="#fda" | Limited
|-
|-
| bgcolor="#faa" | [https://www.amazon.com/dp/B00F85ZPIY?linkCode=wey&tag=dolphin-emu-20 GMYLE Ultra-Mini USB CSR4.0]
| bgcolor="#faa" | 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|[1]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[1]]]</sup>
| bgcolor="#faa" | No
| bgcolor="#faa" | No
| Average
| bgcolor="#fda" | Limited
| Short
|-
| bgcolor="#fda" | Intel Dual Band Wireless-AC 3160
| M.2 || 4.0
| 8087 || 07DC || 0001
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[6]]]</sup>
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
|-
|-
| Intel Dual Band Wireless-AC 3165
| bgcolor="#fda" | Intel Dual Band Wireless-AC 3165
| M.2 || 4.2
| 8087 || 0A2A || 0001
| 8087 || 0A2A || 0001
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[6]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[7]]]</sup>
| bgcolor="#afa" | Yes
|-
| bgcolor="#fda" | Intel Dual Band Wireless-AC 3168
| M.2 || 4.2
| 8087 || 0AA7 || 0001
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[6]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[7]]]</sup>
| bgcolor="#afa" | Yes
|-
| bgcolor="#fda" | Intel Dual Band Wireless-AC 7260
| M.2 || 4.0
| 8087 || 07DC || 0001
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[6]]]</sup>
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
| ?
| ?
| ?
|-
|-
| bgcolor="#afa" | Intel Dual Band Wireless-AC 7260
| bgcolor="#fda" | Intel Wireless-AC 9260
| 8087 || 07DC || 0001
| M.2 || 5.1
| bgcolor="#afa" colspan="3" style="text-align: center;" | Yes
| 8087 || 0025 || 0002
| Good
| bgcolor="#afa" | Yes
| Long
| bgcolor="#fda" | Limited <sup>[[#Notes|[6]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[7]]]</sup>
| bgcolor="#afa" | Yes
|-
| bgcolor="#fda" | Intel Wireless-AC 9462
| M.2 <sup>[[#Notes|[12]]]</sup> || 5.2 <sup>[[#Notes|[13]]]</sup>
| 8087 || 0AAA || 0002
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[6]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[7]]]</sup>
| bgcolor="#afa" | Yes
|-
| bgcolor="#fda" | Intel Wi-Fi 6 AX201
| M.2 <sup>[[#Notes|[12]]]</sup> || 5.2 <sup>[[#Notes|[13]]]</sup>
| 8087 || 0026 || 0002
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[6]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[7]]]</sup>
| bgcolor="#afa" | Yes
|-
|-
| bgcolor="#afa" | [https://www.amazon.com/dp/B0018O9JIG?linkCode=wey&tag=dolphin-emu-20 IOGear GBU421]
| bgcolor="#fda" | IOGear GBU421 [BCM2046]
| USB || 2.1
| 0A5C || 2148 || ?
| 0A5C || 2148 || ?
| bgcolor="#afa" colspan="3" style="text-align: center;" | Yes
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| Good
| bgcolor="#fda" | Limited <sup>[[#Notes|[6]]]</sup>
| Long
| bgcolor="#fda" | Limited <sup>[[#Notes|[7]]]</sup>
| bgcolor="#afa" | Yes
|-
|-
| bgcolor="#fda" | [https://www.amazon.com/dp/B007GFX0PY?linkCode=wey&tag=dolphin-emu-20 IOGear GBU521]
| bgcolor="#fda" | IOGear GBU521 [BCM20702]
| USB || 4.0
| 0A5C || 21E8 || 0112
| 0A5C || 21E8 || 0112
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| 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|[5]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[6]]]</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|[1]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[1]]]</sup>
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| Average
| bgcolor="#fda" | Limited
| Average
|-
|-
| bgcolor="#fda" | [https://www.amazon.com/dp/B007Q45EF4?linkCode=wey&tag=dolphin-emu-20 Kinivo BTD-400]
| bgcolor="#fda" | Kinivo BTD-400 [BCM20702]
| USB || 4.0
| 0A5C || 21E8 || 0112
| 0A5C || 21E8 || 0112
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#fda" | Limited <sup>[[#Notes|[1]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[1]]]</sup>
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| Average
| bgcolor="#fda" | Limited
| Very long
|-
| bgcolor="#fda" | Lite-On WCBN806A Wi-Fi Card [QCA9377]
| M.2 || 4.1
| 04CA || 3015 || 0001
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[7]]]</sup>
| bgcolor="#afa" | Yes
|-
| bgcolor="#fda" | Lite-On WCBN807A Wi-Fi Card [QCA6174A]
| 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="#faa" | [https://www.amazon.com/dp/B00HZWEB74?linkCode=wey&tag=dolphin-emu-20 Mayflash DolphinBar]
| bgcolor="#faa" | Mayflash DolphinBar (W010)
| bgcolor="#faa" colspan="8" style="text-align: center;" | Not supported <sup>[[#Notes|[8]]]</sup>
| USB
| colspan="4" style="text-align: center;" | N/A
| bgcolor="#faa" colspan="4" style="text-align: center;" | Not supported <sup>[[#Notes|[10]]]</sup>
|-
|-
| NoteShip Bluetooth Adapter
| NoteShip Bluetooth Adapter [CSR8510]
| USB || ?
| 0A12|| 0001 || 0100
| 0A12|| 0001 || 0100
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
| ?
| ?
| ?
| ?
| ?
|-
|-
| bgcolor="#fda" | Plugable USB 2.0 Bluetooth Adapter (BCM20702A0)
| bgcolor="#afa" | Nintendo Wii Bluetooth Module (WML-C43) [BCM2045]
| USB <sup>[[#Notes|[11]]]</sup> || 2.0
| 057E || 0305 || 0100
| bgcolor="#afa" colspan="4" style="text-align: center;" | Yes
|-
| bgcolor="#afa" | Nintendo Wii Bluetooth Module (J27H002) [BCM2045]
| USB <sup>[[#Notes|[11]]]</sup> || 2.0
| 057E || 0305 || 0100
| bgcolor="#afa" colspan="4" style="text-align: center;" | Yes
|-
| bgcolor="#fda" | Orico BTA-403 [CSR8510]
| USB || 4.0
| 0A12 || 0001 || 8891
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[6]]]</sup>
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
|-
| bgcolor="#fda" | 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="#faa" | Orico BTA-508 [RTL8761B]
| USB || 5.1 <sup>[[#Notes|[15]]]</sup>
| 0BDA || 8771 || 0200
| bgcolor="#faa" colspan="4" style="text-align: center;" | No <sup>[[#Notes|[9]]]</sup>
|-
| bgcolor="#fda" | Plugable USB-BT4LE Bluetooth Adapter [BCM20702]
| USB || 4.0
| 0A5C || 21E8 || 0112
| 0A5C || 21E8 || 0112
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#fda" | Limited <sup>[[#Notes|[3]]]</sup>
| bgcolor="#fda" | Limited <sup>[[#Notes|[3]]]</sup>
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
|-
| bgcolor="#fda" | Qualcomm Atheros AR5B22 Wi-Fi Card [AR9462]
| mPCIe || 4.0
| 0CF3 || 3004 || 0001
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| Good
| bgcolor="#fda" | Limited <sup>[[#Notes|[4]]]</sup>
| Very long
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
|-
|-
| bgcolor="#fda" | Qualcomm Atheros QCA61x4A
| bgcolor="#fda" | Qualcomm Atheros QCA9377 Wi-Fi Card
| 0B05 || 1825 || 0001
| M.2 || 5.0
| 0CF3 || E500 || 0001
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[7]]]</sup>
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[3]]]</sup>
| bgcolor="#afa" | Yes
| Good
| Very long
|-
|-
| bgcolor="#faa" | [https://www.amazon.com/dp/B001D8CCYK?linkCode=wey&tag=dolphin-emu-20 Rocketfish Bluetooth Adapter]
| bgcolor="#faa" | Realtek RTL8852AE Wi-Fi Card
| M.2 || 5.2 <sup>[[#Notes|[15]]]</sup>
| 0BDA || 4852 || 0000
| bgcolor="#faa" colspan="4" style="text-align: center;" | No <sup>[[#Notes|[9]]]</sup>
|-
| bgcolor="#faa" | Rocketfish Micro Bluetooth Adapter (RF-MRBTAD) [BCM2046]
| USB || 2.1
| 0461 || 4D75 || ?
| 0461 || 4D75 || ?
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#afa" | Yes ([[#Forcing a specific adapter|Forced]])
| bgcolor="#faa" colspan="2" style="text-align: center;" | No
| bgcolor="#faa" colspan="2" style="text-align: center;" | No
| ?
| ?
| ?
|-
|-
| bgcolor="#afa" | [http://www.senanetworks.com/ud100-g03.html?sc=14&category=3968 Sena UD100 Bluetooth Adapter]
| bgcolor="#fda" | Sena Networks Parani-UD100 [CSR8510]
| USB || 4.0
| 0A12 || 0001 || 8241
| 0A12 || 0001 || 8241
| bgcolor="#afa" colspan="3" style="text-align: center;" | Yes
| bgcolor="#afa" colspan="3" style="text-align: center;" | Yes
| Good
| bgcolor="#fda" | Limited
| Very long
|-
|-
| bgcolor="#fda" | Silicon Wave Bluetooth Wireless Adapter
| bgcolor="#fda" | Silicon Wave Bluetooth Wireless Adapter
| USB || 2.1
| 0C10 || 0000 || 1915
| 0C10 || 0000 || 1915
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[2]]]</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]
| SoundBot SB340 [CSR8510]
| USB || 4.0
| 0A12 || 0001 || ?
| 0A12 || 0001 || ?
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| ?
| ?
| ?
| ?
| Good
| bgcolor="#afa" | Yes
| Long
|-
| bgcolor="#fda" | TP-Link Bluetooth 4.0 Nano USB Adapter (UB400) [CSR8510]
| USB || 4.0
| 0A12 || 0001 || ?
| bgcolor="#afa" colspan="3" style="text-align: center;" | Yes <sup>[[#Notes|[16]]]</sup>
| bgcolor="#fda" | Limited
|-
| bgcolor="#faa" | TP-Link Bluetooth 5.0 Nano USB Adapter (UB500) [RTL8761B]
| USB || 5.0 <sup>[[#Notes|[15]]]</sup>
| 2357 || 0604 || ?
| bgcolor="#faa" colspan="4" style="text-align: center;" | No <sup>[[#Notes|[9]]]</sup>
|-
|-
| StarTech.com USBBT1EDR4 (Class 1)
| Trendnet TBW-106UB [CSR8510]
| ? || ? || ?
| USB || 4.0
| 0A12 || 0001 || 8891
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| ?
| ?
| ?
| bgcolor="#faa" | No
| Short range
| bgcolor="#fda" | Limited
| ?
|-
|-
| bgcolor="#faa" | Trendnet TBW-105UB
| bgcolor="#fda" | Trust Bluetooth 3.0 Adapter [AR3011]
| ? || ? || ?
| USB || 3.0
| 0CF3 || 3002 || 0001
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[4]]][[#Notes|[6]]]</sup>
| bgcolor="#faa" | No
| bgcolor="#faa" | No
| ?
| bgcolor="#afa" | Yes
| Garbage
|-
| ?
| bgcolor="#faa" | UGREEN Bluetooth 5.0 Adapter (CM390) [RTL8761B]
| USB || 5.1 <sup>[[#Notes|[15]]]</sup>
| 2B89 || 8761 || 0200
| bgcolor="#faa" colspan="4" style="text-align: center;" | No <sup>[[#Notes|[9]]]</sup>
|-
|-
| Trendnet TBW-106UB
| bgcolor="#fda" | UGREEN USB Bluetooth 4.0 Adapter (CM109) [CSR8510]
| USB || 4.0
| 0A12 || 0001 || 8891
| 0A12 || 0001 || 8891
| bgcolor="#afa" colspan="2" style="text-align: center;" | Yes
| bgcolor="#fda" | Limited <sup>[[#Notes|[7]]]</sup>
| bgcolor="#afa" | Yes
| bgcolor="#afa" | Yes
| ?
| bgcolor="#faa" | No
| Average
| ?
|-
| 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)]
| 057E || 0305 || ?
| bgcolor="#afa" colspan="3" style="text-align: center;" | 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)]
| 057E || 0305 || ?
| bgcolor="#afa" colspan="3" style="text-align: center;" | Yes
| Good
| Very long
|}
|}


Line 353: Line 505:
:<sup>[4]</sup> May stop working after HCI resets on Windows, works fine on Linux and macOS.
:<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>[5]</sup> Randomly stop working on Windows, works fine on Linux and macOS.
:<sup>[6]</sup> Has issues connecting multiple Wii Remotes.


'''Pairing'''
'''Pairing'''
:<sup>[6]</sup> Has issues reconnecting multiple Wiimotes.
:<sup>[7]</sup> Has issues reconnecting multiple Wii Remotes.
:<sup>[7]</sup> Limited to 1 remote.
:<sup>[8]</sup> Remembers only one Wii Remote.
:<sup>[9]</sup> Seems to completely ignore all discovery commands sent by the emulated software, rendering it unable to find any Wiimote. Might start working if Dolphin gets the ability to upload firmware binaries to the adapter, like the proprietary Realtek driver does.


'''Other'''
'''Other'''
:<sup>[8]</sup> Doesn't expose its internal Bluetooth adapter, can't be used with Bluetooth Passthrough in any capacity.
:<sup>[10]</sup> Doesn't expose its internal Bluetooth adapter, can't be used with Bluetooth Passthrough in any capacity.
</div>
</div>
:<sup>[11]</sup> Must be modified 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].
:<sup>[12]</sup> [https://www.intel.com/content/www/us/en/support/articles/000026155/wireless.html CNVi card], must be paired with a compatible Intel CPU and chipset to work.
:<sup>[13]</sup> Supported Bluetooth version may vary depending of the chipset model paired with this card.
:<sup>[14]</sup> Proprietary 10-pin BTB connector, usually found in older laptops (2010 and earlier).
:<sup>[15]</sup> This is the Bluetooth version supported out of the box, with no drivers installed, can be upgraded/downgraded depending of the proprietary Realtek driver version installed.
:<sup>[16]</sup> Compatible only with Windows; Mac/Linux unsupported.
[[Category:Tutorials]]
[[Category:Tutorials]]