USB Passthrough: Difference between revisions

Jump to navigation Jump to search
m
Fixed a minor spelling mistake on 'Vendor ID'
(Prefer to avoid you/your)
m (Fixed a minor spelling mistake on 'Vendor ID')
(12 intermediate revisions by 3 users not shown)
Line 1: Line 1:
Since {{revision|4.0.2}}, Dolphin has the ability to passthrough USB HID devices designed for use with Wii software. 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.
Since {{revision|4.0.2}}, Dolphin has the ability to passthrough USB HID devices designed for use with Wii software. {{revision|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 Devices and IDs ==
== List of Wii Devices and IDs ==
{|class="wikitable sortable width=100%"
{|class="wikitable sortable width=100%"
! Device !! VID !! PID !! Type !! Compatibility
! Device !! VID !! PID !! Type !! Compatibility
Line 8: Line 8:
|0E6F
|0E6F
|0129
|0129
|HID
| rowspan="2" | HID
|Supported
| rowspan="12" | Supported
|-
|-
|EA Active NFL Training Camp Dongle
|EA Active NFL Training Camp Dongle
|21A4
|21A4
|AC40
|AC40
|HID
|Supported
|-
|-
|Logitech Vantage USB Microphone
|Logitech Vantage USB Microphone
Line 21: Line 19:
|0A03
|0A03
|OH0/VEN
|OH0/VEN
|Not Supported
|-
|-
|Harmonix Guitar Controller for Nintendo Wii
|Harmonix Guitar Controller for Nintendo Wii
| rowspan="3" | 1BAD
| rowspan="3" | 1BAD
|0004
|0004
|HID
| rowspan="7" | HID
|Supported
|-
|-
|Rock Band 3 Mustang Guitar Dongle
|Rock Band 3 Mustang Guitar Dongle
|3430
|3430
|HID
|Supported
|-
|-
|Rock Band Drum Set
|Rock Band Drum Set
|3110
|3110
|HID
|Supported
|-
|-
|Skylanders Giants Portal
|Skylanders Giants Portal
| rowspan="4" | 1430
| rowspan="4" | 1430
| rowspan="3" | 0150
| rowspan="3" | 0150
|HID
| Supported
|-
|-
|Skylanders Swap Force Portal
|Skylanders Swap Force Portal
|HID
|Supported
|-
|-
|Skylanders Wireless Receiver for Wii
|Skylanders Wireless Receiver for Wii
|HID
|Supported
|-
|-
|Tony Hawk Ride Skateboard
|Tony Hawk Ride Skateboard
|0100
|0100
|HID
|Supported
|-
|-
|Wii Speak Module
|Wii Speak Module
Line 62: Line 46:
|0308
|0308
|OH0
|OH0
|Not Supported
|-
|-
|YourShape Camera
|YourShape Camera
|030A
|030A
|VEN
|VEN
|Not Supported
|-
|-
|Internal Bluetooth dongle
|Internal Bluetooth dongle
Line 75: Line 57:
|-
|-
|}
|}
Dolphin is currently unable to use any USB device which is not a HID (Human Interface Device).


== Setting up ==
== Setting up ==
=== Linux ===
=== 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.
Linux support does not require any special drivers. However, a udev rule must be created to allow access to the devices.  Note, the Vendor 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):
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.


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


2. Replace the XXXX with the appropriate Vendor and Product IDs.
2. Reload udev rules with:
<code>sudo udevadm control --reload-rules</code>
 
3. Reinsert the accessory.


3. Reload udev rules with:
=== Windows ===
<code>sudo udevadm control --reload-rules</code>
 
For users wishing to use the USB Microphone, USB Camera, or Wii Speak, it is highly recommended to use {{revision|5.0-10617}} or newer.  It contains important fixes to both libusb and Dolphin that fix crashes and fix support in devices across many games.


4. Now, reinsert the accessory. When the game is booted it should be able to access the accessory as if it were plugged into a Wii.
==== Install Dedicated Driver ====


To change the rule, links for instructions are available on the [https://github.com/libusb/libusb/wiki/FAQ#Can_I_run_libusb_applications_on_Linux_without_root_privilege libusb FAQ].
===== Single Interface Devices =====


=== Windows ===
Download and open [http://zadig.akeo.ie/ Zadig], then:
Download and open [http://zadig.akeo.ie/ Zadig], then:


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


The game will then be able to detect the device on next boot.
===== Multi Interface Devices =====
 
For Microphone, Wii Speak, and USB Camera Passthrough, installing over the composite parent device is required.
 
Download and open [http://zadig.akeo.ie/ Zadig], then:
 
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 is no longer supported nor recommended. While it provides the ability to simply install a driver without any further instructions, usbdk suffers severe instability issues.  For legacy purposes, you can still use the [https://github.com/daynix/UsbDk/releases x64 usbdk driver] in older builds.


=== macOS ===
=== macOS ===
Line 111: Line 114:
=== Android ===
=== Android ===
This feature is not supported on Android.
This feature is not supported on Android.
== Configuring Dolphin ==
In {{revision|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.


[[Category: Tutorials]]
[[Category: Tutorials]]

Navigation menu