-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add IDs for various devices #27
base: trunk
Are you sure you want to change the base?
Conversation
You might be the missing link we've needed all these years. :) I can cut a beta with these IDs this weekend. If I don't get to it by Sunday evening please feel free to poke here and remind me. I own none of these accessories so it's on you or others to test, but I am very happy to include the device IDs if it enables these devices for others. Do any of these require USB power config things? IIRC the work I did for the Skylanders portal some years back needed it, but that might just be a quirk of that particular device. |
https://github.com/TheNathannator/PlasticBand/tree/main/Docs/Instruments |
I don't think they require any power configs, i know the portals are a bit special in general so it wouldn't surprise me to find out they are different |
Since i was working on this stuff for RPCS3, ive just added a bunch of IDs it supports |
@ryanmcgrath did you get a chance to cut a release with the IDs? |
https://secretkeys.io/gcadapterdriver/GCAdapterDriver-1.8-beta.app.zip There's a beta here you can try. The delay was partly my life, and partly having to remember how the hell the entire signing/notarizing/etc chain works for drivers. (Of note, I don't mind doing this for the DriverKit extension. I'm at the moment less enthused about supporting anything pre-1.015 via kext, because that side of driver shipping is even more byzantine to remember how to do it.) |
Its all good, i only really care about driverkit myself, so we are both in agreement there! No worries about the delay, i totally understand |
Just tested with a PS3 Rock Band guitar and that is working, ill get more things tested that i can. |
Ha, happy to help. :) Question: are the |
Yeah, and the ones with wii in the name are wii specific |
the only one thats a bit special is |
had the thought to do a quick skim through dolphins whitelist and noted id missed the wii ride controller, so ive just added that |
<key>idVendor</key> | ||
<integer>3695</integer> | ||
</dict> | ||
<key>rlff-c283-c29b-ps3</key> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
<key>rlff-c283-c29b-ps3</key> | |
<key>lgff-c283-c29b-ps3</key> |
On ps3/rpcs3 this filter covers the entire range between 046D:c283 and 046D:c29b, while here you cover a single device (C283) which is a rare flight sim joystick from ps2 era.
I'm adding the entire list below:
c283-c29b
- 046D:C283 - Logitech WingMan Force 3D
- 046D:C285 - Logitech WingMan Strike Force 3D
- 046D:C286 - Logitech Force 3D Pro
- 046D:C287 - Logitech Flight System G940
- 046D:C291 - Logitech WingMan Formula Force
- 046D:C293 - Logitech WingMan Formula Force GP / GT Force
- 046D:C294 - Logitech Driving Force
- 046D:C295 - Logitech Momo Force
- 046D:C298 - Logitech Driving Force Pro
- 046D:C299 - Logitech G25
- 046D:C29A - Logitech Driving Force GT
- 046D:C29B - Logitech G27
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The latest version still doesn't cover the steering wheels. Maybe something like this:
<key>idProduct</key>
<integer>49792</integer> <!-- 0xC280 -->
<key>idProductMask</key>
<integer>65504</integer> <!-- 0xFFE0 -->
or
<key>idProductArray</key>
<array>
<integer>49795</integer> <!-- 0xC283 Logitech WingMan Force 3D -->
<integer>49797</integer> <!-- 0xC285 Logitech WingMan Strike Force 3D -->
<integer>49798</integer> <!-- 0xC286 Logitech Force 3D Pro -->
<integer>49799</integer> <!-- 0xC287 Logitech Flight System G940 -->
<integer>49809</integer> <!-- 0xC291 Logitech WingMan Formula Force -->
<integer>49811</integer> <!-- 0xC293 Logitech WingMan Formula Force GP / GT Force -->
<integer>49812</integer> <!-- 0xC294 Logitech Driving Force -->
<integer>49813</integer> <!-- 0xC295 Logitech Momo Force -->
<integer>49816</integer> <!-- 0xC298 Logitech Driving Force Pro -->
<integer>49817</integer> <!-- 0xC299 Logitech G25 -->
<integer>49818</integer> <!-- 0xC29A Logitech Driving Force GT -->
<integer>49819</integer> <!-- 0xC29B Logitech G27 -->
</array>
but I haven't tested any of them.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmmm, game-specific devices (Rock Band etc) are one thing but I'm not sure about having Logitech device IDs included in here. I'll mull this one over before merging.
Co-authored-by: Florin9doi <[email protected]>
Co-authored-by: Florin9doi <[email protected]>
@Florin9doi i assume we can only do matching here based on usb attributes right? I assume hid attributes are off the table? If they aren't we could generically match any PS controller since they all have the following specified in their HID reports:
Portals do NOT count here, since they aren't classified as controllers so all this stuff is missing from them but every actual controller out there should have it specified. |
Should be possible with a different IOProviderClass: https://github.com/search?q=IOHIDInterface+DeviceUsage+DeviceUsagePage&type=code |
Yeah, just wasn't sure if things would still work correctly if we did that |
I have done a lot of work on emulating all these in hardware, so I have a list handy of all the VIDs and PIDs for them
Is this all we need to add to make these supported?
Closes #5
Closes #26