Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add report based HID mouse including scroll wheel support? #5

Open
simoninns opened this issue Jun 13, 2017 · 0 comments
Open

Add report based HID mouse including scroll wheel support? #5

simoninns opened this issue Jun 13, 2017 · 0 comments

Comments

@simoninns
Copy link
Owner

It should be possible to add scrollwheel support by outputting the scroll wheel quadrature between the current mouse X and Y outputs. On the Amiga (using the wheelbusmouse software in workbench) this seems to be supported by outputting the horizontal scroll wheel on X1 and Y1 and the vertical scroll wheel on X2 and Y2 (although I haven't found any clear documentation). It's not clear from the existing (Amiga) software implementations how this is done right now (so the existing drivers may not support it).

The down-side to scroll wheel support is that the firmware cannot use the (very universal) boot-protocol for communicating with the mouse and must use the full report interface instead. Some preliminary testing has shown this can be problematic since USB mice are not always really USB mice... For example the Logitech unifying receiver mice start in a standard mouse boot-protocol but do not support the standard reports-based communication (i.e. they are not really USB mice). This could be very confusing to users as certain mice may not work.

It might be possible to solve this by using a fall-back mechanism where the firmware drops back to the boot-protocol if report based enumeration fails. Needs some more experimentation to see if LUFA can be made to support such logic.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant