USB Passthrough: Difference between revisions

From Dolphin Emulator Wiki
Jump to navigation Jump to search
(→‎Configuring Dolphin: modified this so it's more clear why it needs to be done. I hope this is more clear.)
(→‎Uninstalling Dedicated Driver: Fixed this. My bad on not noticing this earlier.)
Line 117: Line 117:
==== Uninstalling Dedicated Driver ====
==== Uninstalling Dedicated Driver ====


If for some reason you wish to restore the default driver to the device, open up "Device Manager."  In the last, expand "Universal Serial Bus Devices" and find the device you wish to restore.  Uninstall the device, then unplug the device and plug it back in.  It will now be restored to its original state.
If for some reason you wish to restore the default driver to the device, open up "Device Manager."  In the last, expand "libusbK devices" and find the device you wish to restore.  Uninstall the device, then unplug the device and plug it back in.  It will now be restored to its original state.
 
If you were using the WinUSB driver, the device will be located under "Universal Serial Bus Devices" instead, but the instructions are identical otherwise.


==== usbdk driver ====
==== usbdk driver ====

Revision as of 13:16, 29 May 2019

Since 4.0.2, Dolphin has the ability to passthrough USB HID devices designed for use with Wii software. 5.0-2352 enables USB passthrough for all devices. This gives emulated Wii software full control of a hardware device connected to your PC. This is very useful for devices not currently emulated by Dolphin and games that highly depend on extra hardware.

List of Wii Devices and IDs

Device VID PID Type Compatibility
Disney Infinity Reader (Portal Device) 0E6F 0129 HID Supported
EA Active NFL Training Camp Dongle 21A4 AC40 HID Supported
Logitech Vantage USB Microphone 046D 0A03 OH0/VEN Supported
Harmonix Guitar Controller for Nintendo Wii 1BAD 0004 HID Supported
Rock Band 3 Mustang Guitar Dongle 3430 HID Supported
Rock Band Drum Set 3110 HID Supported
Skylanders Giants Portal 1430 0150 HID Supported
Skylanders Swap Force Portal HID Supported
Skylanders Wireless Receiver for Wii HID Supported
Tony Hawk Ride Skateboard 0100 HID Supported
Wii Speak Module 057E 0308 OH0 Supported
YourShape Camera 030A VEN Supported
Internal Bluetooth dongle 0305 OH1 See Bluetooth Passthrough

Setting up

Linux

Linux support does not require any special drivers. However, a udev rule must be created to allow access to the devices. Note, the Vender ID and Product ID SHOULD be verified from the device itself before creating the rule.

1. Paste the following into /etc/udev/rules.d/52-dolphin.rules (/lib/udev/rules.d/52-dolphin.rules if making a package). Do not forget to replace the XXXX with the appropriate Vendor and Product IDs.

SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="XXXX", ATTRS{idProduct}=="XXXX", MODE="0666"

2. Reload udev rules with: sudo udevadm control --reload-rules

3. Reinsert the accessory.

Windows

For users wishing to use the USB Microphone, USB Camera, or Wii Speak, it is highly recommended to use 5.0-10344 or newer. It contains important fixes to both libusb and Dolphin that fix crashes and fix support in devices across many games.

Install Dedicated Driver

Single Interface Devices

Download and open Zadig, then:

1. In the "Options" menu in Zadig, make sure "List All Devices" is enabled.

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

3. On the right column, select "libusbk" then click "Replace Driver". Select "Yes" to modify the system driver.

Multi Interface Devices

For Microphone, Wii Speak, and USB Camera Passthrough, installing over the composite parent device is required.

1. In the "Options" menu in Zadig, make sure "List All Devices" is enabled and "Ignore Hubs or Composite Parents" is disabled.

2. Look through the composite parent of the device you wish to passthrough.

3. On the right column, select "libusbk" then click "Replace Driver". It may warn you that you're modifying a kernel driver, but, this is normal. Select "Yes" to modify the kernel driver.

Uninstalling Dedicated Driver

If for some reason you wish to restore the default driver to the device, open up "Device Manager." In the last, expand "libusbK devices" and find the device you wish to restore. Uninstall the device, then unplug the device and plug it back in. It will now be restored to its original state.

If you were using the WinUSB driver, the device will be located under "Universal Serial Bus Devices" instead, but the instructions are identical otherwise.

usbdk driver

usbdk provides the ability to simply install a driver and it will handle the rest. Despite being easier to use, usbdk is not recommended due to instability issues. Regardless, Dolphin still supports using the latest x64 usbdk driver.

macOS

While this can be done in macOS, there is currently no easy to use guide for it. A modified variant of the Native GameCube Adapter for Wii U guide should work, but what needs to be changed is not immediately apparent.

Android

This feature is not supported on Android.

Configuring Dolphin

In 5.0-2352, an additional step was added for USB Passthrough. Because some devices being plugged into your computer can potentially hang or crash a game, you now must whitelist the emulated Wii so it can access this device. This is not required for Bluetooth Passthrough.

Guide to Whitelist a USB Device in Dolphin

1. Open Dolphin's configuration dialog.

2. Click on the Wii tab.

3. In the "Whitelisted USB passthrough devices", click on the "Add..." button.

4. Select the device you wish to passthrough.