-
-
Notifications
You must be signed in to change notification settings - Fork 39.8k
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
[Bug] VICE fails to register Mod-Tap keystrokes #24741
Comments
This sounds more like an issue with the software you’re using rather than with QMK. Do these problems manifest on the same machine and setup, using key tester software instead of this VICE app? |
That could well be the case, but the same problem is present in https://retroshowcase.gr/cpcbox-master/ or https://virtualconsoles.com/online-emulators/zx-spectrum/ or https://virtualconsoles.com/online-emulators/c64/ or https://archive.org/details/c64_basic You don't get press/release events with 0 ms difference between them in normal keyboards. You might be right from a theoretical viewpoint, but I guess it's easier to fix the problem here than to try to fix the world. |
If this were a far more widespread issue there would be many more reports of this stuff being problematic. Using tools such as Your suggested fix doesn’t address the root cause but rather works around it — the application layers expected to propagate the event seem to be failing. If the keyboards weren’t reporting at all then it’d be a QMK issue. I’d say this is likely a change to be made to your keymap, rather than promoting this as a default change. |
For context, a tap code delay of 40 in my keymap would result in single Unicode characters taking up to 320ms to register. Without your fix I can type as if they’re normal characters at normal typing speed even though they result in upwards of 8 different reports being sent. With your fix I’d get 3 keypresses per second — anything higher than that would mean physical keypress events being missed. In my case I’d advocate for no delay. Who takes precedence? This is a good reason why this stuff is configurable at the keymap level — different users with different use cases can tweak as they see fit. EDIT: Actually it’d be even fewer keystrokes — keydown and keyup would result in different reports. 8 “virtual” keypresses for a Unicode character would result in 16 reports, and if the delay is applied each time we’re at 640ms per character, with the entire time the matrix scanning loop not occurring. |
Describe the Bug
Missed keystrokes when running https://vice-emu.sourceforge.io/
Keyboard Used
crkbd
Link to product page (if applicable)
https://github.com/pashutk/chocofi
Operating System
Windows and NixOS
qmk doctor Output
Is AutoHotKey / Karabiner installed
Other keyboard-related software installed
No response
Additional Context
Looks like the default value for
TAP_CODE_DELAY
is too low, I defined it to 40 ms and it fixes the issue. Also tried with 20 ms but it was still missing keystrokes from time to time. Would it be a good idea to increase the default value?The text was updated successfully, but these errors were encountered: