XInput Controller, Set Configuration Response failed, Implementation Error or problem in usbstack?? #844
-
Hi. Right now I'm trying to implement a xinput controller with tinyusb on an rp2040. From what I've read about xinput and seen so far it is basically a combination of control transfer (get for input report data, set for led data and rumble) In tinyusb, I think i should be able to just use CFG_TUD_HID 1, instead of, CFG_TUD_VENDOR 1. Interestingly when dumping with Thesycon usb descriptor dumper and comparing
Doing further investigation with wireshark shows me however, that it already fails at the SetConfiguration Response stage where on the atmega32u4 however it is successful. Wireshark:
I'm basically out of ideas. I'm using https://github.com/Wiz-IO/wizio-pico |
Beta Was this translation helpful? Give feedback.
Replies: 5 comments 7 replies
-
You should definitely just be able to use CFG_TUD_HID, when I did this on the teensy I just used the standard HID functionality of the USB library. I should be able to look at this after hours today. I did document the process of creating an xbox look alike controller, if its of any help. |
Beta Was this translation helpful? Give feedback.
-
Try to get the debug log of tinyusb by setting |
Beta Was this translation helpful? Give feedback.
-
Just adding return true in usbd.c gets it to run. The descriptor shows completely inclusive string descriptor table in the usb descriptor dumper and gamepad is also shown under the game controlls app in windows 10
|
Beta Was this translation helpful? Give feedback.
-
@hathach thx for pointing me to the pico example, it was a good starting point. |
Beta Was this translation helpful? Give feedback.
-
Definitely awesome stuff. Apologize I couldn't have been of any more assistance than linking things you had already seen. Really thought I would have free time over the weekend to assist, used all my free time on work :\ Will be interesting as tinyusb host mode develops more. Would be fun to mess around with forwarding the security packets from interface 3 to the controller to facilitate console usage. Something similar to what Brandon did here, but with a single chip: https://github.com/brandonlw/USBSimulator |
Beta Was this translation helpful? Give feedback.
@hathach thx for pointing me to the pico example, it was a good starting point.
Everything is working now.
The working example can be found on my repo
https://github.com/fluffymadness/tinyusb-xinput