X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=keyboards%2Finfinity60%2Fmatrix.c;h=b6ccf86c3a74e7ab130a3aad59e7668d344e9b4c;hb=7a445d9167328df367c255ec3c64010fb040f298;hp=62c165aa5339747179f83b5be3c74f0ab0d82291;hpb=98bedbeb754f045562913c4a573e5029f2e209ed;p=qmk_firmware.git diff --git a/keyboards/infinity60/matrix.c b/keyboards/infinity60/matrix.c index 62c165aa5..b6ccf86c3 100644 --- a/keyboards/infinity60/matrix.c +++ b/keyboards/infinity60/matrix.c @@ -62,6 +62,8 @@ void matrix_init(void) #endif memset(matrix, 0, MATRIX_ROWS); memset(matrix_debouncing, 0, MATRIX_ROWS); + + matrix_init_quantum(); } uint8_t matrix_scan(void) @@ -96,7 +98,12 @@ uint8_t matrix_scan(void) } #endif - wait_us(1); // need wait to settle pin state + // need wait to settle pin state + // if you wait too short, or have a too high update rate + // the keyboard might freeze, or there might not be enough + // processing power to update the LCD screen properly. + // 20us, or two ticks at 100000Hz seems to be OK + wait_us(20); // read col data data = (palReadPort(GPIOD)>>1); @@ -141,6 +148,7 @@ uint8_t matrix_scan(void) } debouncing = false; } + matrix_scan_quantum(); return 1; }