Keyboard Add-on: Mouse Inputs interrupt keyboard input.
Please read these quoted sections before submitting, and remove them (including this one) when you have provided what is asked, in order to make addressing the issue easier for everyone. Thank you!
Be sure to:
- Confirm the feature does not exist in the latest version of the firmware, found HERE.
The problem I am describing is only on the compiled version of the master branch, this report is only to notify of a bug in an upcoming release (I pressume) relating to using mouse input as a joystick input.
Problem
Which problem is this feature request solving?
Provide a clear and concise description of what the problem is. For example, "I'm always frustrated when..."
When using Left Joystick (mapped to WASD) and Right Joystick (mapped to Mouse Input). Mouse input interrupts WASD joystick as a complete reset to 0,0. Requires WASD re-pressing to resume untill interrupted again.
Solution
Describe the solution you would like to see
Provide a clear and concise description of what you want to happen. Let us know about other solutions you've tried or researched.
In order to use Mouse/Keyboard on as an example, Splatoon on Switch, the right joystick (mouse input) must not interrupt and reset the WASD keypress.
Do you plan to work on this feature yourself?
Beyond a simple yes or no, we are also willing to help with partial solutions or to refine a proof of concept, if you are able to contribute.
I will try to triage and find why this behavior is happening, but I do not know how much time I can devote to it. Otherwise, this feature would allow mouse/keyboard on many controler only FPS-like games.
Interesting! Thanks for reporting and testing. I did a quick fix here that i think is the issue: https://github.com/Pelsin/GP2040-CE/actions/runs/18512435590 Haven't verified on a device yet, and can't do it until tomorrow.
I just tested it, and it doesn't seem to have fixed it, although I don't know if I have to do something else? I just flashed the uf2 file, from the linked run. Should I maybe cherry-pick the commit and see if that works, I honestly don't really know why it's resetting.
Thanks for your superfast reply tho.
Edit:
It was: KeyboardHostListener::preprocess_report()
I removed it from: process_mouse_report()
I can see the preprocess_report() needed for keyboard presses, but unsure if needed for mouse events, perhaps if buttons are mapped to mouse buttons... I'll see what I can do untill a proper fix is implemented, but at the very least the problem has been identified to a very specific function.