diff --git a/keyboards/rart/rart75hs/config.h b/keyboards/rart/rart75hs/config.h
deleted file mode 100644
index 3715a98a6d1..00000000000
--- a/keyboards/rart/rart75hs/config.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
-Copyright 2022 Alabahuy
-
-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
-
-/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
-#define LOCKING_SUPPORT_ENABLE
-
-/* Locking resynchronize hack */
-#define LOCKING_RESYNC_ENABLE
diff --git a/keyboards/rart/rart75hs/info.json b/keyboards/rart/rart75hs/keyboard.json
similarity index 98%
rename from keyboards/rart/rart75hs/info.json
rename to keyboards/rart/rart75hs/keyboard.json
index 148dfba3852..f8763bfbee9 100644
--- a/keyboards/rart/rart75hs/info.json
+++ b/keyboards/rart/rart75hs/keyboard.json
@@ -8,6 +8,21 @@
"pid": "0x5575",
"device_version": "0.0.3"
},
+ "features": {
+ "bootmagic": true,
+ "command": true,
+ "encoder": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": false,
+ "rgblight": true
+ },
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
+ },
"matrix_pins": {
"cols": ["B4", "B3", "B2", "B1", "B0", "A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "C7", "C6", "C3"],
"rows": ["D5", "D6", "D7", "D0", "C5", "C4"]
diff --git a/keyboards/rart/rart75hs/rules.mk b/keyboards/rart/rart75hs/rules.mk
index 804d61435b6..c2ee0bc86f9 100644
--- a/keyboards/rart/rart75hs/rules.mk
+++ b/keyboards/rart/rart75hs/rules.mk
@@ -1,16 +1,2 @@
# Processor frequency
F_CPU = 16000000
-
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes
diff --git a/keyboards/rart/rart80/config.h b/keyboards/rart/rart80/config.h
deleted file mode 100644
index 3715a98a6d1..00000000000
--- a/keyboards/rart/rart80/config.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
-Copyright 2022 Alabahuy
-
-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
-
-/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
-#define LOCKING_SUPPORT_ENABLE
-
-/* Locking resynchronize hack */
-#define LOCKING_RESYNC_ENABLE
diff --git a/keyboards/rart/rart80/info.json b/keyboards/rart/rart80/keyboard.json
similarity index 99%
rename from keyboards/rart/rart80/info.json
rename to keyboards/rart/rart80/keyboard.json
index e2093e50292..06fbd1add67 100644
--- a/keyboards/rart/rart80/info.json
+++ b/keyboards/rart/rart80/keyboard.json
@@ -8,6 +8,20 @@
"pid": "0x0080",
"device_version": "0.0.1"
},
+ "features": {
+ "bootmagic": true,
+ "command": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgblight": true
+ },
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
+ },
"matrix_pins": {
"cols": ["A2", "A3", "A4", "A5", "A6", "A7", "C7", "C6", "C5", "C4", "C2", "C1", "C0", "D7", "B4", "B2", "B1"],
"rows": ["B3", "A1", "B0", "C3", "D0", "D1"]
diff --git a/keyboards/rart/rart80/rules.mk b/keyboards/rart/rart80/rules.mk
index 044259ad5de..c2ee0bc86f9 100644
--- a/keyboards/rart/rart80/rules.mk
+++ b/keyboards/rart/rart80/rules.mk
@@ -1,15 +1,2 @@
# Processor frequency
F_CPU = 16000000
-
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
diff --git a/keyboards/rart/rartland/info.json b/keyboards/rart/rartland/keyboard.json
similarity index 98%
rename from keyboards/rart/rartland/info.json
rename to keyboards/rart/rartland/keyboard.json
index c1e167d1d81..ea037b78b60 100644
--- a/keyboards/rart/rartland/info.json
+++ b/keyboards/rart/rartland/keyboard.json
@@ -8,6 +8,15 @@
"pid": "0x6065",
"device_version": "0.0.1"
},
+ "features": {
+ "bootmagic": true,
+ "encoder": true,
+ "extrakey": true,
+ "mousekey": false,
+ "nkro": false,
+ "oled": true,
+ "unicode": true
+ },
"matrix_pins": {
"cols": ["B0", "A1", "B1", "A2", "B2", "A3", "B3", "A4", "C7", "C6", "D0", "C5", "D1", "C4"],
"rows": ["B4", "A7", "A5", "A6", "C3"]
diff --git a/keyboards/rart/rartland/rules.mk b/keyboards/rart/rartland/rules.mk
index 5e5e0f090d7..c2ee0bc86f9 100644
--- a/keyboards/rart/rartland/rules.mk
+++ b/keyboards/rart/rartland/rules.mk
@@ -1,18 +1,2 @@
# Processor frequency
F_CPU = 16000000
-
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-UNICODE_ENABLE = yes
-OLED_ENABLE = yes
-ENCODER_ENABLE = yes
diff --git a/keyboards/rate/pistachio/rev1/info.json b/keyboards/rate/pistachio/rev1/keyboard.json
similarity index 97%
rename from keyboards/rate/pistachio/rev1/info.json
rename to keyboards/rate/pistachio/rev1/keyboard.json
index ca8434fdd7d..2a74e00c0d2 100644
--- a/keyboards/rate/pistachio/rev1/info.json
+++ b/keyboards/rate/pistachio/rev1/keyboard.json
@@ -1,4 +1,12 @@
{
+ "features": {
+ "bootmagic": false,
+ "command": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgblight": true
+ },
"rgblight": {
"hue_steps": 10,
"led_count": 2,
diff --git a/keyboards/rate/pistachio/rev1/rules.mk b/keyboards/rate/pistachio/rev1/rules.mk
deleted file mode 100644
index 09f976d0e64..00000000000
--- a/keyboards/rate/pistachio/rev1/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
diff --git a/keyboards/rate/pistachio/rev2/info.json b/keyboards/rate/pistachio/rev2/keyboard.json
similarity index 97%
rename from keyboards/rate/pistachio/rev2/info.json
rename to keyboards/rate/pistachio/rev2/keyboard.json
index 0bca53aca36..72ad90478e5 100644
--- a/keyboards/rate/pistachio/rev2/info.json
+++ b/keyboards/rate/pistachio/rev2/keyboard.json
@@ -1,4 +1,12 @@
{
+ "features": {
+ "bootmagic": false,
+ "command": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgblight": true
+ },
"ws2812": {
"pin": "D2"
},
diff --git a/keyboards/rate/pistachio/rev2/rules.mk b/keyboards/rate/pistachio/rev2/rules.mk
deleted file mode 100644
index 09f976d0e64..00000000000
--- a/keyboards/rate/pistachio/rev2/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
diff --git a/keyboards/rate/pistachio_pro/info.json b/keyboards/rate/pistachio_pro/keyboard.json
similarity index 97%
rename from keyboards/rate/pistachio_pro/info.json
rename to keyboards/rate/pistachio_pro/keyboard.json
index cf0218b050f..4dc439c4721 100644
--- a/keyboards/rate/pistachio_pro/info.json
+++ b/keyboards/rate/pistachio_pro/keyboard.json
@@ -8,6 +8,14 @@
"pid": "0xF40C",
"device_version": "0.0.1"
},
+ "features": {
+ "bootmagic": false,
+ "encoder": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": false,
+ "oled": true
+ },
"encoder": {
"rotary": [
{"pin_a": "D2", "pin_b": "D3"}
diff --git a/keyboards/rate/pistachio_pro/rules.mk b/keyboards/rate/pistachio_pro/rules.mk
index 7d8b50ef3fd..73e734bd968 100644
--- a/keyboards/rate/pistachio_pro/rules.mk
+++ b/keyboards/rate/pistachio_pro/rules.mk
@@ -1,18 +1,3 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-OLED_ENABLE = yes
-ENCODER_ENABLE = yes
-
CUSTOM_MATRIX = lite
SRC += matrix.c
SRC += ./lib/bme280.c
diff --git a/keyboards/rationalist/ratio60_hotswap/rev_a/info.json b/keyboards/rationalist/ratio60_hotswap/rev_a/keyboard.json
similarity index 100%
rename from keyboards/rationalist/ratio60_hotswap/rev_a/info.json
rename to keyboards/rationalist/ratio60_hotswap/rev_a/keyboard.json
diff --git a/keyboards/recompile_keys/choco60/rev1/info.json b/keyboards/recompile_keys/choco60/rev1/keyboard.json
similarity index 71%
rename from keyboards/recompile_keys/choco60/rev1/info.json
rename to keyboards/recompile_keys/choco60/rev1/keyboard.json
index 2a4dd3f7f3d..916c3de8d03 100644
--- a/keyboards/recompile_keys/choco60/rev1/info.json
+++ b/keyboards/recompile_keys/choco60/rev1/keyboard.json
@@ -1,4 +1,10 @@
{
+ "features": {
+ "bootmagic": false,
+ "extrakey": true,
+ "mousekey": false,
+ "nkro": false
+ },
"matrix_pins": {
"cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6", "D1"],
"rows": ["C6", "D7", "E6", "B4", "B5"]
diff --git a/keyboards/recompile_keys/choco60/rev1/rules.mk b/keyboards/recompile_keys/choco60/rev1/rules.mk
deleted file mode 100644
index 4d82dff69aa..00000000000
--- a/keyboards/recompile_keys/choco60/rev1/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
diff --git a/keyboards/recompile_keys/choco60/rev2/info.json b/keyboards/recompile_keys/choco60/rev2/keyboard.json
similarity index 80%
rename from keyboards/recompile_keys/choco60/rev2/info.json
rename to keyboards/recompile_keys/choco60/rev2/keyboard.json
index 6565dc98347..fbc947a9f0c 100644
--- a/keyboards/recompile_keys/choco60/rev2/info.json
+++ b/keyboards/recompile_keys/choco60/rev2/keyboard.json
@@ -1,4 +1,10 @@
{
+ "features": {
+ "bootmagic": true,
+ "extrakey": true,
+ "mousekey": false,
+ "nkro": false
+ },
"matrix_pins": {
"cols": ["C6", "B4", "B3", "B2", "B1", "B0", null, null, null],
"rows": ["C5", "C4", "B6", "B7", "C7"]
diff --git a/keyboards/recompile_keys/choco60/rev2/rules.mk b/keyboards/recompile_keys/choco60/rev2/rules.mk
deleted file mode 100644
index fa6fbf34d9f..00000000000
--- a/keyboards/recompile_keys/choco60/rev2/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
diff --git a/keyboards/recompile_keys/nomu30/rev1/info.json b/keyboards/recompile_keys/nomu30/rev1/keyboard.json
similarity index 66%
rename from keyboards/recompile_keys/nomu30/rev1/info.json
rename to keyboards/recompile_keys/nomu30/rev1/keyboard.json
index 815f200cd8e..01afb9fe7d5 100644
--- a/keyboards/recompile_keys/nomu30/rev1/info.json
+++ b/keyboards/recompile_keys/nomu30/rev1/keyboard.json
@@ -1,4 +1,10 @@
{
+ "features": {
+ "bootmagic": true,
+ "extrakey": true,
+ "mousekey": false,
+ "nkro": false
+ },
"matrix_pins": {
"cols": ["C6", "D7", "E6", "B4", "F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"],
"rows": ["D1", "D0", "D4"]
diff --git a/keyboards/recompile_keys/nomu30/rev1/rules.mk b/keyboards/recompile_keys/nomu30/rev1/rules.mk
deleted file mode 100644
index e29387316f7..00000000000
--- a/keyboards/recompile_keys/nomu30/rev1/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
diff --git a/keyboards/recompile_keys/nomu30/rev2/config.h b/keyboards/recompile_keys/nomu30/rev2/config.h
deleted file mode 100644
index ff4630d838a..00000000000
--- a/keyboards/recompile_keys/nomu30/rev2/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-Copyright 2020 Naoto Takai
-
-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
-
-/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
-#define LOCKING_SUPPORT_ENABLE
-/* Locking resynchronize hack */
-#define LOCKING_RESYNC_ENABLE
diff --git a/keyboards/recompile_keys/nomu30/rev2/info.json b/keyboards/recompile_keys/nomu30/rev2/keyboard.json
similarity index 51%
rename from keyboards/recompile_keys/nomu30/rev2/info.json
rename to keyboards/recompile_keys/nomu30/rev2/keyboard.json
index 70730415a5c..0e1df3f32ad 100644
--- a/keyboards/recompile_keys/nomu30/rev2/info.json
+++ b/keyboards/recompile_keys/nomu30/rev2/keyboard.json
@@ -1,4 +1,16 @@
{
+ "features": {
+ "bootmagic": true,
+ "extrakey": false,
+ "mousekey": false,
+ "nkro": false
+ },
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
+ },
"matrix_pins": {
"cols": ["C4", "C5", "C6", "C7", "B7", "B6", "B5", "B4", "B3", "D5", "D4", "D3"],
"rows": ["B2", "B1", "B0"]
diff --git a/keyboards/recompile_keys/nomu30/rev2/rules.mk b/keyboards/recompile_keys/nomu30/rev2/rules.mk
deleted file mode 100644
index c3de5dd6e58..00000000000
--- a/keyboards/recompile_keys/nomu30/rev2/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = no # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
diff --git a/keyboards/redox/rev1/proton_c/info.json b/keyboards/redox/rev1/proton_c/keyboard.json
similarity index 100%
rename from keyboards/redox/rev1/proton_c/info.json
rename to keyboards/redox/rev1/proton_c/keyboard.json
diff --git a/keyboards/redox/wireless/info.json b/keyboards/redox/wireless/keyboard.json
similarity index 100%
rename from keyboards/redox/wireless/info.json
rename to keyboards/redox/wireless/keyboard.json
diff --git a/keyboards/redox_media/config.h b/keyboards/redox_media/config.h
deleted file mode 100644
index ca325c381e3..00000000000
--- a/keyboards/redox_media/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-Copyright 2021 Shiftux
-
-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
-
-/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
-#define LOCKING_SUPPORT_ENABLE
-/* Locking resynchronize hack */
-#define LOCKING_RESYNC_ENABLE
diff --git a/keyboards/redox_media/info.json b/keyboards/redox_media/keyboard.json
similarity index 95%
rename from keyboards/redox_media/info.json
rename to keyboards/redox_media/keyboard.json
index c4e890f5577..baf1cfeb434 100644
--- a/keyboards/redox_media/info.json
+++ b/keyboards/redox_media/keyboard.json
@@ -8,6 +8,19 @@
"pid": "0x0000",
"device_version": "1.0.0"
},
+ "features": {
+ "bootmagic": true,
+ "encoder": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true
+ },
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
+ },
"matrix_pins": {
"cols": ["F6", "F7", "B1", "B3", "B2", "B6", "D1"],
"rows": ["D4", "C6", "D7", "E6", "B4", "B5"]
diff --git a/keyboards/redox_media/rules.mk b/keyboards/redox_media/rules.mk
index 5ad7700a767..1056aa2c41b 100644
--- a/keyboards/redox_media/rules.mk
+++ b/keyboards/redox_media/rules.mk
@@ -1,17 +1,3 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes
-
# Disable unsupported hardware
AUDIO_SUPPORTED = no
BACKLIGHT_SUPPORTED = no
diff --git a/keyboards/redscarf_iiplus/verb/info.json b/keyboards/redscarf_iiplus/verb/keyboard.json
similarity index 98%
rename from keyboards/redscarf_iiplus/verb/info.json
rename to keyboards/redscarf_iiplus/verb/keyboard.json
index 82892e9325a..a027fe1003f 100644
--- a/keyboards/redscarf_iiplus/verb/info.json
+++ b/keyboards/redscarf_iiplus/verb/keyboard.json
@@ -8,6 +8,13 @@
"pid": "0x0000",
"device_version": "0.0.1"
},
+ "features": {
+ "backlight": true,
+ "bootmagic": false,
+ "extrakey": true,
+ "mousekey": false,
+ "nkro": true
+ },
"backlight": {
"pin": "B7"
},
diff --git a/keyboards/redscarf_iiplus/verb/rules.mk b/keyboards/redscarf_iiplus/verb/rules.mk
index 73a2fe6487b..8784813b335 100755
--- a/keyboards/redscarf_iiplus/verb/rules.mk
+++ b/keyboards/redscarf_iiplus/verb/rules.mk
@@ -1,15 +1,2 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-
CUSTOM_MATRIX = yes
SRC += matrix.c
diff --git a/keyboards/redscarf_iiplus/verc/info.json b/keyboards/redscarf_iiplus/verc/keyboard.json
similarity index 98%
rename from keyboards/redscarf_iiplus/verc/info.json
rename to keyboards/redscarf_iiplus/verc/keyboard.json
index b0c785e1b65..c7f5314e7a8 100644
--- a/keyboards/redscarf_iiplus/verc/info.json
+++ b/keyboards/redscarf_iiplus/verc/keyboard.json
@@ -8,6 +8,13 @@
"pid": "0x0000",
"device_version": "0.0.1"
},
+ "features": {
+ "backlight": true,
+ "bootmagic": false,
+ "extrakey": true,
+ "mousekey": false,
+ "nkro": true
+ },
"backlight": {
"pin": "B7"
},
diff --git a/keyboards/redscarf_iiplus/verc/rules.mk b/keyboards/redscarf_iiplus/verc/rules.mk
index 73a2fe6487b..8784813b335 100755
--- a/keyboards/redscarf_iiplus/verc/rules.mk
+++ b/keyboards/redscarf_iiplus/verc/rules.mk
@@ -1,15 +1,2 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-
CUSTOM_MATRIX = yes
SRC += matrix.c
diff --git a/keyboards/redscarf_iiplus/verd/info.json b/keyboards/redscarf_iiplus/verd/keyboard.json
similarity index 98%
rename from keyboards/redscarf_iiplus/verd/info.json
rename to keyboards/redscarf_iiplus/verd/keyboard.json
index c8de6db7c27..ef8dba4a4e1 100644
--- a/keyboards/redscarf_iiplus/verd/info.json
+++ b/keyboards/redscarf_iiplus/verd/keyboard.json
@@ -8,6 +8,13 @@
"pid": "0x7778",
"device_version": "0.0.1"
},
+ "features": {
+ "backlight": true,
+ "bootmagic": false,
+ "extrakey": true,
+ "mousekey": false,
+ "nkro": true
+ },
"backlight": {
"pin": "B7"
},
diff --git a/keyboards/redscarf_iiplus/verd/rules.mk b/keyboards/redscarf_iiplus/verd/rules.mk
index 4164035629a..8784813b335 100644
--- a/keyboards/redscarf_iiplus/verd/rules.mk
+++ b/keyboards/redscarf_iiplus/verd/rules.mk
@@ -1,15 +1,2 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-
CUSTOM_MATRIX = yes
SRC += matrix.c
diff --git a/keyboards/reviung/reviung61/config.h b/keyboards/reviung/reviung61/config.h
deleted file mode 100644
index 2e9cb65b562..00000000000
--- a/keyboards/reviung/reviung61/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-Copyright 2020 gtips
-
-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
-
-/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
-#define LOCKING_SUPPORT_ENABLE
-/* Locking resynchronize hack */
-#define LOCKING_RESYNC_ENABLE
diff --git a/keyboards/reviung/reviung61/info.json b/keyboards/reviung/reviung61/keyboard.json
similarity index 94%
rename from keyboards/reviung/reviung61/info.json
rename to keyboards/reviung/reviung61/keyboard.json
index c76f797d409..99a297bde4c 100644
--- a/keyboards/reviung/reviung61/info.json
+++ b/keyboards/reviung/reviung61/keyboard.json
@@ -8,6 +8,18 @@
"pid": "0x7C1A",
"device_version": "0.0.1"
},
+ "features": {
+ "bootmagic": false,
+ "extrakey": false,
+ "mousekey": false,
+ "nkro": false
+ },
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
+ },
"matrix_pins": {
"cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"],
"rows": ["D0", "D1", "D2", "D3", "D5"]
diff --git a/keyboards/reviung/reviung61/rules.mk b/keyboards/reviung/reviung61/rules.mk
deleted file mode 100644
index ad81ce036a2..00000000000
--- a/keyboards/reviung/reviung61/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = no # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
diff --git a/keyboards/ristretto/config.h b/keyboards/ristretto/config.h
deleted file mode 100644
index de203ddc4e6..00000000000
--- a/keyboards/ristretto/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Copyright 2021 Brandon Lewis
- *
- * 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
-
-/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
-#define LOCKING_SUPPORT_ENABLE
-
-/* Locking resynchronize hack */
-#define LOCKING_RESYNC_ENABLE
diff --git a/keyboards/ristretto/info.json b/keyboards/ristretto/keyboard.json
similarity index 92%
rename from keyboards/ristretto/info.json
rename to keyboards/ristretto/keyboard.json
index 3853accd9b7..b28f3c1dc10 100644
--- a/keyboards/ristretto/info.json
+++ b/keyboards/ristretto/keyboard.json
@@ -8,6 +8,20 @@
"pid": "0x7273",
"device_version": "0.0.1"
},
+ "features": {
+ "bootmagic": false,
+ "encoder": true,
+ "extrakey": true,
+ "mousekey": false,
+ "nkro": true,
+ "oled": true
+ },
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
+ },
"matrix_pins": {
"cols": ["C7", "C6", "B6", "B5", "B4", "D7", "B7", "F0", "F1", "F4", "F5", "F6", "F7"],
"rows": ["B1", "B2", "B3", "D3"]
diff --git a/keyboards/ristretto/rules.mk b/keyboards/ristretto/rules.mk
index 13002485f83..908e5e972ec 100644
--- a/keyboards/ristretto/rules.mk
+++ b/keyboards/ristretto/rules.mk
@@ -1,15 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes
-OLED_ENABLE = yes
WAIT_FOR_USB = yes
diff --git a/keyboards/rmi_kb/aelith/info.json b/keyboards/rmi_kb/aelith/keyboard.json
similarity index 98%
rename from keyboards/rmi_kb/aelith/info.json
rename to keyboards/rmi_kb/aelith/keyboard.json
index 269839dfe5d..bacc4801876 100644
--- a/keyboards/rmi_kb/aelith/info.json
+++ b/keyboards/rmi_kb/aelith/keyboard.json
@@ -8,6 +8,12 @@
"pid": "0xE460",
"device_version": "0.1.2"
},
+ "features": {
+ "bootmagic": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": false
+ },
"matrix_pins": {
"cols": ["D7", "C0", "C1", "C2", "C3", "C4", "C5", "C6", "C7", "A6", "A5", "A0", "A1", "A2", "A3", "A4"],
"rows": ["D5", "D1", "D0", "D6", "A7"]
diff --git a/keyboards/rmi_kb/aelith/rules.mk b/keyboards/rmi_kb/aelith/rules.mk
index 1e9f9255447..c2ee0bc86f9 100644
--- a/keyboards/rmi_kb/aelith/rules.mk
+++ b/keyboards/rmi_kb/aelith/rules.mk
@@ -1,15 +1,2 @@
# Processor frequency
F_CPU = 16000000
-
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
diff --git a/keyboards/rmi_kb/chevron/info.json b/keyboards/rmi_kb/chevron/keyboard.json
similarity index 97%
rename from keyboards/rmi_kb/chevron/info.json
rename to keyboards/rmi_kb/chevron/keyboard.json
index 48f4373c263..a4cb864705e 100644
--- a/keyboards/rmi_kb/chevron/info.json
+++ b/keyboards/rmi_kb/chevron/keyboard.json
@@ -8,6 +8,13 @@
"pid": "0xC4EE",
"device_version": "0.1.2"
},
+ "features": {
+ "bootmagic": true,
+ "encoder": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": false
+ },
"matrix_pins": {
"cols": ["A5", "A6", "A7", "C7", "C6", "C5", "C4", "C3", "C2", "C1", "A4", "A3", "A2", "B4"],
"rows": ["D5", "D6", "C0", "D7"]
diff --git a/keyboards/rmi_kb/chevron/rules.mk b/keyboards/rmi_kb/chevron/rules.mk
index 36c6a2d0500..c2ee0bc86f9 100644
--- a/keyboards/rmi_kb/chevron/rules.mk
+++ b/keyboards/rmi_kb/chevron/rules.mk
@@ -1,16 +1,2 @@
# Processor frequency
F_CPU = 16000000
-
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes
diff --git a/keyboards/rmi_kb/herringbone/pro/info.json b/keyboards/rmi_kb/herringbone/pro/keyboard.json
similarity index 98%
rename from keyboards/rmi_kb/herringbone/pro/info.json
rename to keyboards/rmi_kb/herringbone/pro/keyboard.json
index caab0f11e15..506022a42b4 100644
--- a/keyboards/rmi_kb/herringbone/pro/info.json
+++ b/keyboards/rmi_kb/herringbone/pro/keyboard.json
@@ -8,6 +8,18 @@
"pid": "0x440B",
"device_version": "0.1.2"
},
+ "build": {
+ "lto": true
+ },
+ "features": {
+ "bootmagic": true,
+ "encoder": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": false,
+ "oled": true,
+ "wpm": true
+ },
"matrix_pins": {
"cols": ["A0", "A1", "A2", "A3", "A4", "A5", "D6", "D5", "D1", "B0", "B1", "B2", "B3", "B4", "D7"],
"rows": ["C4", "C5", "C6", "C7", "A7", "A6", null]
diff --git a/keyboards/rmi_kb/herringbone/pro/rules.mk b/keyboards/rmi_kb/herringbone/pro/rules.mk
index 890f20de86a..85b16472c53 100644
--- a/keyboards/rmi_kb/herringbone/pro/rules.mk
+++ b/keyboards/rmi_kb/herringbone/pro/rules.mk
@@ -1,21 +1,4 @@
# Processor frequency
F_CPU = 16000000
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes
-OLED_ENABLE = yes
-WPM_ENABLE = yes
-LTO_ENABLE = yes
-
SRC += pattern.c
diff --git a/keyboards/rmi_kb/herringbone/v1/info.json b/keyboards/rmi_kb/herringbone/v1/keyboard.json
similarity index 99%
rename from keyboards/rmi_kb/herringbone/v1/info.json
rename to keyboards/rmi_kb/herringbone/v1/keyboard.json
index 89e15d9c350..91fbf2cf244 100644
--- a/keyboards/rmi_kb/herringbone/v1/info.json
+++ b/keyboards/rmi_kb/herringbone/v1/keyboard.json
@@ -8,6 +8,12 @@
"pid": "0x04E5",
"device_version": "0.1.2"
},
+ "features": {
+ "bootmagic": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": false
+ },
"matrix_pins": {
"cols": ["A0", "A1", "A2", "A3", "A4", "A5", "D6", "D5", "D1", "B0", "B1", "B2", "B3", "B4", "D7"],
"rows": ["C4", "C5", "C6", "C7", "A7", "A6"]
diff --git a/keyboards/rmi_kb/herringbone/v1/rules.mk b/keyboards/rmi_kb/herringbone/v1/rules.mk
index 18550f0a64d..c2ee0bc86f9 100644
--- a/keyboards/rmi_kb/herringbone/v1/rules.mk
+++ b/keyboards/rmi_kb/herringbone/v1/rules.mk
@@ -1,15 +1,2 @@
# Processor frequency
F_CPU = 16000000
-
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
diff --git a/keyboards/rmi_kb/mona/v1/config.h b/keyboards/rmi_kb/mona/v1/config.h
deleted file mode 100644
index b53bfc15542..00000000000
--- a/keyboards/rmi_kb/mona/v1/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
-Copyright 2020 Ramon Imbao
-
-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
-
-/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
-#define LOCKING_SUPPORT_ENABLE
-/* Locking resynchronize hack */
-#define LOCKING_RESYNC_ENABLE
diff --git a/keyboards/rmi_kb/mona/v1/info.json b/keyboards/rmi_kb/mona/v1/keyboard.json
similarity index 98%
rename from keyboards/rmi_kb/mona/v1/info.json
rename to keyboards/rmi_kb/mona/v1/keyboard.json
index abb6877be61..7bd5f56e142 100644
--- a/keyboards/rmi_kb/mona/v1/info.json
+++ b/keyboards/rmi_kb/mona/v1/keyboard.json
@@ -8,6 +8,18 @@
"pid": "0x404A",
"device_version": "0.0.1"
},
+ "features": {
+ "bootmagic": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": false
+ },
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
+ },
"matrix_pins": {
"cols": ["D0", "D3", "D2", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"],
"rows": ["D1", "D5", "B7", "F0", "F1"]
diff --git a/keyboards/rmi_kb/mona/v1/rules.mk b/keyboards/rmi_kb/mona/v1/rules.mk
deleted file mode 100644
index ab2c49da70e..00000000000
--- a/keyboards/rmi_kb/mona/v1/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
diff --git a/keyboards/rmi_kb/mona/v1_1/info.json b/keyboards/rmi_kb/mona/v1_1/keyboard.json
similarity index 99%
rename from keyboards/rmi_kb/mona/v1_1/info.json
rename to keyboards/rmi_kb/mona/v1_1/keyboard.json
index 3457d9cf739..7f25b8da478 100644
--- a/keyboards/rmi_kb/mona/v1_1/info.json
+++ b/keyboards/rmi_kb/mona/v1_1/keyboard.json
@@ -8,6 +8,12 @@
"pid": "0x404B",
"device_version": "0.1.1"
},
+ "features": {
+ "bootmagic": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": false
+ },
"matrix_pins": {
"cols": ["D0", "D3", "D2", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"],
"rows": ["D1", "D5", "B7", "F0", "F1"]
diff --git a/keyboards/rmi_kb/mona/v1_1/rules.mk b/keyboards/rmi_kb/mona/v1_1/rules.mk
deleted file mode 100644
index ab2c49da70e..00000000000
--- a/keyboards/rmi_kb/mona/v1_1/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
diff --git a/keyboards/rmi_kb/mona/v32a/info.json b/keyboards/rmi_kb/mona/v32a/keyboard.json
similarity index 99%
rename from keyboards/rmi_kb/mona/v32a/info.json
rename to keyboards/rmi_kb/mona/v32a/keyboard.json
index a489e0fffc6..363ea3438f5 100644
--- a/keyboards/rmi_kb/mona/v32a/info.json
+++ b/keyboards/rmi_kb/mona/v32a/keyboard.json
@@ -8,6 +8,12 @@
"pid": "0x4032",
"device_version": "0.1.1"
},
+ "features": {
+ "bootmagic": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": false
+ },
"matrix_pins": {
"cols": ["B4", "B3", "B2", "B1", "B0", "A0", "A1", "A2", "A5", "A4", "A3", "A7", "D5", "C7", "C6"],
"rows": ["C2", "C3", "D6", "D1", "A6"]
diff --git a/keyboards/rmi_kb/mona/v32a/rules.mk b/keyboards/rmi_kb/mona/v32a/rules.mk
index 1e9f9255447..c2ee0bc86f9 100644
--- a/keyboards/rmi_kb/mona/v32a/rules.mk
+++ b/keyboards/rmi_kb/mona/v32a/rules.mk
@@ -1,15 +1,2 @@
# Processor frequency
F_CPU = 16000000
-
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
diff --git a/keyboards/rmi_kb/tkl_ff/config.h b/keyboards/rmi_kb/tkl_ff/config.h
deleted file mode 100644
index 656deab55a6..00000000000
--- a/keyboards/rmi_kb/tkl_ff/config.h
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
-Copyright 2021 Ramon Imbao
-
-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
-
-/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
-#define LOCKING_SUPPORT_ENABLE
-/* Locking resynchronize hack */
-#define LOCKING_RESYNC_ENABLE
-
-/*
- * Feature disable options
- * These options are also useful to firmware size reduction.
- */
-
-/* disable debug print */
-//#define NO_DEBUG
-
-/* disable print */
-//#define NO_PRINT
-
-/* disable action features */
-//#define NO_ACTION_LAYER
-//#define NO_ACTION_TAPPING
-//#define NO_ACTION_ONESHOT
diff --git a/keyboards/rmi_kb/tkl_ff/info.json b/keyboards/rmi_kb/tkl_ff/info.json
index b09e0e888ec..a4fe24cab73 100644
--- a/keyboards/rmi_kb/tkl_ff/info.json
+++ b/keyboards/rmi_kb/tkl_ff/info.json
@@ -15,6 +15,12 @@
"mousekey": true,
"nkro": false
},
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
+ },
"matrix_pins": {
"cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D4", "D5", "B0", "B1", "D1"],
"rows": ["B2", "B3", "B7", "D6", "D3", "D2"]
diff --git a/keyboards/rmi_kb/tkl_ff/v2/info.json b/keyboards/rmi_kb/tkl_ff/v2/keyboard.json
similarity index 90%
rename from keyboards/rmi_kb/tkl_ff/v2/info.json
rename to keyboards/rmi_kb/tkl_ff/v2/keyboard.json
index 72a3406af3e..49e662fecc4 100644
--- a/keyboards/rmi_kb/tkl_ff/v2/info.json
+++ b/keyboards/rmi_kb/tkl_ff/v2/keyboard.json
@@ -2,6 +2,9 @@
"usb": {
"pid": "0x10FF"
},
+ "features": {
+ "rgblight": true
+ },
"rgblight": {
"hue_steps": 32,
"saturation_steps": 32,
diff --git a/keyboards/rmi_kb/tkl_ff/v2/rules.mk b/keyboards/rmi_kb/tkl_ff/v2/rules.mk
deleted file mode 100644
index 84ef473c02e..00000000000
--- a/keyboards/rmi_kb/tkl_ff/v2/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
diff --git a/keyboards/rmi_kb/wete/v1/info.json b/keyboards/rmi_kb/wete/v1/keyboard.json
similarity index 99%
rename from keyboards/rmi_kb/wete/v1/info.json
rename to keyboards/rmi_kb/wete/v1/keyboard.json
index 47a6befec34..569455923ca 100644
--- a/keyboards/rmi_kb/wete/v1/info.json
+++ b/keyboards/rmi_kb/wete/v1/keyboard.json
@@ -8,6 +8,17 @@
"pid": "0x00B5",
"device_version": "0.1.2"
},
+ "features": {
+ "backlight": true,
+ "bootmagic": false,
+ "command": true,
+ "console": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgblight": true,
+ "sleep_led": true
+ },
"matrix_pins": {
"cols": ["B13", "B14", "B15", "A8", "B0", "A7", "A5", "A4", "A3", "B9", "C13", "C14", "C15", "F0", "F1", "A0", "A1", "A2", "B8", "B7"],
"rows": ["A9", "B12", "B11", "B10", "B2", "B1"]
diff --git a/keyboards/rmi_kb/wete/v1/rules.mk b/keyboards/rmi_kb/wete/v1/rules.mk
deleted file mode 100644
index 108db79ad0b..00000000000
--- a/keyboards/rmi_kb/wete/v1/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = yes # Console for debug
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-SLEEP_LED_ENABLE = yes
-
diff --git a/keyboards/rmi_kb/wete/v2/info.json b/keyboards/rmi_kb/wete/v2/keyboard.json
similarity index 99%
rename from keyboards/rmi_kb/wete/v2/info.json
rename to keyboards/rmi_kb/wete/v2/keyboard.json
index 45ae1b5708c..140071d01f7 100644
--- a/keyboards/rmi_kb/wete/v2/info.json
+++ b/keyboards/rmi_kb/wete/v2/keyboard.json
@@ -8,6 +8,14 @@
"pid": "0x00B3",
"device_version": "35.0.0"
},
+ "features": {
+ "bootmagic": true,
+ "encoder": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": false,
+ "rgblight": true
+ },
"matrix_pins": {
"cols": ["B1", "B0", "B7", "B5", "B4", "D7", "D6", "D4", "D5", "D3"],
"rows": ["B3", "B2", "B6", "C6", "C7", "E6", "F7", "F6", "F5", "F4", "F1", "F0", null]
diff --git a/keyboards/rmi_kb/wete/v2/rules.mk b/keyboards/rmi_kb/wete/v2/rules.mk
deleted file mode 100644
index 7386bf69993..00000000000
--- a/keyboards/rmi_kb/wete/v2/rules.mk
+++ /dev/null
@@ -1,13 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-ENCODER_ENABLE = yes # Rotary encoder
diff --git a/keyboards/rocketboard_16/info.json b/keyboards/rocketboard_16/keyboard.json
similarity index 88%
rename from keyboards/rocketboard_16/info.json
rename to keyboards/rocketboard_16/keyboard.json
index 5e3ee7b0e8f..84baf6c5a76 100644
--- a/keyboards/rocketboard_16/info.json
+++ b/keyboards/rocketboard_16/keyboard.json
@@ -8,6 +8,20 @@
"pid": "0xFF16",
"device_version": "0.0.1"
},
+ "build": {
+ "lto": true
+ },
+ "features": {
+ "bootmagic": true,
+ "command": true,
+ "console": true,
+ "encoder": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "oled": true,
+ "rgblight": true
+ },
"processor": "STM32F103",
"bootloader": "stm32duino",
"matrix_pins": {
diff --git a/keyboards/rocketboard_16/rules.mk b/keyboards/rocketboard_16/rules.mk
index dcc3d4516bd..c8915ad1829 100644
--- a/keyboards/rocketboard_16/rules.mk
+++ b/keyboards/rocketboard_16/rules.mk
@@ -4,21 +4,4 @@ MCU_LDSCRIPT = STM32F103xB
# Extra include
SRC += keycode_lookup.c
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = yes # Console for debug
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB backlit keys
-AUDIO_ENABLE = no # Audio output
-OLED_ENABLE = yes
-ENCODER_ENABLE = yes
-
RAW_ENABLE = yes # Enables HID RAW communication between the board and the PC
-
-LTO_ENABLE = yes
diff --git a/keyboards/rookiebwoy/neopad/rev1/info.json b/keyboards/rookiebwoy/neopad/rev1/keyboard.json
similarity index 83%
rename from keyboards/rookiebwoy/neopad/rev1/info.json
rename to keyboards/rookiebwoy/neopad/rev1/keyboard.json
index 0a0340c06df..426d8af7ec0 100755
--- a/keyboards/rookiebwoy/neopad/rev1/info.json
+++ b/keyboards/rookiebwoy/neopad/rev1/keyboard.json
@@ -8,6 +8,15 @@
"pid": "0x0913",
"device_version": "0.1.0"
},
+ "features": {
+ "bootmagic": true,
+ "console": true,
+ "encoder": true,
+ "extrakey": true,
+ "key_lock": true,
+ "mousekey": true,
+ "nkro": false
+ },
"matrix_pins": {
"cols": ["B3", "B2", "B6"],
"rows": ["F4", "F5"]
diff --git a/keyboards/rookiebwoy/neopad/rev1/rules.mk b/keyboards/rookiebwoy/neopad/rev1/rules.mk
deleted file mode 100755
index 7816aab001a..00000000000
--- a/keyboards/rookiebwoy/neopad/rev1/rules.mk
+++ /dev/null
@@ -1,15 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = yes # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-
-ENCODER_ENABLE = yes
-KEY_LOCK_ENABLE = yes
diff --git a/keyboards/rose75/info.json b/keyboards/rose75/keyboard.json
similarity index 100%
rename from keyboards/rose75/info.json
rename to keyboards/rose75/keyboard.json
diff --git a/keyboards/rose75/rules.mk b/keyboards/rose75/rules.mk
deleted file mode 100644
index 6e7633bfe01..00000000000
--- a/keyboards/rose75/rules.mk
+++ /dev/null
@@ -1 +0,0 @@
-# This file intentionally left blank
diff --git a/keyboards/rot13labs/hackboard/info.json b/keyboards/rot13labs/hackboard/keyboard.json
similarity index 100%
rename from keyboards/rot13labs/hackboard/info.json
rename to keyboards/rot13labs/hackboard/keyboard.json
diff --git a/keyboards/rubi/info.json b/keyboards/rubi/keyboard.json
similarity index 90%
rename from keyboards/rubi/info.json
rename to keyboards/rubi/keyboard.json
index d61ef345481..e434977b37c 100644
--- a/keyboards/rubi/info.json
+++ b/keyboards/rubi/keyboard.json
@@ -8,6 +8,14 @@
"pid": "0x5242",
"device_version": "0.0.1"
},
+ "features": {
+ "bootmagic": false,
+ "encoder": true,
+ "extrakey": true,
+ "mousekey": false,
+ "nkro": true,
+ "oled": true
+ },
"matrix_pins": {
"cols": ["B3", "B2", "B1", "F7"],
"rows": ["F0", "F1", "F4", "F5", "F6"]
diff --git a/keyboards/rubi/rules.mk b/keyboards/rubi/rules.mk
index e4810730443..c10753cb62b 100644
--- a/keyboards/rubi/rules.mk
+++ b/keyboards/rubi/rules.mk
@@ -1,18 +1,3 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-OLED_ENABLE = yes
-ENCODER_ENABLE = yes
-
SRC += lib/oled.c \
lib/encoder.c \
lib/calc.c
diff --git a/keyboards/rura66/rev1/info.json b/keyboards/rura66/rev1/keyboard.json
similarity index 95%
rename from keyboards/rura66/rev1/info.json
rename to keyboards/rura66/rev1/keyboard.json
index 71bb374bfb7..ded87a7e0e9 100644
--- a/keyboards/rura66/rev1/info.json
+++ b/keyboards/rura66/rev1/keyboard.json
@@ -8,6 +8,17 @@
"pid": "0x0200",
"device_version": "0.0.1"
},
+ "build": {
+ "lto": true
+ },
+ "features": {
+ "bootmagic": false,
+ "extrakey": true,
+ "mousekey": false,
+ "nkro": false,
+ "oled": true,
+ "rgblight": true
+ },
"rgb_matrix": {
"driver": "ws2812"
},
diff --git a/keyboards/rura66/rev1/rules.mk b/keyboards/rura66/rev1/rules.mk
index ec47c1e0348..0e22d6afa96 100644
--- a/keyboards/rura66/rev1/rules.mk
+++ b/keyboards/rura66/rev1/rules.mk
@@ -1,7 +1 @@
-EXTRAKEY_ENABLE = yes # Audio control and System control
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-RGB_MATRIX_ENABLE = no
-ENCODER_ENABLE = no
-LTO_ENABLE = yes
-
SRC += oled_display.c
diff --git a/keyboards/rura66/rules.mk b/keyboards/rura66/rules.mk
index 4cbe55ac766..556ec176559 100644
--- a/keyboards/rura66/rules.mk
+++ b/keyboards/rura66/rules.mk
@@ -1,16 +1 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = yes # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = no # Commands for debug and configuration
-NKRO_ENABLE = no # Enable N-key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-OLED_ENABLE = yes
-LTO_ENABLE = yes
-
DEFAULT_FOLDER = rura66/rev1
diff --git a/keyboards/ryanskidmore/rskeys100/info.json b/keyboards/ryanskidmore/rskeys100/keyboard.json
similarity index 97%
rename from keyboards/ryanskidmore/rskeys100/info.json
rename to keyboards/ryanskidmore/rskeys100/keyboard.json
index dfd6ce5c24c..b42a23217dc 100644
--- a/keyboards/ryanskidmore/rskeys100/info.json
+++ b/keyboards/ryanskidmore/rskeys100/keyboard.json
@@ -7,6 +7,14 @@
"device_version": "0.0.1",
"force_nkro": true
},
+ "features": {
+ "bootmagic": true,
+ "command": true,
+ "extrakey": false,
+ "mousekey": false,
+ "nkro": true,
+ "rgb_matrix": true
+ },
"ws2812": {
"pin": "C7"
},
diff --git a/keyboards/ryanskidmore/rskeys100/rules.mk b/keyboards/ryanskidmore/rskeys100/rules.mk
index 8db3728a22a..179d02c3c68 100644
--- a/keyboards/ryanskidmore/rskeys100/rules.mk
+++ b/keyboards/ryanskidmore/rskeys100/rules.mk
@@ -1,16 +1,3 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no # Mouse keys
-EXTRAKEY_ENABLE = no # Audio control and System control
-CONSOLE_ENABLE = no # Console for debug
-COMMAND_ENABLE = yes # Commands for debug and configuration
-NKRO_ENABLE = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-RGB_MATRIX_ENABLE = yes
-AUDIO_ENABLE = no # Audio output
CUSTOM_MATRIX = lite
SRC += matrix.c