-
Notifications
You must be signed in to change notification settings - Fork 61
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
Tapkeys Too Slow for Regular Touch Typing #11
Comments
Thanks for reporting the issue. It is a bug. I will fix it soon.
|
@CVYY39 Could you test it again with the latest
|
I reverted my code.py to the one from the repo and followed the steps you listed. It looks like it is improved but not resolved completely. It previously happened 100% of the time, now it is more like 10-20%. |
Are you able to distinguish the difference?
The default debounce time is about 15 milliseconds. |
It's not hard to see it still happening, unfortunately. Here are a strings of "vb" and "sd" typed repeatedly: v v vb vb vb vb vb vb vb vb vb vb vb vb v vb vb vb vb vb v v vb vb vb vb vb vb vb vb vb vb v You can see it's dropping the b and d quite a bit. For comparison, here is "rt" typed exactly the same way with TapKeys enabled: rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt rt It doesn't drop a single one. Here is "sd" with the TapKeys disabled: sd sd sd sd sd sd sd sd sd sd sd sd sd sd sd sd sd sd sd sd sd sd sd sd sd sd sd sd sd sd sd sd sd Not a single one missed. In practice, it only seems to drop characters occasionally in normal typing with TapKeys enabled (i.e., when I'm not trying to trigger it) but that is really still too often. I mean, it's probably dropping them more often than my old Macbook Pro, and that was enough to cause Apple to recall the keyboard. |
How do you type space? Typing like the following sequence will likely lose d.
You can use other keys as the tap-keys. Maybe replace d with capslock and replace b with menu |
Yeah, that is what I did. I've always used Capslock that way anyway on other keyboards anyway. I just wanted to flag the issue, because I'm sure others who get the board will notice the dropped keys over time. I don't think I'm pressing space before I release b / d. But even if so, I've never noticed any similar problems on other keyboards. |
If you use d as a tap-key on other keyboards, do they have the same issue? For example, replace def is_tapping_key(self, key):
matrix = self.matrix
n = len(matrix)
if n == 0:
n = matrix.wait(
self.tap_delay - matrix.ms(matrix.time() - matrix.get_keydown_time(key))
)
if n >= 1:
return True
return False python-keyboard/keyboard/__init__.py Lines 250 to 284 in e39c618
|
Hm with these latest commits I am getting bad experience when doing keybindings with the tap key and it thinking that I am typing 2 keys. Is there a nob for this new feature that I could tweak to get back to the original behavior or dial in the parameters to match my typing style? |
Also I was experiencing the same issue that you are describing @CVYY39 which is why i added the ability to adjust the tap delay and the fast typing threshold using the keyboard.tap_delay = 200
keyboard.fast_type_thresh = 100 in my |
I just created a branch named |
@mehalter Have you tried to reduce the The default debounce time is about 15 milliseconds, It may be too long. We can change it to:
|
With the debug branch, the problem only seems to occur with small words like "ad, "ab," or "cab," at least so far. I mainly only see the issue when I'm trying to trigger it. How do I pull the logs that you mentioned? |
@CVYY39 You can see the logs by reading the serial output of the keyboard while having it connected via USB. I found it by looking through |
@xiongyihui reducing the |
@mehalter Wow! Your typing speed is fast. Maybe we should set the default |
I have also experienced tap-keys being a bit problematic when I type really, really fast. |
@CGMossa Does changing In
|
I'm still having issues.. |
Out of the box, the first thing I noticed is that the d, b, and ; keys had issues. Typing "dead dead dead" at quick-ish speed (I'm no speed demon) comes out as "dea dea dea" 100% of the time. I tried each of the other keys, and noticed the same behavior with b and ;.
Reading the docs, I saw that these are intended to function as "tapkeys." That sounds great in theory, but as-is they are far too slow for regular typing.
I resolved this for myself by disabling the tap keys in the code.py configuration file. But it looks like the tapkeys feature needs some more testing with regular touch typists.
The text was updated successfully, but these errors were encountered: