~ruther/qmk_firmware

cfb4bb9b98dccd12132b784a6656ddefdb524728 — Moritz Plattner 1 year, 9 months ago ab1e851
teleport/native: switch from wrongly used user to kb function, boost matrix scan rate (#21172)

* enable LTO

* change from _user to _kb function

* switch matrix io delay to nops, add opt=3 for higher scan rates

* disable console which was enabled for testing but collides with endpoint used by VIA

* switched from opt=3 to opt=2

* Update keyboards/teleport/native/native.c

Co-authored-by: Joel Challis <git@zvecr.com>

* slightly upped debounce, as some testers had chatter with async + default debounce

---------

Co-authored-by: Joel Challis <git@zvecr.com>
M keyboards/teleport/native/ansi/keymaps/perfmode/config.h => keyboards/teleport/native/ansi/keymaps/perfmode/config.h +4 -1
@@ 20,4 20,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

/* Increase eeprom size to allow for 5 layers */
#define WEAR_LEVELING_BACKING_SIZE 16384
#define WEAR_LEVELING_LOGICAL_SIZE 4096
\ No newline at end of file
#define WEAR_LEVELING_LOGICAL_SIZE 4096

/* Increase debounce, as asym eager seems to lead to chatter with the fast polling rate in some cases */
#define DEBOUNCE 7
\ No newline at end of file

M keyboards/teleport/native/ansi/keymaps/perfmode/keymap.c => keyboards/teleport/native/ansi/keymaps/perfmode/keymap.c +3 -0
@@ 15,6 15,9 @@
 */
#include QMK_KEYBOARD_H

// tested and working
void matrix_io_delay(void) { __asm__ volatile("nop\nnop\nnop\n"); }

enum layers{
    BASE,
    GAME,

M keyboards/teleport/native/ansi/keymaps/perfmode/rules.mk => keyboards/teleport/native/ansi/keymaps/perfmode/rules.mk +1 -0
@@ 1,4 1,5 @@
DEBOUNCE_TYPE = asym_eager_defer_pk 
OPT = 2

VIA_ENABLE = yes
 
\ No newline at end of file

M keyboards/teleport/native/info.json => keyboards/teleport/native/info.json +2 -1
@@ 19,7 19,8 @@
        "console": false,
        "extrakey": true,
        "mousekey": true,
        "nkro": true
        "nkro": true,
        "lto": true
    },
    "diode_direction": "ROW2COL",
    "matrix_pins": {

M keyboards/teleport/native/iso/keymaps/perfmode/config.h => keyboards/teleport/native/iso/keymaps/perfmode/config.h +4 -1
@@ 20,4 20,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

/* Increase eeprom size to allow for 5 layers */
#define WEAR_LEVELING_BACKING_SIZE 16384
#define WEAR_LEVELING_LOGICAL_SIZE 4096
\ No newline at end of file
#define WEAR_LEVELING_LOGICAL_SIZE 4096

/* Increase debounce, as asym eager seems to lead to chatter with the fast polling rate in some cases */
#define DEBOUNCE 7
\ No newline at end of file

M keyboards/teleport/native/iso/keymaps/perfmode/keymap.c => keyboards/teleport/native/iso/keymaps/perfmode/keymap.c +3 -0
@@ 15,6 15,9 @@
 */
#include QMK_KEYBOARD_H

// tested and working
void matrix_io_delay(void) { __asm__ volatile("nop\nnop\nnop\n"); }

enum layers{
    BASE,
    GAME,

M keyboards/teleport/native/iso/keymaps/perfmode/rules.mk => keyboards/teleport/native/iso/keymaps/perfmode/rules.mk +1 -0
@@ 1,4 1,5 @@
DEBOUNCE_TYPE = asym_eager_defer_pk 
OPT = 2

VIA_ENABLE = yes
 
\ No newline at end of file

M keyboards/teleport/native/native.c => keyboards/teleport/native/native.c +3 -1
@@ 17,9 17,11 @@
#include "quantum.h"

/* This board has !SDB of the is31 wired to D2. Set high to enable */
void keyboard_post_init_user(void) {
void keyboard_post_init_kb(void) {
    setPinOutput(B9);
    writePinHigh(B9);
    
    keyboard_post_init_user();
}

#ifdef RGB_MATRIX_ENABLE

Do not follow this link