libretro / dolphin

Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.
https://dolphin-emu.org/
GNU General Public License v2.0
84 stars 67 forks source link

Implement Bluetooth Passthrough with libusbK support #111

Open BParks21 opened 5 years ago

BParks21 commented 5 years ago

Would be nice to be able to use the libusbK driver so we can get native wiimote support bypassing the windows bluetooth stack like upstream dolphin.

flyinghead commented 5 years ago

Bluetooth passthrough is already available. See https://github.com/libretro/dolphin/pull/82. Real wiimotes are fully supported.

USB passthrough, however, is not.

BParks21 commented 5 years ago

The adapter I have which has libusbK installed to it is not detected in libretro dolphin. Works fine in upstream. Can be paired and all pairings are remembered. Upstream dolphin requires a sync button press like on real hardware to put it into sync mode. For passthrough you cannot sync a wiimote the same way the emulated bluetooth works with simply leaving continuous scanning on. You either need to assign a hotkey or press the sync button option in dolphins gui. So it's either implemented and theres no way to actually use it or it's not implemented. The adapter i use is listed on the dolphin bluetooth wiki and confirmed to be compatible. It's the Sena UD100 http://www.senanetworks.com/ud100-g03.html?sc=14&category=3968 https://wiki.dolphin-emu.org/index.php?title=Bluetooth_Passthrough

I'm not talking about usb passthrough. Real Wiimote and bluetooth passthrough are 2 completely different things. The "Real Wiimote" option is using the Windows bluetooth stack. Bluetooth passthrough does not and this is why the two are separated within dolphin. If you sync a real physical wiimote in retroach it will remain on when closing the game. This is the behavior of the emulated bluetooth feature in dolphin which allows the real physical wiimote to sync. However this is using Windows bluetooth stack. Bluetooth passthrough is not emulating the wii bluetooth dongle it is bypassing the windows bluetooth stack. The behavior of bluetooth passthrough is requiring the real wii sync process by replicating pressing the wii systems sync button on the console. If passthrough is actually being used by the dolphin core the wiimotes would shut down when the emulated game is being closed. Replicating turning off the console, hence wiimotes shutdown.

Note: For any future readers on this issue please read these pages before commenting https://dolphin-emu.org/blog/2016/10/24/bluetooth-passthrough/ https://wiki.dolphin-emu.org/index.php?title=Bluetooth_Passthrough