"I love the idea of raw input. But every device gets to format its data however it wants? That would mean for me to support every device I need to go research every device's format. Or is there some sort of init packet that describes how the data is formatted?"
His response was "No no, there's a standard. If a device identifies itself as a keyboard then there is a standard format for how to read the raw input of a keyboard. And if it's a mouse then same thing."
That would mean that somewhere I could go find the format of all the page and usage ids, right? Where could I find that?
My SpaceNavigator identifies itself as a multi-axis controller. Does that mean all multi-axis controller packets will first have a byte describing if it's sending translation/rotation/button information, then follow it with the little endian data?
And how often do things deviate? Do all multi-axis controllers have the 3rd "page" (not sure what to really call it) for buttons? Or is that a custom thing to 3DConnexion devices? Are the LEDs and displays not standard?
Thanks.
