From ce4f342ceb64d0e1083bc4275796eae5df85322f Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sat, 16 May 2026 02:27:19 +0100 Subject: [PATCH] Remove FORCE_NKRO (#26206) --- data/mappings/info_config.hjson | 2 +- docs/getting_started_make_guide.md | 2 +- keyboards/adkb96/keymaps/default/config.h | 25 ------------------- keyboards/adkb96/rev1/keyboard.json | 5 ++++ .../bear_face/v1/keymaps/default/readme.md | 1 - .../bear_face/v2/keymaps/default/readme.md | 1 - .../v2/keymaps/default_iso/readme.md | 1 - .../bear_face/v3/keymaps/default/readme.md | 1 - .../v3/keymaps/default_iso/readme.md | 1 - .../ergodox_ez/keymaps/rgb_layer/config.h | 2 +- keyboards/eternal_keypad/keyboard.json | 5 ++++ .../eternal_keypad/keymaps/default/config.h | 1 - keyboards/handwired/k8split/keyboard.json | 5 ++++ .../handwired/k8split/keymaps/left/config.h | 21 ---------------- .../handwired/k8split/keymaps/right/config.h | 21 ---------------- quantum/keyboard.c | 5 ---- 16 files changed, 18 insertions(+), 81 deletions(-) delete mode 100644 keyboards/adkb96/keymaps/default/config.h delete mode 100644 keyboards/handwired/k8split/keymaps/left/config.h delete mode 100644 keyboards/handwired/k8split/keymaps/right/config.h diff --git a/data/mappings/info_config.hjson b/data/mappings/info_config.hjson index cd4a127844..1816124df0 100644 --- a/data/mappings/info_config.hjson +++ b/data/mappings/info_config.hjson @@ -269,9 +269,9 @@ "PRODUCT": {"info_key": "keyboard_name", "warn_duplicate": false, "value_type": "str", "deprecated": true, "replace_with": "`keyboard_name` in info.json"}, "PRODUCT_ID": {"info_key": "usb.pid", "value_type": "hex", "deprecated": true, "replace_with": "`usb.pid` in info.json"}, "VENDOR_ID": {"info_key": "usb.vid", "value_type": "hex", "deprecated": true, "replace_with": "`usb.vid` in info.json"}, - "FORCE_NKRO": {"info_key": "usb.force_nkro", "value_type": "flag", "deprecated": true, "replace_with": "`host.default.nkro` in info.json"}, // Items we want flagged in lint + "FORCE_NKRO": {"info_key": "usb.force_nkro", "value_type": "flag", "invalid": true, "replace_with": "`host.default.nkro` in info.json"}, "VIAL_KEYBOARD_UID": {"info_key": "_invalid.vial_uid", "invalid": true}, "VIAL_UNLOCK_COMBO_COLS": {"info_key": "_invalid.vial_unlock_cols", "invalid": true}, "VIAL_UNLOCK_COMBO_ROWS": {"info_key": "_invalid.vial_unlock_rows", "invalid": true} diff --git a/docs/getting_started_make_guide.md b/docs/getting_started_make_guide.md index 54f915e444..c615b6ecab 100644 --- a/docs/getting_started_make_guide.md +++ b/docs/getting_started_make_guide.md @@ -91,7 +91,7 @@ Enables your LED to breath while your computer is sleeping. Timer1 is being used `NKRO_ENABLE` -This allows the keyboard to tell the host OS that up to 248 keys are held down at once (default without NKRO is 6). NKRO is off by default, even if `NKRO_ENABLE` is set. NKRO can be forced by adding `#define FORCE_NKRO` to your config.h or by binding `MAGIC_TOGGLE_NKRO` to a key and then hitting the key. +This allows the keyboard to tell the host OS that up to 248 keys are held down at once (default without NKRO is 6). NKRO is off by default, even if `NKRO_ENABLE` is set. NKRO can be toggled by binding `NK_TOGG` to a key and then hitting the key. `BACKLIGHT_ENABLE` diff --git a/keyboards/adkb96/keymaps/default/config.h b/keyboards/adkb96/keymaps/default/config.h deleted file mode 100644 index a1c18568be..0000000000 --- a/keyboards/adkb96/keymaps/default/config.h +++ /dev/null @@ -1,25 +0,0 @@ -/* -This is the c configuration file for the keymap - -Copyright 2012 Jun Wako -Copyright 2015 Jack Humbert - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#pragma once - -//#define USE_I2C - -#define FORCE_NKRO diff --git a/keyboards/adkb96/rev1/keyboard.json b/keyboards/adkb96/rev1/keyboard.json index 3c0c757c05..c359dfdce1 100644 --- a/keyboards/adkb96/rev1/keyboard.json +++ b/keyboards/adkb96/rev1/keyboard.json @@ -14,6 +14,11 @@ "command": true, "nkro": true }, + "host": { + "default": { + "nkro": true + } + }, "qmk": { "locking": { "enabled": true, diff --git a/keyboards/bear_face/v1/keymaps/default/readme.md b/keyboards/bear_face/v1/keymaps/default/readme.md index 5f9e635dfe..26e504d62d 100644 --- a/keyboards/bear_face/v1/keymaps/default/readme.md +++ b/keyboards/bear_face/v1/keymaps/default/readme.md @@ -4,7 +4,6 @@ This layout replaces the stock layout on the Vortex Race 3. - Caps Lock indicator LED is enabled by default - Layer Tap on Caps Lock (tap for Caps Lock, hold for _FN1) -- FORCE_NKRO enabled by default - Pn key is set to 'KC_NO' by default * Might be a good place for a macro, or to put your PC to sleep, etc. diff --git a/keyboards/bear_face/v2/keymaps/default/readme.md b/keyboards/bear_face/v2/keymaps/default/readme.md index 517baa5726..65e01e0d02 100644 --- a/keyboards/bear_face/v2/keymaps/default/readme.md +++ b/keyboards/bear_face/v2/keymaps/default/readme.md @@ -4,7 +4,6 @@ This layout replaces the stock layout on the Vortex Race 3. - Caps Lock indicator LED is enabled by default - Layer Tap on Caps Lock (tap for Caps Lock, hold for _FN1) -- FORCE_NKRO enabled by default - Pn key is set to 'KC_NO' by default * Might be a good place for a macro, or to put your PC to sleep, etc. diff --git a/keyboards/bear_face/v2/keymaps/default_iso/readme.md b/keyboards/bear_face/v2/keymaps/default_iso/readme.md index 517baa5726..65e01e0d02 100644 --- a/keyboards/bear_face/v2/keymaps/default_iso/readme.md +++ b/keyboards/bear_face/v2/keymaps/default_iso/readme.md @@ -4,7 +4,6 @@ This layout replaces the stock layout on the Vortex Race 3. - Caps Lock indicator LED is enabled by default - Layer Tap on Caps Lock (tap for Caps Lock, hold for _FN1) -- FORCE_NKRO enabled by default - Pn key is set to 'KC_NO' by default * Might be a good place for a macro, or to put your PC to sleep, etc. diff --git a/keyboards/bear_face/v3/keymaps/default/readme.md b/keyboards/bear_face/v3/keymaps/default/readme.md index a86b77bb19..f648e0b735 100644 --- a/keyboards/bear_face/v3/keymaps/default/readme.md +++ b/keyboards/bear_face/v3/keymaps/default/readme.md @@ -4,7 +4,6 @@ This layout replaces the stock layout on the Vortex Race 3. - Caps Lock indicator LED is enabled by default - Layer Tap on Caps Lock (tap for Caps Lock, hold for _FN1) -- FORCE_NKRO enabled by default - Pn key is set to 'KC_NO' by default * Might be a good place for a macro, or to put your PC to sleep, etc. diff --git a/keyboards/bear_face/v3/keymaps/default_iso/readme.md b/keyboards/bear_face/v3/keymaps/default_iso/readme.md index a86b77bb19..f648e0b735 100644 --- a/keyboards/bear_face/v3/keymaps/default_iso/readme.md +++ b/keyboards/bear_face/v3/keymaps/default_iso/readme.md @@ -4,7 +4,6 @@ This layout replaces the stock layout on the Vortex Race 3. - Caps Lock indicator LED is enabled by default - Layer Tap on Caps Lock (tap for Caps Lock, hold for _FN1) -- FORCE_NKRO enabled by default - Pn key is set to 'KC_NO' by default * Might be a good place for a macro, or to put your PC to sleep, etc. diff --git a/keyboards/ergodox_ez/keymaps/rgb_layer/config.h b/keyboards/ergodox_ez/keymaps/rgb_layer/config.h index edd1f130cc..7623e37e73 100644 --- a/keyboards/ergodox_ez/keymaps/rgb_layer/config.h +++ b/keyboards/ergodox_ez/keymaps/rgb_layer/config.h @@ -8,7 +8,7 @@ #undef PERMISSIVE_HOLD -#define FORCE_NKRO +#define NKRO_DEFAULT_ON true #ifndef TAPPING_TOGGLE #define TAPPING_TOGGLE 1 diff --git a/keyboards/eternal_keypad/keyboard.json b/keyboards/eternal_keypad/keyboard.json index 1951c7fa09..97421204ff 100644 --- a/keyboards/eternal_keypad/keyboard.json +++ b/keyboards/eternal_keypad/keyboard.json @@ -15,6 +15,11 @@ "nkro": true, "rgblight": true }, + "host": { + "default": { + "nkro": true + } + }, "qmk": { "locking": { "enabled": true, diff --git a/keyboards/eternal_keypad/keymaps/default/config.h b/keyboards/eternal_keypad/keymaps/default/config.h index 36ab46334c..58be405e6b 100644 --- a/keyboards/eternal_keypad/keymaps/default/config.h +++ b/keyboards/eternal_keypad/keymaps/default/config.h @@ -16,4 +16,3 @@ #pragma once #define ONESHOT_TIMEOUT 2000 -#define FORCE_NKRO diff --git a/keyboards/handwired/k8split/keyboard.json b/keyboards/handwired/k8split/keyboard.json index 2312d43689..b69f91a801 100644 --- a/keyboards/handwired/k8split/keyboard.json +++ b/keyboards/handwired/k8split/keyboard.json @@ -13,6 +13,11 @@ "mousekey": true, "nkro": true }, + "host": { + "default": { + "nkro": true + } + }, "matrix_pins": { "cols": ["C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"], "rows": ["D5", "D3", "D2", "D1", "D0", "B7"] diff --git a/keyboards/handwired/k8split/keymaps/left/config.h b/keyboards/handwired/k8split/keymaps/left/config.h deleted file mode 100644 index 968a6eb413..0000000000 --- a/keyboards/handwired/k8split/keymaps/left/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* -Copyright 2020 Ckat - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#pragma once - -/* ensure NKRO is on */ -#define FORCE_NKRO diff --git a/keyboards/handwired/k8split/keymaps/right/config.h b/keyboards/handwired/k8split/keymaps/right/config.h deleted file mode 100644 index 968a6eb413..0000000000 --- a/keyboards/handwired/k8split/keymaps/right/config.h +++ /dev/null @@ -1,21 +0,0 @@ -/* -Copyright 2020 Ckat - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . -*/ - -#pragma once - -/* ensure NKRO is on */ -#define FORCE_NKRO diff --git a/quantum/keyboard.c b/quantum/keyboard.c index debd3caf5c..5a80facf57 100644 --- a/quantum/keyboard.c +++ b/quantum/keyboard.c @@ -510,11 +510,6 @@ void keyboard_init(void) { #ifdef STENO_ENABLE_ALL steno_init(); #endif -#if defined(NKRO_ENABLE) && defined(FORCE_NKRO) -# pragma message "FORCE_NKRO option is now deprecated - Please migrate to NKRO_DEFAULT_ON instead." - keymap_config.nkro = 1; - eeconfig_update_keymap(&keymap_config); -#endif #ifdef DIP_SWITCH_ENABLE dip_switch_init(); #endif