RPCS3 / rpcs3

PlayStation 3 emulator and debugger
https://rpcs3.net/
GNU General Public License v2.0
15.67k stars 1.93k forks source link

[Feature request] usb passthrough doesn't work for guitar hero guitars #15073

Closed sanjay900 closed 10 months ago

sanjay900 commented 10 months ago

Quick summary

I've noted that passthrough works perfectly fine for rock band instruments, but not guitar hero instruments.

I tested both Rock Band 2, Guitar Hero 3 and DJ Hero, and I noted that none of the games pick up passed through guitar hero guitars, but Rock Band 2 picks up a passed through Rock Band guitar and DJ Hero picks up a passed through DJ Hero Turntable.

Details

One thing i noted was that sys_usbd_register_extra_ldd was never registering extra ldds for the guitar hero instruments. DJ Hero only calls this for the turntable, and rock band only calls this for RB Instruments.

Megamouse commented 10 months ago

That depends if the games support the guitar hero guitar on a real console. It's also depends what exact device you are trying to connect (name, VID, PID). And lastly it depends how you configured it in rpcs3. Some devices are not used per passthrough but are merely glorified controllers that you have to assign and configure in the pad window

sanjay900 commented 10 months ago

It definitely works on console, and it does work if I bind it via pad input, I was just hoping passthrough would work too since then I wouldn't have to get users of my firmware to manually bind things via pad config

Just interesting that passthrough doesn't work for them, was curious why the games wouldn't call sys_usbd_register_extra_ldd for em

[186698.292562] usb 3-11.1.1: new full-speed USB device number 107 using xhci_hcd
[186698.384498] usb 3-11.1.1: New USB device found, idVendor=12ba, idProduct=0100, bcdDevice= 1.08
[186698.384508] usb 3-11.1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[186698.384513] usb 3-11.1.1: Product: Guitar Hero4 for PlayStation (R) 3
[186698.384516] usb 3-11.1.1: Manufacturer: Licensed by Sony Computer Entertainment
Megamouse commented 10 months ago

Well. the Guitar Hero 4 controller was specifically supported by the pad api, so unless you can prove that the game uses libusb to directly talk to that specific device, you're stuck with the official pad input bindings. I don't see any other reason why it shouldn't work, as that device is whitelisted for passthrough. If that's the case, this issue can be closed.

sanjay900 commented 10 months ago

Ah i see that makes sense, ill close this issue. Did not realise it worked like that.