From c06e2486abda43205a490fc6b233f72f34667857 Mon Sep 17 00:00:00 2001 From: Fred Sundvik Date: Sat, 5 Nov 2016 22:45:21 +0200 Subject: Increase the infinity60 system tick frequency --- keyboards/infinity60/chconf.h | 2 +- keyboards/infinity60/matrix.c | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) (limited to 'keyboards/infinity60') diff --git a/keyboards/infinity60/chconf.h b/keyboards/infinity60/chconf.h index 43c845739a..d9114ec858 100644 --- a/keyboards/infinity60/chconf.h +++ b/keyboards/infinity60/chconf.h @@ -48,7 +48,7 @@ * @details Frequency of the system timer that drives the system ticks. This * setting also defines the system tick time unit. */ -#define CH_CFG_ST_FREQUENCY 1000 +#define CH_CFG_ST_FREQUENCY 100000 /** * @brief Time delta constant for the tick-less mode. diff --git a/keyboards/infinity60/matrix.c b/keyboards/infinity60/matrix.c index 62c165aa53..d2f1852885 100644 --- a/keyboards/infinity60/matrix.c +++ b/keyboards/infinity60/matrix.c @@ -96,7 +96,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); -- cgit v1.2.3 From a777495683128fc56aa2d0081f27ff4c5c86d219 Mon Sep 17 00:00:00 2001 From: SjB Date: Mon, 23 Jan 2017 22:01:33 -0500 Subject: fix: infinity60 keyboard was not using quantum features. the quantum matrix codes where not being initialized or/and called so no feature of the quantum firmware could be used. These codes have been added and now we can enjoy the quantum firmware goodness. --- keyboards/infinity60/infinity60.c | 15 +++++++++++++++ keyboards/infinity60/matrix.c | 3 +++ 2 files changed, 18 insertions(+) (limited to 'keyboards/infinity60') diff --git a/keyboards/infinity60/infinity60.c b/keyboards/infinity60/infinity60.c index e471250feb..fdeed5124d 100644 --- a/keyboards/infinity60/infinity60.c +++ b/keyboards/infinity60/infinity60.c @@ -15,3 +15,18 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ #include "infinity60.h" + +void matrix_init_kb(void) { + // put your keyboard start-up code here + // runs once when the firmware starts up + + matrix_init_user(); +} + +void matrix_scan_kb(void) { + // put your looping keyboard code here + // runs every cycle (a lot) + + matrix_scan_user(); +} + diff --git a/keyboards/infinity60/matrix.c b/keyboards/infinity60/matrix.c index d2f1852885..b6ccf86c3a 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) @@ -146,6 +148,7 @@ uint8_t matrix_scan(void) } debouncing = false; } + matrix_scan_quantum(); return 1; } -- cgit v1.2.3 From 9111cc00f587188c68d3ed0379aae6675ad8d377 Mon Sep 17 00:00:00 2001 From: SjB Date: Tue, 24 Jan 2017 00:24:01 -0500 Subject: updated all the other keymaps to support the new changes. qmk firmware requires the matrix_init_user and matrix_scan_user function to be implementated. Added these function to all the existing keymaps. --- keyboards/infinity60/keymaps/default/keymap.c | 9 +++++++++ keyboards/infinity60/keymaps/depariel/keymap.c | 9 +++++++++ keyboards/infinity60/keymaps/hasu/keymap.c | 10 ++++++++++ 3 files changed, 28 insertions(+) (limited to 'keyboards/infinity60') diff --git a/keyboards/infinity60/keymaps/default/keymap.c b/keyboards/infinity60/keymaps/default/keymap.c index 4434128579..8347c94b48 100644 --- a/keyboards/infinity60/keymaps/default/keymap.c +++ b/keyboards/infinity60/keymaps/default/keymap.c @@ -46,3 +46,12 @@ const uint16_t fn_actions[] = { }; +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + +}; diff --git a/keyboards/infinity60/keymaps/depariel/keymap.c b/keyboards/infinity60/keymaps/depariel/keymap.c index 7412b9b9dd..57f9487f22 100755 --- a/keyboards/infinity60/keymaps/depariel/keymap.c +++ b/keyboards/infinity60/keymaps/depariel/keymap.c @@ -80,3 +80,12 @@ const uint16_t PROGMEM fn_actions[] = { }; +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + +}; diff --git a/keyboards/infinity60/keymaps/hasu/keymap.c b/keyboards/infinity60/keymaps/hasu/keymap.c index d3728869ab..9982078c19 100644 --- a/keyboards/infinity60/keymaps/hasu/keymap.c +++ b/keyboards/infinity60/keymaps/hasu/keymap.c @@ -111,3 +111,13 @@ const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { const uint16_t fn_actions[] = { }; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + +}; -- cgit v1.2.3