Fix/improve debounce and latency options for keyboards
At present, the input latency setting in CORE seems to work as a latency slider, but there are still debounce issues that it doesn't seem to address. I've addressed this in great detail on Reddit (https://www.reddit.com/r/glorious/comments/r86ef7/an_update_to_my_input_latency_post_and_some/), but to summarize:
-There's really no need to have an input latency slider. No one would choose higher latency unless they had to for some reason. Instead, I would suggest a debounce time slider and a "mode" dropdown that allows you to choose between "normal" and "performance".
-Normal setting should be deferred debounce and default to 5 ms debounce time. This would match the QMK default and should ideally work just as well as QMK with the same ~10 ms input latency number.
-Performance mode uses eager debounce (possibly asymmetrical) with a 7-8 ms debounce time by default. I'd also suggest including a warning with the performance mode to let people know they might see more chatter when using it.
Comments: 2
-
03 May, '22
Glorious Engineers AdminWe are actively working on this feature; however, we want to be very careful before providing an OTA update for all of our users. We are currently experimenting with different debounce methods as well and we need to ensure that we don’t introduce a change for those users who are happy with the current performance level and have not experienced the same issues regarding debounce.
We also plan to work with our Guild members to help us test these new debounce updates once we are comfortable with the results. So stay tuned, updates on this one will be provided as they become available. -
02 Jun, '22
Glorious Engineers AdminAs of June 2nd, a firmware update has been released to address reports of chatter issues on the GMMK 2. We will look to implement a similar solution for the GMMK PRO in the near future. While these firmware updates do not address the request for configurability, we feel it's an important milestone as the new firmware represents the basis for future in-UI settings.