Rumble (Vibrations) support for HID controllers via USB
I have checked the HID_controllers.h and HID.c, I found that Nintendont should support rumble for those HID controllers via USB with a default (VID:PID)
- Nintendo Wii U GameCube Controller Adapter (057E:0337)
- DualShock 3 (054C:0268)
- Generic USB Gamepad (0079:0006)
- PS2 Controller (0810:0001) And there is a ini file in controllerconfigs, using the same Rumble data with (0810:0001)
- Gravis Eliminator AfterShock (047D:4006)
Unfortunately I don't have these devices to test if Rumble works on Nintendont for HID controllers via USB .
What I want to confirm that:
- Does nintendont support rumble for any HID controller via USB theoretically? (if I have this data that can make the device rumble)
- How do I get those data via my controller? (e.g. through HIDAPI)
- How do I know which RumbleType I need to select? (I didn't understand the difference between HIDCTRLRumble and HIDIRQRumble)
yes dualshock 3 and wiiugc adapter do rumble through usb, those rumbles are hardcoded in nintendont itself, fix94 made rumble be available through the ini but i dont think anyone ever figured out how he got those values for the generic usb gamepad, so no idea, if anyone ever figures out how fix94 got those values i would be interested too.
Hi, @carnage702 , do you know how to send an Output Report to HID via USB by Nintendont?
I get the DS4 rumble Output Report from https://github.com/TheBITLINK/WebHID-DS4/blob/585ca5ae76058e5f85473fcce2b63582d01f2292/src/index.ts
And try to use it with void HIDCTRLRumble(u32 Enable) , but it doesn't work on my DS4.
I think I have misunderstood how to convert rumble output report to the Rumble values using in Nintendont.
It was difficult for me to read the underlying with C.
Hi, @carnage702 , do you know how to send an Output Report to HID via USB by Nintendont? I get the DS4 rumble Output Report from https://github.com/TheBITLINK/WebHID-DS4/blob/585ca5ae76058e5f85473fcce2b63582d01f2292/src/index.ts And try to use it with
void HIDCTRLRumble(u32 Enable), but it doesn't work on my DS4. I think I have misunderstood how to convert rumble output report to the Rumble values using in Nintendont. It was difficult for me to read the underlying with C.
i have no idea how to convert it, the only person that did it was fix94 himself so i dont think anyone knows how to actually use the rumble hid stuff on the ini.