Table of Contents
Convert/Emulate Guitar for Rock Band VR
Use X360ce Instead
Rock Band VR v1.01 supports 360 guitars, it seems to not care who made it (tested with RB1 Wii guitar and a standard wireless 360 controller). In theory you don't even need this for 360 Guitar Hero controllers unless you want to remap some buttons.
- x64 xinput1_3
- Controller > Advanced
- Pass Through off
- Device Sub Type “Guitar”
- (Unnecesary?) Game Settings > rbvr.exe > PIDVID
- Fake VID “7085” (0x1BAD)
- Fake PID “2” (0x0002)
Proxy Guitar using USB/IP
The solution above is easier and safer, but if you're interested in what I was trying before the 1.01 update then read on.
ProxyGuitar is a C# program that attempts to emulate a USB/IP server that has a PS3 RB1 guitar - which it'll fill in the button data from a connected USB device (such as a Wii RB1 guitar not supported by RBVR).
Lag added shouldn't be that noticeable but the software is still being tested.
WIP attempt at a button mapping profile creator. Click the byte, click the bit then click the proxy button to map it to. Pressing buttons on the controller will light up the bytes/bits and any mapped proxy buttons.
I didn't get a chance to use the profile with the server, so it'll still be using the hard-coded Wii controller.
Source code in abandoned state: ProxyGuitar.zip
If you want to preview the code: https://github.com/Jas2o/ProxyGuitar
Includes an altered HidLibrary for faster device report reading. It has some leftover code to act as a man-in-middle with another USB/IP server (such as one running on an Android phone) in order to research how it would respond to certain USB requests.
Using
- Disable Windows 10's driver signing enforcement and install the USB/IP 2.0 Unsigned Driver from Daniel Mitchell (the signed driver unfortunately causes blue screens when HID devices disconnect).
- Original download from: https://sourceforge.net/p/usbip/discussion/418507/thread/7ff86875/?limit=50&page=2
- You can also disable the device in Device Manager before disconnecting USB/IP to avoid the blue screen when using the signed version, I toyed with making ProxyGuitar do this automatically using devcon.
- Create a USBIP folder in the same directory and unzip the USBIP 2.0 client inside.
- Connect the USB device you want to convert
- Open ProxyGuitar
- Configure the device profile if necessary.
- Start the server, it'll run USB/IP as well.
- Run Rock Band VR
Helpful Resources
- Yaron Shani's Emulating USB Devices In Python With No Additional Hardware! and USB-Emulation
- Cameron Gutman's USB/IP server for Android