diff options
Diffstat (limited to 'keyboards/gmmk/pro/rev1')
-rw-r--r-- | keyboards/gmmk/pro/rev1/ansi/keymaps/andrebrait/rules.mk | 19 | ||||
-rw-r--r-- | keyboards/gmmk/pro/rev1/ansi/keymaps/coryginsberg/keymap.c | 4 |
2 files changed, 21 insertions, 2 deletions
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/andrebrait/rules.mk b/keyboards/gmmk/pro/rev1/ansi/keymaps/andrebrait/rules.mk index 8983ba87c3..d5942a2e90 100644 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/andrebrait/rules.mk +++ b/keyboards/gmmk/pro/rev1/ansi/keymaps/andrebrait/rules.mk @@ -2,3 +2,22 @@ # Disabling MouseKey because it breaks my KVM switch MOUSEKEY_ENABLE = no + +# Cherry MX-style switches and diodes are not susceptible to noise, no need for noise-resistant algorithms. +# This significantly reduces latency. +# +# The matrix scan frequency seems to be around 1820 Hz, so even sym_defer_g would perform ok, +# but the "defer" part would mean we would wait DEBOUNCE ms before sending any events. +# Using "asym_eager_defer_pk" does not seem to benefit us in anything. +# The GMMK Pro has more then enough system resources for a per-key algorithm. +# Using an "eager" algorithm leads to extremely low latency while also reducing the chances of chattering +# due to it's "post-event" debouncing (of sorts). +# +# I have observed zero chattering or double-keypress issues on my Gateron Yellow switches. +# Most chattering issues on the GMMK Pro seem to be related to its proprietary hot-swap sockets anyway. +DEBOUNCE_TYPE = sym_eager_pk + +# Useful for debugging +# CONSOLE_ENABLE = yes +# DEBUG_MATRIX_SCAN_RATE_ENABLE = yes +# DEBUG_MATRIX_SCAN_RATE = yes diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/coryginsberg/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/coryginsberg/keymap.c index b71d18d481..49e2050ea0 100644 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/coryginsberg/keymap.c +++ b/keyboards/gmmk/pro/rev1/ansi/keymaps/coryginsberg/keymap.c @@ -17,7 +17,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #include QMK_KEYBOARD_H -void dance_media(qk_tap_dance_state_t *state, void *user_data) { +void dance_media(tap_dance_state_t *state, void *user_data) { if (state->count == 1) { tap_code(KC_MPLY); } else if (state->count == 2) { @@ -29,7 +29,7 @@ void dance_media(qk_tap_dance_state_t *state, void *user_data) { } } -qk_tap_dance_action_t tap_dance_actions[] = { +tap_dance_action_t tap_dance_actions[] = { // Tap once for shift, twice for Caps Lock [0] = ACTION_TAP_DANCE_DOUBLE(KC_LSFT, KC_CAPS), [1] = ACTION_TAP_DANCE_FN(dance_media)}; |