From 6d2a4e0f23e6c59d43f96c2850c451fd293b9f61 Mon Sep 17 00:00:00 2001 From: Jacob Alexander Date: Sun, 7 Aug 2016 17:40:30 -0700 Subject: [PATCH] Adding StrobeDelay KLL option to fix problemmatic keyboards - Almost never needed - However, some keyboards exhibit odd strobing behaviours (pressing two keys at once with a single key) - Setting to around 10 us tends to fix the issue --- Scan/MatrixARM/capabilities.kll | 7 +++++++ Scan/MatrixARM/matrix_scan.c | 4 ++++ 2 files changed, 11 insertions(+) diff --git a/Scan/MatrixARM/capabilities.kll b/Scan/MatrixARM/capabilities.kll index fe0192d..f80d890 100644 --- a/Scan/MatrixARM/capabilities.kll +++ b/Scan/MatrixARM/capabilities.kll @@ -39,3 +39,10 @@ DebounceThrottleDiv = 0; # Default MinDebounceTime => MinDebounceTime_define; MinDebounceTime = 5; # 5 ms +# This option delays each strobe by the given number of microseconds +# By default this should *NOT* be set unless your keyboard is having issues +# Delaying more than 10 usecs may cause significant slow-downs with other keyboard functions +StrobeDelay => StrobeDelay_define; +StrobeDelay = 0; # Disabled +#StrobeDelay = 10; # 10 us + diff --git a/Scan/MatrixARM/matrix_scan.c b/Scan/MatrixARM/matrix_scan.c index cb5409e..f628077 100644 --- a/Scan/MatrixARM/matrix_scan.c +++ b/Scan/MatrixARM/matrix_scan.c @@ -46,6 +46,10 @@ nat_ptr_t Matrix_divCounter = 0; #endif +#if StrobeDelay_define > 0 && !defined( STROBE_DELAY ) +#define STROBE_DELAY StrobeDelay_define +#endif + // ----- Function Declarations -----