OpenJoyPad HID USB Specification
This article details a USB HID specification that can be implemented across gamepads to allow configuration of many gamepads with one application.
These are sent from the device (Gamepad) to the host.
Gamepad input report
Reserved (Maybe future motion controls?)
These are sent from the host to the device (Gamepad).
Request Configuration Report