inputlabs / alpakka_firmware

GNU General Public License v2.0
115 stars 26 forks source link

Raw Protocol #149

Open przymi opened 2 weeks ago

przymi commented 2 weeks ago

Directly expose USB HID

Mapping could be done e.g. by reWASD

marcos-diaz commented 2 weeks ago

There are several ways to implement this:

AndyDevLat commented 2 weeks ago

I guess adding missing stuff to the generic HID gamepad interface would be fastest to do, but then all buttons and axes must be raw, i.e. not depend on any onboard profile, in order to avoid conflict with 3rd party mappers and to provide best user experience. Basically, you can leave it as is for compatibility with your current design, but just duplicate all raw buttons, axes and IMU at the tail of this report as Const array so it will be ignored by standard OS HID parser, but 3rd party apps like reWASD will read them from report directly by offset. It is also desirable not to add keyboard/mouse it this case, because 3rd party mappers should be able to emulate keyboard/mouse from raw gamepad input on their own.