arpruss / USBComposite_stm32f1

USB Composite library for STM32F1 (HID, Serial, MIDI and XBox360 controller)
Other
381 stars 76 forks source link

USBXBox360 not working with XBox 360 #98

Closed Allexin closed 3 years ago

Allexin commented 3 years ago

I am use USBXBox360 to emulate XInput gamepad. It works fine on PC(Windows) But when i try to use it with XBox 360 console - i am failed: console ignore my input. Is it normal? How can i fix it?

arpruss commented 3 years ago

Well, it's not a real XBox controller. For instance, it doesn't support the built-in mic. So I am not surprised that a console is more picky.

Allexin commented 3 years ago

Maybe you can route me to the right direction: i want to create USB Proxy device for gamepad. I connect my device between console and real gamepad and just want to add little modfication to input. please, if you can, provide some information how i can do it.

At this moment i read input from real gamepad and send it to emulated gamepad. But as i say - its not working. if I could send data throught instead of emulating - problem will gone. But at this moment i do not know how to do it... Maybe something like USB.readRaw USB.writeRaw?

arpruss commented 3 years ago

You need a microcontroller that does both USB host and USB device. This one only does USB device.

Allexin commented 3 years ago

I am use MAX3421E usb host controller connected to STM32. I think its offtop, so i am close issue. Thank you for you work.

Allexin commented 3 years ago

Its not working because XBox360 check decive compatibility through crypto requests. Its name "Xbox Security Method 3" I am newbie in so low coding. I found protocol specification. I want to resend cyprto requests from console to original gamepad. But for this i must know when this requests is received by stm32. How i can intercept this requests from USBComposite?