diff --git a/keyboards/xbows/woody/info.json b/keyboards/xbows/woody/keyboard.json
similarity index 97%
rename from keyboards/xbows/woody/info.json
rename to keyboards/xbows/woody/keyboard.json
index 487fc76698..538354507e 100644
--- a/keyboards/xbows/woody/info.json
+++ b/keyboards/xbows/woody/keyboard.json
@@ -8,6 +8,13 @@
"pid": "0x1224",
"device_version": "0.0.1"
},
+ "features": {
+ "bootmagic": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgb_matrix": true
+ },
"rgb_matrix": {
"animations": {
"alphas_mods": true,
diff --git a/keyboards/xbows/woody/rules.mk b/keyboards/xbows/woody/rules.mk
deleted file mode 100644
index d9a69f35bb..0000000000
--- a/keyboards/xbows/woody/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-# change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
-BACKLIGHT_ENABLE = no
-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
-AUDIO_ENABLE = no
-RGB_MATRIX_ENABLE = yes # Use RGB matrix
diff --git a/keyboards/xelus/dawn60/info.json b/keyboards/xelus/dawn60/info.json
index 4bdc6df8a9..aafac25e05 100644
--- a/keyboards/xelus/dawn60/info.json
+++ b/keyboards/xelus/dawn60/info.json
@@ -8,6 +8,12 @@
"pid": "0x0060",
"device_version": "0.0.1"
},
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
+ },
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
"layout_aliases": {
diff --git a/keyboards/xelus/dawn60/rev1/config.h b/keyboards/xelus/dawn60/rev1/config.h
index 2552942635..e64b0895fa 100644
--- a/keyboards/xelus/dawn60/rev1/config.h
+++ b/keyboards/xelus/dawn60/rev1/config.h
@@ -20,11 +20,6 @@
#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
#define IS31FL3731_LED_COUNT 64
-// 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.
diff --git a/keyboards/xelus/dawn60/rev1/info.json b/keyboards/xelus/dawn60/rev1/keyboard.json
similarity index 98%
rename from keyboards/xelus/dawn60/rev1/info.json
rename to keyboards/xelus/dawn60/rev1/keyboard.json
index 872bf0d33a..bfdaf26e76 100644
--- a/keyboards/xelus/dawn60/rev1/info.json
+++ b/keyboards/xelus/dawn60/rev1/keyboard.json
@@ -1,4 +1,10 @@
{
+ "features": {
+ "bootmagic": true,
+ "extrakey": true,
+ "mousekey": false,
+ "nkro": true
+ },
"ws2812": {
"pin": "F0"
},
diff --git a/keyboards/xelus/dawn60/rev1/rules.mk b/keyboards/xelus/dawn60/rev1/rules.mk
index 0a72a60eca..879710e8e7 100644
--- a/keyboards/xelus/dawn60/rev1/rules.mk
+++ b/keyboards/xelus/dawn60/rev1/rules.mk
@@ -3,27 +3,12 @@
# backlight effects.
OPT_DEFS += -DNO_SUSPEND_POWER_DOWN
-# 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 = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-AUDIO_ENABLE = no # Audio output
-RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. - We have custom RGB underglow
-
CIE1931_CURVE = yes
+I2C_DRIVER_REQUIRED = yes
WS2812_DRIVER_REQUIRED = yes
-
# project specific files
SRC += keyboards/wilba_tech/wt_main.c \
keyboards/wilba_tech/wt_rgb_backlight.c \
quantum/color.c \
drivers/led/issi/is31fl3731.c
-
-I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/xelus/dawn60/rev1_qmk/config.h b/keyboards/xelus/dawn60/rev1_qmk/config.h
index 81d5dc1e83..b54fcaee2a 100644
--- a/keyboards/xelus/dawn60/rev1_qmk/config.h
+++ b/keyboards/xelus/dawn60/rev1_qmk/config.h
@@ -15,11 +15,6 @@
*/
#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
-
//RGB Underglow defines
#define WS2812_LED_TOTAL 20
diff --git a/keyboards/xelus/dawn60/rev1_qmk/info.json b/keyboards/xelus/dawn60/rev1_qmk/keyboard.json
similarity index 98%
rename from keyboards/xelus/dawn60/rev1_qmk/info.json
rename to keyboards/xelus/dawn60/rev1_qmk/keyboard.json
index 12d6a5d529..7c3aa607df 100644
--- a/keyboards/xelus/dawn60/rev1_qmk/info.json
+++ b/keyboards/xelus/dawn60/rev1_qmk/keyboard.json
@@ -1,4 +1,15 @@
{
+ "build": {
+ "lto": true
+ },
+ "features": {
+ "bootmagic": true,
+ "console": true,
+ "extrakey": true,
+ "mousekey": false,
+ "nkro": true,
+ "rgb_matrix": true
+ },
"ws2812": {
"pin": "F0"
},
diff --git a/keyboards/xelus/dawn60/rev1_qmk/rules.mk b/keyboards/xelus/dawn60/rev1_qmk/rules.mk
index edb15fa760..5a17af39fc 100644
--- a/keyboards/xelus/dawn60/rev1_qmk/rules.mk
+++ b/keyboards/xelus/dawn60/rev1_qmk/rules.mk
@@ -3,28 +3,9 @@
# backlight effects.
OPT_DEFS += -DNO_SUSPEND_POWER_DOWN
-# 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 = yes # 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
-AUDIO_ENABLE = no # Audio output
-FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
-RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. - We have custom RGB underglow
-
-RGB_MATRIX_ENABLE = yes # Enable RGB matrix effects.
+I2C_DRIVER_REQUIRED = yes
WS2812_DRIVER_REQUIRED = yes
-COMMON_VPATH += $(DRIVER_PATH)/issi
-
# project specific files
+COMMON_VPATH += $(DRIVER_PATH)/issi
SRC += drivers/led/issi/is31fl3731.c
-
-I2C_DRIVER_REQUIRED = yes
-
-LTO_ENABLE = yes
diff --git a/keyboards/xelus/la_plus/config.h b/keyboards/xelus/la_plus/config.h
deleted file mode 100755
index c8b4a6e5b1..0000000000
--- a/keyboards/xelus/la_plus/config.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Copyright 2021 Harrison Chan (Xelus)
- *
- * 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
-
-// Custom Startup Animation
-// comment out for solid animation
-// #define STARTUP_ANIMATION_DOTS
diff --git a/keyboards/xelus/la_plus/info.json b/keyboards/xelus/la_plus/keyboard.json
similarity index 97%
rename from keyboards/xelus/la_plus/info.json
rename to keyboards/xelus/la_plus/keyboard.json
index 85e4e60215..902364471f 100644
--- a/keyboards/xelus/la_plus/info.json
+++ b/keyboards/xelus/la_plus/keyboard.json
@@ -8,6 +8,23 @@
"pid": "0x4C50",
"device_version": "0.0.1"
},
+ "build": {
+ "lto": true
+ },
+ "features": {
+ "bootmagic": true,
+ "console": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgb_matrix": true
+ },
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
+ },
"ws2812": {
"pin": "F1"
},
diff --git a/keyboards/xelus/la_plus/rules.mk b/keyboards/xelus/la_plus/rules.mk
index 7f3c8075a5..942ef4c5db 100755
--- a/keyboards/xelus/la_plus/rules.mk
+++ b/keyboards/xelus/la_plus/rules.mk
@@ -1,16 +1 @@
-# 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 = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-AUDIO_ENABLE = no # Audio output
-
-RGB_MATRIX_ENABLE = yes
RGB_MATRIX_CUSTOM_KB = yes
-
-LTO_ENABLE = yes
diff --git a/keyboards/xelus/pachi/rgb/info.json b/keyboards/xelus/pachi/rgb/info.json
new file mode 100644
index 0000000000..9bf3ca04ef
--- /dev/null
+++ b/keyboards/xelus/pachi/rgb/info.json
@@ -0,0 +1,20 @@
+{
+ "build": {
+ "lto": true
+ },
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgb_matrix": true
+ },
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
+ }
+}
diff --git a/keyboards/xelus/pachi/rgb/rev1/config.h b/keyboards/xelus/pachi/rgb/rev1/config.h
index 6cb40a9fae..8ed9a35633 100644
--- a/keyboards/xelus/pachi/rgb/rev1/config.h
+++ b/keyboards/xelus/pachi/rgb/rev1/config.h
@@ -16,12 +16,6 @@
#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
-
// I2C setup
#define I2C1_SCL_PIN B8
#define I2C1_SDA_PIN B9
diff --git a/keyboards/xelus/pachi/rgb/rev1/info.json b/keyboards/xelus/pachi/rgb/rev1/keyboard.json
similarity index 100%
rename from keyboards/xelus/pachi/rgb/rev1/info.json
rename to keyboards/xelus/pachi/rgb/rev1/keyboard.json
diff --git a/keyboards/xelus/pachi/rgb/rev1/rules.mk b/keyboards/xelus/pachi/rgb/rev1/rules.mk
index 4c27f45008..8ecbd28acc 100644
--- a/keyboards/xelus/pachi/rgb/rev1/rules.mk
+++ b/keyboards/xelus/pachi/rgb/rev1/rules.mk
@@ -1,20 +1,4 @@
-# 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 = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-AUDIO_ENABLE = no # Audio output
-FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
-
-RGB_MATRIX_ENABLE = yes
-
COMMON_VPATH += $(DRIVER_PATH)/issi
SRC += drivers/led/issi/is31fl3741.c
-LTO_ENABLE = yes
OPT = 2
diff --git a/keyboards/xelus/pachi/rgb/rev2/config.h b/keyboards/xelus/pachi/rgb/rev2/config.h
index 50f7d6ac1d..a5fc38e070 100644
--- a/keyboards/xelus/pachi/rgb/rev2/config.h
+++ b/keyboards/xelus/pachi/rgb/rev2/config.h
@@ -16,12 +16,6 @@
#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
-
// I2C setup
#define I2C1_SCL_PIN B6
#define I2C1_SDA_PIN B7
diff --git a/keyboards/xelus/pachi/rgb/rev2/info.json b/keyboards/xelus/pachi/rgb/rev2/keyboard.json
similarity index 100%
rename from keyboards/xelus/pachi/rgb/rev2/info.json
rename to keyboards/xelus/pachi/rgb/rev2/keyboard.json
diff --git a/keyboards/xelus/pachi/rgb/rev2/rules.mk b/keyboards/xelus/pachi/rgb/rev2/rules.mk
index 62bb12bfb0..8ecbd28acc 100644
--- a/keyboards/xelus/pachi/rgb/rev2/rules.mk
+++ b/keyboards/xelus/pachi/rgb/rev2/rules.mk
@@ -1,19 +1,4 @@
-# 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 = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-AUDIO_ENABLE = no # Audio output
-
-RGB_MATRIX_ENABLE = yes
-
COMMON_VPATH += $(DRIVER_PATH)/issi
SRC += drivers/led/issi/is31fl3741.c
-LTO_ENABLE = yes
OPT = 2
diff --git a/keyboards/xelus/rs108/config.h b/keyboards/xelus/rs108/config.h
index 45f2a54530..3d3bc49228 100644
--- a/keyboards/xelus/rs108/config.h
+++ b/keyboards/xelus/rs108/config.h
@@ -15,12 +15,6 @@
*/
#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
-
// I2C config
#define I2C1_SCL_PIN B8
#define I2C1_SDA_PIN B9
diff --git a/keyboards/xelus/rs108/info.json b/keyboards/xelus/rs108/keyboard.json
similarity index 95%
rename from keyboards/xelus/rs108/info.json
rename to keyboards/xelus/rs108/keyboard.json
index 0342177e64..12ffbb3fdc 100644
--- a/keyboards/xelus/rs108/info.json
+++ b/keyboards/xelus/rs108/keyboard.json
@@ -7,7 +7,23 @@
"vid": "0x5845",
"pid": "0x5208",
"device_version": "0.0.2",
- "force_nkro": true
+ "force_nkro": true,
+ "shared_endpoint": {
+ "keyboard": true
+ }
+ },
+ "features": {
+ "bootmagic": true,
+ "console": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true
+ },
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
},
"matrix_pins": {
"cols": ["A10", "A8", "B15", "B14", "B13", "B12", "B1", "B10", "B4", "B3", "A15"],
diff --git a/keyboards/xelus/rs108/rules.mk b/keyboards/xelus/rs108/rules.mk
deleted file mode 100644
index b763de52c7..0000000000
--- a/keyboards/xelus/rs108/rules.mk
+++ /dev/null
@@ -1,16 +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 = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-
-# Save hid interface
-KEYBOARD_SHARED_EP = yes
-
diff --git a/keyboards/xelus/rs60/info.json b/keyboards/xelus/rs60/info.json
index 98b545a9e8..c1771427f1 100644
--- a/keyboards/xelus/rs60/info.json
+++ b/keyboards/xelus/rs60/info.json
@@ -7,5 +7,11 @@
"vid": "0x5845",
"pid": "0x5253"
},
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
+ },
"community_layouts": ["60_ansi_split_bs_rshift", "60_ansi", "60_ansi_tsangan", "60_tsangan_hhkb"]
}
diff --git a/keyboards/xelus/rs60/rev1/config.h b/keyboards/xelus/rs60/rev1/config.h
deleted file mode 100644
index 3c53ebc8bc..0000000000
--- a/keyboards/xelus/rs60/rev1/config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Copyright 2021 Harrison Chan (Xelus)
- *
- * 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/xelus/rs60/rev2_0/config.h b/keyboards/xelus/rs60/rev2_0/config.h
index 45f2a54530..3d3bc49228 100644
--- a/keyboards/xelus/rs60/rev2_0/config.h
+++ b/keyboards/xelus/rs60/rev2_0/config.h
@@ -15,12 +15,6 @@
*/
#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
-
// I2C config
#define I2C1_SCL_PIN B8
#define I2C1_SDA_PIN B9
diff --git a/keyboards/xelus/rs60/rev2_0/info.json b/keyboards/xelus/rs60/rev2_0/keyboard.json
similarity index 98%
rename from keyboards/xelus/rs60/rev2_0/info.json
rename to keyboards/xelus/rs60/rev2_0/keyboard.json
index 499a5a922f..9cb7b24043 100644
--- a/keyboards/xelus/rs60/rev2_0/info.json
+++ b/keyboards/xelus/rs60/rev2_0/keyboard.json
@@ -1,7 +1,18 @@
{
"usb": {
"device_version": "0.2.0",
- "force_nkro": true
+ "force_nkro": true,
+ "shared_endpoint": {
+ "keyboard": true
+ }
+ },
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true
},
"matrix_pins": {
"cols": ["B13", "A7", "A6", "A5", "A4", "A3", "A2", "B7", "B6", "B5", "B4", "B3", "A15", "A14"],
diff --git a/keyboards/xelus/rs60/rev2_0/rules.mk b/keyboards/xelus/rs60/rev2_0/rules.mk
deleted file mode 100644
index b763de52c7..0000000000
--- a/keyboards/xelus/rs60/rev2_0/rules.mk
+++ /dev/null
@@ -1,16 +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 = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-
-# Save hid interface
-KEYBOARD_SHARED_EP = yes
-
diff --git a/keyboards/xelus/rs60/rev2_1/config.h b/keyboards/xelus/rs60/rev2_1/config.h
deleted file mode 100644
index 430a5a47f7..0000000000
--- a/keyboards/xelus/rs60/rev2_1/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Copyright 2022 Harrison Chan (Xelus)
- *
- * 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/xelus/rs60/rev2_1/info.json b/keyboards/xelus/rs60/rev2_1/keyboard.json
similarity index 98%
rename from keyboards/xelus/rs60/rev2_1/info.json
rename to keyboards/xelus/rs60/rev2_1/keyboard.json
index fe87561e61..d7e56fe1cf 100644
--- a/keyboards/xelus/rs60/rev2_1/info.json
+++ b/keyboards/xelus/rs60/rev2_1/keyboard.json
@@ -1,7 +1,18 @@
{
"usb": {
"device_version": "0.2.1",
- "force_nkro": true
+ "force_nkro": true,
+ "shared_endpoint": {
+ "keyboard": true
+ }
+ },
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true
},
"matrix_pins": {
"cols": ["B13", "A7", "A6", "A5", "A4", "A3", "A2", "B7", "B6", "B5", "B4", "B3", "A15", "A14"],
diff --git a/keyboards/xelus/rs60/rev2_1/rules.mk b/keyboards/xelus/rs60/rev2_1/rules.mk
deleted file mode 100644
index b763de52c7..0000000000
--- a/keyboards/xelus/rs60/rev2_1/rules.mk
+++ /dev/null
@@ -1,16 +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 = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-
-# Save hid interface
-KEYBOARD_SHARED_EP = yes
-
diff --git a/keyboards/xelus/trinityxttkl/config.h b/keyboards/xelus/trinityxttkl/config.h
deleted file mode 100644
index 651f613045..0000000000
--- a/keyboards/xelus/trinityxttkl/config.h
+++ /dev/null
@@ -1,22 +0,0 @@
-/* Copyright 2021 Harrison Chan (Xelus)
- *
- * 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/xelus/trinityxttkl/info.json b/keyboards/xelus/trinityxttkl/keyboard.json
similarity index 99%
rename from keyboards/xelus/trinityxttkl/info.json
rename to keyboards/xelus/trinityxttkl/keyboard.json
index f3b8956b13..eea94c5979 100644
--- a/keyboards/xelus/trinityxttkl/info.json
+++ b/keyboards/xelus/trinityxttkl/keyboard.json
@@ -8,6 +8,19 @@
"pid": "0x5854",
"device_version": "0.0.1"
},
+ "features": {
+ "bootmagic": true,
+ "console": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true
+ },
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
+ },
"matrix_pins": {
"cols": ["A9", "A8", "B15", "B14", "B13", "B12", "B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A10", "B9", "B4"],
"rows": ["A14", "A15", "B3", "A2", "B6", "B5"]
diff --git a/keyboards/xelus/trinityxttkl/rules.mk b/keyboards/xelus/trinityxttkl/rules.mk
index ef90964f9b..0ab54aaaf7 100644
--- a/keyboards/xelus/trinityxttkl/rules.mk
+++ b/keyboards/xelus/trinityxttkl/rules.mk
@@ -1,16 +1,2 @@
# Wildcard to allow APM32 MCU
DFU_SUFFIX_ARGS = -v FFFF -p FFFF
-
-# 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 = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no
-RGBLIGHT_ENABLE = no
-
-
diff --git a/keyboards/xelus/valor/info.json b/keyboards/xelus/valor/info.json
new file mode 100644
index 0000000000..588361fc98
--- /dev/null
+++ b/keyboards/xelus/valor/info.json
@@ -0,0 +1,8 @@
+{
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
+ }
+}
diff --git a/keyboards/xelus/valor/rev1/config.h b/keyboards/xelus/valor/rev1/config.h
deleted file mode 100644
index fe18ba5b71..0000000000
--- a/keyboards/xelus/valor/rev1/config.h
+++ /dev/null
@@ -1,23 +0,0 @@
-/* Copyright 2020 Harrison Chan (Xelus)
- *
- * 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/xelus/valor/rev2/config.h b/keyboards/xelus/valor/rev2/config.h
index 9491d1f175..7b968ea2a3 100644
--- a/keyboards/xelus/valor/rev2/config.h
+++ b/keyboards/xelus/valor/rev2/config.h
@@ -16,12 +16,6 @@
#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
-
// I2C setup
#define I2C1_SCL_PIN B8
#define I2C1_SDA_PIN B9
diff --git a/keyboards/xelus/valor/rev2/info.json b/keyboards/xelus/valor/rev2/keyboard.json
similarity index 98%
rename from keyboards/xelus/valor/rev2/info.json
rename to keyboards/xelus/valor/rev2/keyboard.json
index 196c1ad1c4..21de5fb4a2 100644
--- a/keyboards/xelus/valor/rev2/info.json
+++ b/keyboards/xelus/valor/rev2/keyboard.json
@@ -8,6 +8,16 @@
"pid": "0x5653",
"device_version": "0.0.1"
},
+ "build": {
+ "lto": true
+ },
+ "features": {
+ "bootmagic": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgb_matrix": true
+ },
"ws2812": {
"pin": "A9",
"driver": "pwm"
diff --git a/keyboards/xelus/valor/rev2/rules.mk b/keyboards/xelus/valor/rev2/rules.mk
index 7fd72e35e7..8d76aac36c 100644
--- a/keyboards/xelus/valor/rev2/rules.mk
+++ b/keyboards/xelus/valor/rev2/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
-RGB_MATRIX_ENABLE = yes
RGB_MATRIX_CUSTOM_KB = yes
OPT = 2
-LTO_ENABLE = yes
diff --git a/keyboards/xelus/valor_frl_tkl/info.json b/keyboards/xelus/valor_frl_tkl/info.json
index fee349b989..a0b7a70a89 100644
--- a/keyboards/xelus/valor_frl_tkl/info.json
+++ b/keyboards/xelus/valor_frl_tkl/info.json
@@ -6,6 +6,12 @@
"vid": "0x5845",
"pid": "0x4654"
},
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
+ },
"layout_aliases": {
"LAYOUT_all": "LAYOUT_ansi_split_bs_rshift"
},
diff --git a/keyboards/xelus/valor_frl_tkl/rev1/config.h b/keyboards/xelus/valor_frl_tkl/rev1/config.h
index af702fcafd..44406be7b5 100644
--- a/keyboards/xelus/valor_frl_tkl/rev1/config.h
+++ b/keyboards/xelus/valor_frl_tkl/rev1/config.h
@@ -16,12 +16,6 @@
#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
-
// I2C OLED defines
#define I2C1_SCL_PIN B8
#define I2C1_SDA_PIN B9
diff --git a/keyboards/xelus/valor_frl_tkl/rev2_0/config.h b/keyboards/xelus/valor_frl_tkl/rev2_0/config.h
index cb37aaa4cc..b085b99d88 100644
--- a/keyboards/xelus/valor_frl_tkl/rev2_0/config.h
+++ b/keyboards/xelus/valor_frl_tkl/rev2_0/config.h
@@ -16,10 +16,4 @@
#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
-
#define STM32_HSECLK 16000000
diff --git a/keyboards/xelus/valor_frl_tkl/rev2_0/info.json b/keyboards/xelus/valor_frl_tkl/rev2_0/keyboard.json
similarity index 56%
rename from keyboards/xelus/valor_frl_tkl/rev2_0/info.json
rename to keyboards/xelus/valor_frl_tkl/rev2_0/keyboard.json
index d3e2177793..36db1d4398 100644
--- a/keyboards/xelus/valor_frl_tkl/rev2_0/info.json
+++ b/keyboards/xelus/valor_frl_tkl/rev2_0/keyboard.json
@@ -1,7 +1,18 @@
{
"keyboard_name": "Valor FRL TKL Rev2.0",
"usb": {
- "device_version": "0.0.2"
+ "device_version": "0.0.2",
+ "shared_endpoint": {
+ "keyboard": true
+ }
+ },
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true
},
"matrix_pins": {
"cols": ["A9", "A8", "B15", "B14", "B13", "B12", "B9", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A2", "A1", "A0"],
diff --git a/keyboards/xelus/valor_frl_tkl/rev2_0/rules.mk b/keyboards/xelus/valor_frl_tkl/rev2_0/rules.mk
deleted file mode 100644
index 8ee0c3e8fe..0000000000
--- a/keyboards/xelus/valor_frl_tkl/rev2_0/rules.mk
+++ /dev/null
@@ -1,14 +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 = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-
-KEYBOARD_SHARED_EP = yes
diff --git a/keyboards/xelus/valor_frl_tkl/rev2_1/config.h b/keyboards/xelus/valor_frl_tkl/rev2_1/config.h
index cb37aaa4cc..b085b99d88 100644
--- a/keyboards/xelus/valor_frl_tkl/rev2_1/config.h
+++ b/keyboards/xelus/valor_frl_tkl/rev2_1/config.h
@@ -16,10 +16,4 @@
#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
-
#define STM32_HSECLK 16000000
diff --git a/keyboards/xelus/valor_frl_tkl/rev2_1/info.json b/keyboards/xelus/valor_frl_tkl/rev2_1/keyboard.json
similarity index 56%
rename from keyboards/xelus/valor_frl_tkl/rev2_1/info.json
rename to keyboards/xelus/valor_frl_tkl/rev2_1/keyboard.json
index 61a26ca4c9..376d73a429 100644
--- a/keyboards/xelus/valor_frl_tkl/rev2_1/info.json
+++ b/keyboards/xelus/valor_frl_tkl/rev2_1/keyboard.json
@@ -1,7 +1,18 @@
{
"keyboard_name": "Valor FRL TKL Rev2.2",
"usb": {
- "device_version": "0.0.3"
+ "device_version": "0.0.3",
+ "shared_endpoint": {
+ "keyboard": true
+ }
+ },
+ "features": {
+ "bootmagic": true,
+ "command": false,
+ "console": false,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true
},
"matrix_pins": {
"cols": ["A10", "A8", "B15", "B14", "B13", "B12", "B9", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A2", "A1", "A0"],
diff --git a/keyboards/xelus/valor_frl_tkl/rev2_1/rules.mk b/keyboards/xelus/valor_frl_tkl/rev2_1/rules.mk
deleted file mode 100644
index 8ee0c3e8fe..0000000000
--- a/keyboards/xelus/valor_frl_tkl/rev2_1/rules.mk
+++ /dev/null
@@ -1,14 +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 = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-
-KEYBOARD_SHARED_EP = yes
diff --git a/keyboards/xelus/xs60/hotswap/config.h b/keyboards/xelus/xs60/hotswap/config.h
index 877313776a..17967f05f5 100644
--- a/keyboards/xelus/xs60/hotswap/config.h
+++ b/keyboards/xelus/xs60/hotswap/config.h
@@ -16,12 +16,6 @@
#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
-
// I2C setup
#define I2C1_SCL_PAL_MODE 4
#define I2C1_SDA_PAL_MODE 4
diff --git a/keyboards/xelus/xs60/hotswap/info.json b/keyboards/xelus/xs60/hotswap/keyboard.json
similarity index 100%
rename from keyboards/xelus/xs60/hotswap/info.json
rename to keyboards/xelus/xs60/hotswap/keyboard.json
diff --git a/keyboards/xelus/xs60/hotswap/rules.mk b/keyboards/xelus/xs60/hotswap/rules.mk
index f632b896ab..3aa0e2bf06 100644
--- a/keyboards/xelus/xs60/hotswap/rules.mk
+++ b/keyboards/xelus/xs60/hotswap/rules.mk
@@ -1,16 +1 @@
-# 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 = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-AUDIO_ENABLE = no # Audio output
-
-RGBLIGHT_ENABLE = yes
-
-LTO_ENABLE = yes
OPT = 2
diff --git a/keyboards/xelus/xs60/info.json b/keyboards/xelus/xs60/info.json
new file mode 100644
index 0000000000..719cf2aac1
--- /dev/null
+++ b/keyboards/xelus/xs60/info.json
@@ -0,0 +1,19 @@
+{
+ "build": {
+ "lto": true
+ },
+ "features": {
+ "bootmagic": true,
+ "console": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgblight": true
+ },
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
+ }
+}
diff --git a/keyboards/xelus/xs60/soldered/config.h b/keyboards/xelus/xs60/soldered/config.h
index 5b966800c6..8ab23ab40c 100644
--- a/keyboards/xelus/xs60/soldered/config.h
+++ b/keyboards/xelus/xs60/soldered/config.h
@@ -16,12 +16,6 @@
#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
-
// I2C setup
#define I2C1_SCL_PAL_MODE 4
#define I2C1_SDA_PAL_MODE 4
diff --git a/keyboards/xelus/xs60/soldered/info.json b/keyboards/xelus/xs60/soldered/keyboard.json
similarity index 100%
rename from keyboards/xelus/xs60/soldered/info.json
rename to keyboards/xelus/xs60/soldered/keyboard.json
diff --git a/keyboards/xelus/xs60/soldered/rules.mk b/keyboards/xelus/xs60/soldered/rules.mk
index f632b896ab..3aa0e2bf06 100644
--- a/keyboards/xelus/xs60/soldered/rules.mk
+++ b/keyboards/xelus/xs60/soldered/rules.mk
@@ -1,16 +1 @@
-# 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 = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-AUDIO_ENABLE = no # Audio output
-
-RGBLIGHT_ENABLE = yes
-
-LTO_ENABLE = yes
OPT = 2
diff --git a/keyboards/xenon/config.h b/keyboards/xenon/config.h
deleted file mode 100644
index 4a0752d371..0000000000
--- a/keyboards/xenon/config.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
-Copyright 2020 Kyrre Havik Eriksen
-
-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
-
-#ifdef OLED_ENABLE
- #define OLED_DISPLAY_128X32
-#endif
-
-// If you are using an Elite C rev3 on the slave side, uncomment the lines below:
-// #define SPLIT_USB_DETECT
-// #define NO_USB_STARTUP_CHECK
diff --git a/keyboards/xenon/info.json b/keyboards/xenon/keyboard.json
similarity index 92%
rename from keyboards/xenon/info.json
rename to keyboards/xenon/keyboard.json
index de20eacaf4..7f78988525 100644
--- a/keyboards/xenon/info.json
+++ b/keyboards/xenon/keyboard.json
@@ -8,6 +8,21 @@
"pid": "0x3404",
"device_version": "0.0.1"
},
+ "features": {
+ "bootmagic": false,
+ "console": true,
+ "encoder": true,
+ "extrakey": true,
+ "mousekey": false,
+ "nkro": false,
+ "oled": true
+ },
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
+ },
"matrix_pins": {
"cols": ["B2", "B3", "B1", "F7", "F6", "F5", "F4"],
"rows": ["D4", "C6", "D7", "E6", "B4"]
diff --git a/keyboards/xenon/rules.mk b/keyboards/xenon/rules.mk
deleted file mode 100644
index 108932bcce..0000000000
--- a/keyboards/xenon/rules.mk
+++ /dev/null
@@ -1,14 +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 = 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
-OLED_ENABLE = yes
-ENCODER_ENABLE = yes
diff --git a/keyboards/xiaomi/mk02/config.h b/keyboards/xiaomi/mk02/config.h
index 093618f2b3..fc20837593 100644
--- a/keyboards/xiaomi/mk02/config.h
+++ b/keyboards/xiaomi/mk02/config.h
@@ -18,19 +18,3 @@ along with this program. If not, see .
#pragma once
#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP FALSE
-
-/*
- * 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/xiaomi/mk02/info.json b/keyboards/xiaomi/mk02/keyboard.json
similarity index 98%
rename from keyboards/xiaomi/mk02/info.json
rename to keyboards/xiaomi/mk02/keyboard.json
index 16cbfd1703..28d5d8a17d 100644
--- a/keyboards/xiaomi/mk02/info.json
+++ b/keyboards/xiaomi/mk02/keyboard.json
@@ -8,6 +8,8 @@
"pid": "0x0B91",
"device_version": "0.0.1"
},
+ "processor": "STM32F072",
+ "bootloader": "custom",
"matrix_pins": {
"cols": ["B13", "B14", "B15", "A15", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "C14", "C15", "B11", "A1", "A2", "B12"],
"rows": ["A3", "A4", "A5", "A6", "A7", "B0"]
diff --git a/keyboards/xiaomi/mk02/rules.mk b/keyboards/xiaomi/mk02/rules.mk
index c20d67dd89..5920e3de5f 100644
--- a/keyboards/xiaomi/mk02/rules.mk
+++ b/keyboards/xiaomi/mk02/rules.mk
@@ -1,19 +1,6 @@
-# MCU name
-MCU = STM32F072
+# custom bootloader
BOARD = ST_STM32F072B_DISCOVERY
MCU_LDSCRIPT = STM32F072_0x2000_bootloader
-# Bootloader selection
-BOOTLOADER = custom
-
DFU_ARGS = -d 0483:df11 -a 0 -s 0x08002000:leave
DFU_SUFFIX_ARGS = -v 0483 -p DF11
-
-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 = yes # This is broken on 072 for some reason
-RGBLIGHT_ENABLE = no
diff --git a/keyboards/xiudi/xd002/info.json b/keyboards/xiudi/xd002/keyboard.json
similarity index 78%
rename from keyboards/xiudi/xd002/info.json
rename to keyboards/xiudi/xd002/keyboard.json
index 1e0b22f96b..98b06cb84a 100644
--- a/keyboards/xiudi/xd002/info.json
+++ b/keyboards/xiudi/xd002/keyboard.json
@@ -8,6 +8,16 @@
"pid": "0x0202",
"device_version": "0.0.1"
},
+ "processor": "attiny85",
+ "bootloader": "custom",
+ "build": {
+ "lto": true
+ },
+ "features": {
+ "grave_esc": false,
+ "magic": false,
+ "space_cadet": false
+ },
"rgblight": {
"led_count": 2
},
diff --git a/keyboards/xiudi/xd002/rules.mk b/keyboards/xiudi/xd002/rules.mk
index 70c620c8f0..e31f5d531f 100644
--- a/keyboards/xiudi/xd002/rules.mk
+++ b/keyboards/xiudi/xd002/rules.mk
@@ -1,26 +1,3 @@
-# MCU name
-MCU = attiny85
-
-# Bootloader selection
-BOOTLOADER = custom
+# custom bootloader
OPT_DEFS += -DBOOTLOADER_SIZE=1862
PROGRAM_CMD = micronucleus --run $(BUILD_DIR)/$(TARGET).hex
-
-# 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
-
-# Save as much space as we can...
-LTO_ENABLE = yes
-GRAVE_ESC_ENABLE = no
-MAGIC_ENABLE = no
-SPACE_CADET_ENABLE = no
diff --git a/keyboards/xiudi/xd84/config.h b/keyboards/xiudi/xd84/config.h
index 0ad3910060..e40e570c14 100644
--- a/keyboards/xiudi/xd84/config.h
+++ b/keyboards/xiudi/xd84/config.h
@@ -16,28 +16,6 @@
#pragma once
-
/* key matrix size */
#define MATRIX_ROWS 6
#define MATRIX_COLS 15
-
-/* 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/xiudi/xd84/info.json b/keyboards/xiudi/xd84/keyboard.json
similarity index 96%
rename from keyboards/xiudi/xd84/info.json
rename to keyboards/xiudi/xd84/keyboard.json
index b97efe9cf8..0411869633 100644
--- a/keyboards/xiudi/xd84/info.json
+++ b/keyboards/xiudi/xd84/keyboard.json
@@ -8,6 +8,23 @@
"pid": "0x8484",
"device_version": "0.0.1"
},
+ "build": {
+ "lto": true
+ },
+ "features": {
+ "backlight": true,
+ "bootmagic": true,
+ "extrakey": true,
+ "mousekey": false,
+ "nkro": false,
+ "rgblight": true
+ },
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
+ },
"backlight": {
"pin": "B5",
"levels": 10,
diff --git a/keyboards/xiudi/xd84/rules.mk b/keyboards/xiudi/xd84/rules.mk
index 89d05c5487..e11c65db02 100644
--- a/keyboards/xiudi/xd84/rules.mk
+++ b/keyboards/xiudi/xd84/rules.mk
@@ -1,17 +1,3 @@
-# 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 = yes # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-LTO_ENABLE = yes
-
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/xiudi/xd96/config.h b/keyboards/xiudi/xd96/config.h
index 059b57a0c6..6eb4fc5f58 100644
--- a/keyboards/xiudi/xd96/config.h
+++ b/keyboards/xiudi/xd96/config.h
@@ -16,28 +16,6 @@
#pragma once
-
/* key matrix size */
#define MATRIX_ROWS 6
#define MATRIX_COLS 18
-
-/* 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/xiudi/xd96/info.json b/keyboards/xiudi/xd96/keyboard.json
similarity index 98%
rename from keyboards/xiudi/xd96/info.json
rename to keyboards/xiudi/xd96/keyboard.json
index 2b4ee4aad0..df1fd1cfd4 100644
--- a/keyboards/xiudi/xd96/info.json
+++ b/keyboards/xiudi/xd96/keyboard.json
@@ -8,6 +8,23 @@
"pid": "0x9696",
"device_version": "0.0.1"
},
+ "build": {
+ "lto": true
+ },
+ "features": {
+ "backlight": true,
+ "bootmagic": true,
+ "extrakey": true,
+ "mousekey": false,
+ "nkro": false,
+ "rgblight": true
+ },
+ "qmk": {
+ "locking": {
+ "enabled": true,
+ "resync": true
+ }
+ },
"backlight": {
"pin": "B5",
"levels": 10
diff --git a/keyboards/xiudi/xd96/rules.mk b/keyboards/xiudi/xd96/rules.mk
index 89d05c5487..e11c65db02 100644
--- a/keyboards/xiudi/xd96/rules.mk
+++ b/keyboards/xiudi/xd96/rules.mk
@@ -1,17 +1,3 @@
-# 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 = yes # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-AUDIO_ENABLE = no # Audio output
-LTO_ENABLE = yes
-
# custom matrix setup
CUSTOM_MATRIX = lite
diff --git a/keyboards/xw60/config.h b/keyboards/xw60/config.h
index 32516a5ec2..7bc4f08116 100644
--- a/keyboards/xw60/config.h
+++ b/keyboards/xw60/config.h
@@ -1,9 +1,5 @@
#pragma once
-/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
-#define LOCKING_SUPPORT_ENABLE
-/* Locking resynchronize hack */
-
#define SOLENOID_PIN F6
#define SOLENOID_ACTIVE true
#define SOLENOID_DEFAULT_DWELL 75
diff --git a/keyboards/xw60/info.json b/keyboards/xw60/keyboard.json
similarity index 97%
rename from keyboards/xw60/info.json
rename to keyboards/xw60/keyboard.json
index 50315c5ffd..6316f944e5 100644
--- a/keyboards/xw60/info.json
+++ b/keyboards/xw60/keyboard.json
@@ -8,6 +8,18 @@
"pid": "0x6060",
"device_version": "0.0.1"
},
+ "features": {
+ "bootmagic": true,
+ "extrakey": false,
+ "haptic": true,
+ "mousekey": false,
+ "nkro": true
+ },
+ "qmk": {
+ "locking": {
+ "enabled": true
+ }
+ },
"matrix_pins": {
"cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "B7", "B5", "B4", "D7", "D6", "B3"],
"rows": ["D0", "D1", "D2", "D3", "D5"]
diff --git a/keyboards/xw60/rules.mk b/keyboards/xw60/rules.mk
index 710fb4ca88..a521203b32 100644
--- a/keyboards/xw60/rules.mk
+++ b/keyboards/xw60/rules.mk
@@ -1,14 +1 @@
-# 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 = yes # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-AUDIO_ENABLE = no # Audio output
-RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
-HAPTIC_ENABLE = yes
HAPTIC_DRIVER = solenoid