Browse Source

Data-Driven Keyboard Conversions: 0-9 (#23357)

James Young 2 years ago
parent
commit
76bd5142cf
100 changed files with 589 additions and 1178 deletions
  1. 0 39
      keyboards/0xc7/61key/config.h
  2. 6 0
      keyboards/0xc7/61key/keyboard.json
  3. 0 4
      keyboards/0xcb/1337/config.h
  4. 6 0
      keyboards/0xcb/1337/keyboard.json
  5. 0 5
      keyboards/0xcb/static/config.h
  6. 4 0
      keyboards/0xcb/static/keyboard.json
  7. 0 39
      keyboards/1upkeyboards/1up60hse/config.h
  8. 6 0
      keyboards/1upkeyboards/1up60hse/keyboard.json
  9. 0 25
      keyboards/1upkeyboards/1up60hte/config.h
  10. 6 0
      keyboards/1upkeyboards/1up60hte/keyboard.json
  11. 0 7
      keyboards/1upkeyboards/1up60rgb/config.h
  12. 6 0
      keyboards/1upkeyboards/1up60rgb/keyboard.json
  13. 0 9
      keyboards/1upkeyboards/pi60/config.h
  14. 6 0
      keyboards/1upkeyboards/pi60/keyboard.json
  15. 0 9
      keyboards/1upkeyboards/pi60_hse/config.h
  16. 6 0
      keyboards/1upkeyboards/pi60_hse/keyboard.json
  17. 0 9
      keyboards/1upkeyboards/pi60_rgb/config.h
  18. 6 0
      keyboards/1upkeyboards/pi60_rgb/keyboard.json
  19. 0 40
      keyboards/1upkeyboards/super16/config.h
  20. 6 0
      keyboards/1upkeyboards/super16/keyboard.json
  21. 0 5
      keyboards/1upkeyboards/super16v2/config.h
  22. 6 0
      keyboards/1upkeyboards/super16v2/keyboard.json
  23. 0 7
      keyboards/1upkeyboards/sweet16/config.h
  24. 0 33
      keyboards/1upkeyboards/sweet16/v1/info.json
  25. 99 0
      keyboards/1upkeyboards/sweet16/v1/keyboard.json
  26. 0 4
      keyboards/1upkeyboards/sweet16/v1/rules.mk
  27. 0 22
      keyboards/1upkeyboards/sweet16v2/kb2040/config.h
  28. 6 0
      keyboards/1upkeyboards/sweet16v2/kb2040/keyboard.json
  29. 0 22
      keyboards/1upkeyboards/sweet16v2/pro_micro/config.h
  30. 6 0
      keyboards/1upkeyboards/sweet16v2/pro_micro/keyboard.json
  31. 0 10
      keyboards/25keys/aleth42/info.json
  32. 0 23
      keyboards/25keys/aleth42/rev0/config.h
  33. 20 0
      keyboards/25keys/aleth42/rev0/keyboard.json
  34. 0 12
      keyboards/25keys/aleth42/rev0/rules.mk
  35. 0 23
      keyboards/25keys/aleth42/rev1/config.h
  36. 21 0
      keyboards/25keys/aleth42/rev1/keyboard.json
  37. 0 12
      keyboards/25keys/aleth42/rev1/rules.mk
  38. 8 0
      keyboards/25keys/cassette42/keyboard.json
  39. 0 15
      keyboards/25keys/cassette42/rules.mk
  40. 0 15
      keyboards/25keys/zinc/info.json
  41. 19 0
      keyboards/25keys/zinc/rev1/keyboard.json
  42. 0 1
      keyboards/25keys/zinc/rev1/rules.mk
  43. 19 0
      keyboards/25keys/zinc/reva/keyboard.json
  44. 0 1
      keyboards/25keys/zinc/reva/rules.mk
  45. 0 14
      keyboards/25keys/zinc/rules.mk
  46. 0 7
      keyboards/2key2crawl/config.h
  47. 6 0
      keyboards/2key2crawl/keyboard.json
  48. 0 5
      keyboards/40percentclub/25/config.h
  49. 14 0
      keyboards/40percentclub/25/keyboard.json
  50. 0 15
      keyboards/40percentclub/25/rules.mk
  51. 0 39
      keyboards/40percentclub/4pack/config.h
  52. 6 0
      keyboards/40percentclub/4pack/keyboard.json
  53. 0 24
      keyboards/40percentclub/4x4/config.h
  54. 13 0
      keyboards/40percentclub/4x4/keyboard.json
  55. 0 12
      keyboards/40percentclub/4x4/rules.mk
  56. 0 24
      keyboards/40percentclub/5x5/config.h
  57. 6 0
      keyboards/40percentclub/5x5/keyboard.json
  58. 0 5
      keyboards/40percentclub/6lit/config.h
  59. 14 0
      keyboards/40percentclub/6lit/keyboard.json
  60. 0 15
      keyboards/40percentclub/6lit/rules.mk
  61. 0 5
      keyboards/40percentclub/foobar/config.h
  62. 14 0
      keyboards/40percentclub/foobar/keyboard.json
  63. 0 15
      keyboards/40percentclub/foobar/rules.mk
  64. 0 39
      keyboards/40percentclub/half_n_half/config.h
  65. 14 0
      keyboards/40percentclub/half_n_half/keyboard.json
  66. 0 15
      keyboards/40percentclub/half_n_half/rules.mk
  67. 0 38
      keyboards/40percentclub/i75/config.h
  68. 108 17
      keyboards/40percentclub/i75/info.json
  69. 1 87
      keyboards/40percentclub/i75/promicro/keyboard.json
  70. 1 87
      keyboards/40percentclub/i75/teensy2/keyboard.json
  71. 0 7
      keyboards/40percentclub/luddite/config.h
  72. 6 0
      keyboards/40percentclub/luddite/keyboard.json
  73. 0 39
      keyboards/40percentclub/mf68/config.h
  74. 6 0
      keyboards/40percentclub/mf68/keyboard.json
  75. 0 38
      keyboards/40percentclub/nein/config.h
  76. 6 0
      keyboards/40percentclub/nein/keyboard.json
  77. 0 38
      keyboards/40percentclub/nori/config.h
  78. 15 0
      keyboards/40percentclub/nori/keyboard.json
  79. 0 13
      keyboards/40percentclub/nori/rules.mk
  80. 0 40
      keyboards/40percentclub/polyandry/config.h
  81. 27 0
      keyboards/40percentclub/polyandry/info.json
  82. 1 22
      keyboards/40percentclub/polyandry/promicro/keyboard.json
  83. 1 22
      keyboards/40percentclub/polyandry/teensy2/keyboard.json
  84. 0 7
      keyboards/40percentclub/tomato/config.h
  85. 9 0
      keyboards/40percentclub/tomato/keyboard.json
  86. 0 5
      keyboards/40percentclub/ut47/config.h
  87. 13 0
      keyboards/40percentclub/ut47/keyboard.json
  88. 0 13
      keyboards/40percentclub/ut47/rules.mk
  89. 0 25
      keyboards/45_ats/config.h
  90. 6 0
      keyboards/45_ats/keyboard.json
  91. 7 0
      keyboards/4pplet/aekiso60/rev_b/keyboard.json
  92. 0 14
      keyboards/4pplet/aekiso60/rev_b/rules.mk
  93. 0 5
      keyboards/4pplet/eagle_viper_rep/rev_a/config.h
  94. 16 0
      keyboards/4pplet/eagle_viper_rep/rev_a/keyboard.json
  95. 0 13
      keyboards/4pplet/eagle_viper_rep/rev_a/rules.mk
  96. 0 5
      keyboards/4pplet/eagle_viper_rep/rev_b/config.h
  97. 15 0
      keyboards/4pplet/eagle_viper_rep/rev_b/keyboard.json
  98. 0 13
      keyboards/4pplet/eagle_viper_rep/rev_b/rules.mk
  99. 2 1
      keyboards/4pplet/steezy60/rev_a/keyboard.json
  100. 0 4
      keyboards/4pplet/steezy60/rev_a/rules.mk

+ 0 - 39
keyboards/0xc7/61key/config.h

@@ -1,39 +0,0 @@
-/*
-Copyright 2021 0xC7
-
-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 <http://www.gnu.org/licenses/>.
-*/
-
-#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

+ 6 - 0
keyboards/0xc7/61key/keyboard.json

@@ -20,6 +20,12 @@
         "mousekey": false,
         "nkro": false
     },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
     "matrix_pins": {
         "cols": ["D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "F7", "F6", "F5", "F4", "F1", "F0"],
         "rows": ["B0", "B1", "B2", "B3", "B7"]

+ 0 - 4
keyboards/0xcb/1337/config.h

@@ -19,10 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 /* default setup after eeprom reset */
 #define RGBLIGHT_DEFAULT_MODE RGBLIGHT_EFFECT_BREATHING + 2
 
-/* 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
 /* Oled Size */
 #define OLED_DISPLAY_128X64
 #define OLED_FONT_END 255

+ 6 - 0
keyboards/0xcb/1337/keyboard.json

@@ -19,6 +19,10 @@
     ]
   },
   "qmk": {
+    "locking": {
+      "enabled": true,
+      "resync": true
+    },
     "tap_keycode_delay": 10
   },
   "qmk_lufa_bootloader": {
@@ -80,9 +84,11 @@
         {"x": 0, "y": 0, "matrix": [0, 0]},
         {"x": 1, "y": 0, "matrix": [0, 1]},
         {"x": 2, "y": 0, "matrix": [0, 2]},
+
         {"x": 0, "y": 1, "matrix": [1, 0]},
         {"x": 1, "y": 1, "matrix": [1, 1]},
         {"x": 2, "y": 1, "matrix": [1, 2]},
+
         {"x": 0, "y": 2, "matrix": [2, 0]},
         {"x": 1, "y": 2, "matrix": [2, 1]},
         {"x": 2, "y": 2, "matrix": [2, 2]}

+ 0 - 5
keyboards/0xcb/static/config.h

@@ -16,11 +16,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
 #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
-
 /* oled custom font */
 #define OLED_FONT_END 255
 #define OLED_FONT_H "gfxfont.c"

+ 4 - 0
keyboards/0xcb/static/keyboard.json

@@ -32,6 +32,10 @@
     ]
   },
   "qmk": {
+    "locking": {
+      "enabled": true,
+      "resync": true
+    },
     "tap_keycode_delay": 10
   },
   "processor": "atmega328p",

+ 0 - 39
keyboards/1upkeyboards/1up60hse/config.h

@@ -1,39 +0,0 @@
-/*
-Copyright 2018 MechMerlin
-
-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 <http://www.gnu.org/licenses/>.
-*/
-
-#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

+ 6 - 0
keyboards/1upkeyboards/1up60hse/keyboard.json

@@ -31,6 +31,12 @@
         "levels": 5,
         "breathing": true
     },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
     "rgblight": {
         "saturation_steps": 8,
         "brightness_steps": 8,

+ 0 - 25
keyboards/1upkeyboards/1up60hte/config.h

@@ -1,25 +0,0 @@
-/*
-Copyright 2019 Bubnick
-
-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 <http://www.gnu.org/licenses/>.
-*/
-
-
-#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

+ 6 - 0
keyboards/1upkeyboards/1up60hte/keyboard.json

@@ -26,6 +26,12 @@
         "rows": ["B3", "B2", "B1", "B0", "D4"]
     },
     "diode_direction": "COL2ROW",
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
     "backlight": {
         "pin": "B7"
     },

+ 0 - 7
keyboards/1upkeyboards/1up60rgb/config.h

@@ -1,7 +0,0 @@
-#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

+ 6 - 0
keyboards/1upkeyboards/1up60rgb/keyboard.json

@@ -18,6 +18,12 @@
     "nkro": true,
     "rgblight": true
   },
+  "qmk": {
+    "locking": {
+      "enabled": true,
+      "resync": true
+    }
+  },
   "matrix_pins": {
     "cols": ["F0", "F1", "E6", "C7", "C6", "B7", "D4", "B1", "B0", "B5", "B4", "D7", "D6", "B3", "F4"],
     "rows": ["D0", "D1", "D2", "D3", "D5"]

+ 0 - 9
keyboards/1upkeyboards/pi60/config.h

@@ -1,9 +0,0 @@
-// Copyright 2022 ziptyze (@ziptyze)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#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

+ 6 - 0
keyboards/1upkeyboards/pi60/keyboard.json

@@ -24,6 +24,12 @@
         "nkro": false,
         "rgb_matrix": true
     },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
     "ws2812": {
         "pin": "GP17",
         "driver": "vendor"

+ 0 - 9
keyboards/1upkeyboards/pi60_hse/config.h

@@ -1,9 +0,0 @@
-// Copyright 2022 ziptyze (@ziptyze)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#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

+ 6 - 0
keyboards/1upkeyboards/pi60_hse/keyboard.json

@@ -23,6 +23,12 @@
         "nkro": false,
         "rgb_matrix": true
     },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
     "ws2812": {
         "pin": "GP15",
         "driver": "vendor"

+ 0 - 9
keyboards/1upkeyboards/pi60_rgb/config.h

@@ -1,9 +0,0 @@
-// Copyright 2022 ziptyze (@ziptyze)
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-#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

+ 6 - 0
keyboards/1upkeyboards/pi60_rgb/keyboard.json

@@ -23,6 +23,12 @@
         "nkro": false,
         "rgb_matrix": true
     },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
     "ws2812": {
         "pin": "GP19",
         "driver": "vendor"

+ 0 - 40
keyboards/1upkeyboards/super16/config.h

@@ -1,40 +0,0 @@
-/*
-Copyright 2019 MechMerlin
-
-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 <http://www.gnu.org/licenses/>.
-*/
-
-#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

+ 6 - 0
keyboards/1upkeyboards/super16/keyboard.json

@@ -86,6 +86,12 @@
     "nkro": false,
     "rgb_matrix": true
   },
+  "qmk": {
+    "locking": {
+      "enabled": true,
+      "resync": true
+    }
+  },
   "matrix_pins": {
     "cols": ["D4", "C6", "F6", "F7"],
     "rows": ["D1", "D0", "F4", "F5"]

+ 0 - 5
keyboards/1upkeyboards/super16v2/config.h

@@ -18,11 +18,6 @@
 
 #define MOUSEKEY_MOVE_DELTA 25
 
-/* 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.

+ 6 - 0
keyboards/1upkeyboards/super16v2/keyboard.json

@@ -59,6 +59,12 @@
         "nkro": false,
         "rgb_matrix": true
     },
+    "qmk": {
+      "locking": {
+        "enabled": true,
+        "resync": true
+      }
+    },
     "matrix_pins": {
       "cols": ["D5", "D6", "C2", "D0"],
       "rows": ["D1", "D2", "D3", "D4"]

+ 0 - 7
keyboards/1upkeyboards/sweet16/config.h

@@ -1,7 +0,0 @@
-#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

+ 0 - 33
keyboards/1upkeyboards/sweet16/v1/info.json

@@ -1,33 +0,0 @@
-{
-    "usb": {
-        "pid": "0x0161",
-        "device_version": "0.0.1"
-    },
-    "rgblight": {
-        "saturation_steps": 8,
-        "brightness_steps": 8,
-        "led_count": 1,
-        "animations": {
-            "breathing": true,
-            "rainbow_mood": true,
-            "rainbow_swirl": true,
-            "snake": true,
-            "knight": true,
-            "christmas": true,
-            "static_gradient": true,
-            "rgb_test": true,
-            "alternating": true,
-            "twinkle": true
-        }
-    },
-    "ws2812": {
-        "pin": "B1"
-    },
-    "matrix_pins": {
-        "cols": ["D1", "D0", "D4", "C6"],
-        "rows": ["F4", "F5", "F6", "F7"]
-    },
-    "diode_direction": "COL2ROW",
-    "processor": "atmega32u4",
-    "bootloader": "caterina"
-}

+ 99 - 0
keyboards/1upkeyboards/sweet16/v1/keyboard.json

@@ -0,0 +1,99 @@
+{
+    "keyboard_name": "Sweet16",
+    "manufacturer": "1up Keyboards",
+    "url": "",
+    "maintainer": "skullydazed",
+    "usb": {
+        "vid": "0x6F75",
+        "pid": "0x0161",
+        "device_version": "0.0.1"
+    },
+    "features": {
+        "bootmagic": false,
+        "mousekey": true,
+        "extrakey": true,
+        "nkro": true,
+        "rgblight": true
+    },
+    "build": {
+        "lto": true
+    },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
+    "rgblight": {
+        "saturation_steps": 8,
+        "brightness_steps": 8,
+        "led_count": 1,
+        "animations": {
+            "breathing": true,
+            "rainbow_mood": true,
+            "rainbow_swirl": true,
+            "snake": true,
+            "knight": true,
+            "christmas": true,
+            "static_gradient": true,
+            "rgb_test": true,
+            "alternating": true,
+            "twinkle": true
+        }
+    },
+    "ws2812": {
+        "pin": "B1"
+    },
+    "matrix_pins": {
+        "cols": ["D1", "D0", "D4", "C6"],
+        "rows": ["F4", "F5", "F6", "F7"]
+    },
+    "diode_direction": "COL2ROW",
+    "processor": "atmega32u4",
+    "bootloader": "caterina",
+    "layouts": {
+        "LAYOUT_ortho_4x4": {
+            "layout": [
+                {"matrix": [0, 0], "x": 0, "y": 0},
+                {"matrix": [0, 1], "x": 1, "y": 0},
+                {"matrix": [0, 2], "x": 2, "y": 0},
+                {"matrix": [0, 3], "x": 3, "y": 0},
+
+                {"matrix": [1, 0], "x": 0, "y": 1},
+                {"matrix": [1, 1], "x": 1, "y": 1},
+                {"matrix": [1, 2], "x": 2, "y": 1},
+                {"matrix": [1, 3], "x": 3, "y": 1},
+
+                {"matrix": [2, 0], "x": 0, "y": 2},
+                {"matrix": [2, 1], "x": 1, "y": 2},
+                {"matrix": [2, 2], "x": 2, "y": 2},
+                {"matrix": [2, 3], "x": 3, "y": 2},
+
+                {"matrix": [3, 0], "x": 0, "y": 3},
+                {"matrix": [3, 1], "x": 1, "y": 3},
+                {"matrix": [3, 2], "x": 2, "y": 3},
+                {"matrix": [3, 3], "x": 3, "y": 3}
+           ]
+       },
+        "LAYOUT_numpad_4x4": {
+            "layout": [
+                {"matrix": [0, 0], "x": 0, "y": 0},
+                {"matrix": [0, 1], "x": 1, "y": 0},
+                {"matrix": [0, 2], "x": 2, "y": 0},
+                {"matrix": [0, 3], "x": 3, "y": 0, "h": 2},
+
+                {"matrix": [1, 0], "x": 0, "y": 1},
+                {"matrix": [1, 1], "x": 1, "y": 1},
+                {"matrix": [1, 2], "x": 2, "y": 1},
+
+                {"matrix": [2, 0], "x": 0, "y": 2},
+                {"matrix": [2, 1], "x": 1, "y": 2},
+                {"matrix": [2, 2], "x": 2, "y": 2},
+                {"matrix": [2, 3], "x": 3, "y": 2, "h": 2},
+
+                {"matrix": [3, 1], "x": 0, "y": 3, "w": 2},
+                {"matrix": [3, 2], "x": 2, "y": 3}
+           ]
+       }
+    }
+}

+ 0 - 4
keyboards/1upkeyboards/sweet16/v1/rules.mk

@@ -1,4 +0,0 @@
-RGBLIGHT_ENABLE = yes
-BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
-
-LTO_ENABLE = yes

+ 0 - 22
keyboards/1upkeyboards/sweet16v2/kb2040/config.h

@@ -1,22 +0,0 @@
-/* Copyright 2022 ziptyze
- *
- * 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 <http://www.gnu.org/licenses/>.
- */
-
-#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

+ 6 - 0
keyboards/1upkeyboards/sweet16v2/kb2040/keyboard.json

@@ -21,6 +21,12 @@
         "nkro": false,
         "rgb_matrix": true
     },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
     "ws2812": {
         "pin": "GP6",
         "driver": "vendor"

+ 0 - 22
keyboards/1upkeyboards/sweet16v2/pro_micro/config.h

@@ -1,22 +0,0 @@
-/* Copyright 2022 ziptyze
- *
- * 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 <http://www.gnu.org/licenses/>.
- */
-
-#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

+ 6 - 0
keyboards/1upkeyboards/sweet16v2/pro_micro/keyboard.json

@@ -20,6 +20,12 @@
         "nkro": false,
         "rgb_matrix": true
     },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
     "ws2812": {
         "pin": "D7"
     },

+ 0 - 10
keyboards/25keys/aleth42/info.json

@@ -1,10 +0,0 @@
-{
-    "keyboard_name": "ALETH42",
-    "manufacturer": "25KEYS",
-    "url": "http://www.sho-k.co.uk/tech/aleth42",
-    "maintainer": "monksoffunk",
-    "usb": {
-        "vid": "0x04D8",
-        "pid": "0xEAC8"
-    }
-}

+ 0 - 23
keyboards/25keys/aleth42/rev0/config.h

@@ -1,23 +0,0 @@
-/*
-Copyright 2020 monksoffunk
-
-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 <http://www.gnu.org/licenses/>.
-*/
-
-#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

+ 20 - 0
keyboards/25keys/aleth42/rev0/info.json → keyboards/25keys/aleth42/rev0/keyboard.json

@@ -1,7 +1,27 @@
 {
+    "keyboard_name": "ALETH42",
+    "manufacturer": "25KEYS",
+    "url": "http://www.sho-k.co.uk/tech/aleth42",
+    "maintainer": "monksoffunk",
     "usb": {
+        "vid": "0x04D8",
+        "pid": "0xEAC8",
         "device_version": "0.0.0"
     },
+    "features": {
+        "bootmagic": false,
+        "mousekey": false,
+        "extrakey": true,
+        "console": true,
+        "rgblight": true,
+        "encoder": true
+    },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
     "matrix_pins": {
         "cols": ["D0", "D1", "D2", "D3", "D4", "D5", "D6", "C2", "C4", "C5", "C6"],
         "rows": ["B0", "B1", "B2", "B3"]

+ 0 - 12
keyboards/25keys/aleth42/rev0/rules.mk

@@ -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 = 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 = yes        # Enable keyboard RGB underglow
-ENCODER_ENABLE = yes

+ 0 - 23
keyboards/25keys/aleth42/rev1/config.h

@@ -1,23 +0,0 @@
-/*
-Copyright 2020 monksoffunk
-
-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 <http://www.gnu.org/licenses/>.
-*/
-
-#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

+ 21 - 0
keyboards/25keys/aleth42/rev1/info.json → keyboards/25keys/aleth42/rev1/keyboard.json

@@ -1,7 +1,28 @@
 {
+    "keyboard_name": "ALETH42",
+    "manufacturer": "25KEYS",
+    "url": "http://www.sho-k.co.uk/tech/aleth42",
+    "maintainer": "monksoffunk",
     "usb": {
+        "vid": "0x04D8",
+        "pid": "0xEAC8",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "mousekey": false,
+        "extrakey": true,
+        "console": true,
+        "backlight": true,
+        "rgblight": true,
+        "encoder": true
+    },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
     "matrix_pins": {
         "cols": ["D5", "D3", "D2", "D1", "D0", "D6", "D4", "F7", "F0", "F1", "F4"],
         "rows": ["B4", "B0", "B2", "B1"]

+ 0 - 12
keyboards/25keys/aleth42/rev1/rules.mk

@@ -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 = yes        # 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
-ENCODER_ENABLE = yes

+ 8 - 0
keyboards/25keys/cassette42/info.json → keyboards/25keys/cassette42/keyboard.json

@@ -8,6 +8,14 @@
         "pid": "0xCA42",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "mousekey": false,
+        "extrakey": true,
+        "rgblight": true,
+        "encoder": true,
+        "oled": true
+    },
     "encoder": {
         "rotary": [
             {"pin_a": "B6", "pin_b": "B2"},

+ 0 - 15
keyboards/25keys/cassette42/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 = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-ENCODER_ENABLE = yes
-OLED_ENABLE = yes
-
 SRC += ./common/oled_helper.c

+ 0 - 15
keyboards/25keys/zinc/info.json

@@ -1,15 +0,0 @@
-{
-  "manufacturer": "25KEYS",
-  "url": "https://github.com/monksoffunk/zinc",
-  "maintainer": "monksoffunk",
-   "usb": {
-    "vid": "0x04D8",
-    "pid": "0xEA3B",
-    "device_version": "0.0.1"
-   },
-   "rgb_matrix": {
-     "driver": "ws2812"
-   },
-  "processor": "atmega32u4",
-  "bootloader": "caterina"
-}

+ 19 - 0
keyboards/25keys/zinc/rev1/info.json → keyboards/25keys/zinc/rev1/keyboard.json

@@ -1,16 +1,35 @@
 {
   "keyboard_name": "Zinc rev.1",
+  "manufacturer": "25KEYS",
+  "url": "https://github.com/monksoffunk/zinc",
+  "maintainer": "monksoffunk",
+  "usb": {
+    "vid": "0x04D8",
+    "pid": "0xEA3B",
+    "device_version": "0.0.1"
+  },
+  "processor": "atmega32u4",
+  "bootloader": "caterina",
   "matrix_pins": {
     "cols": ["F4", "D4", "C6", "D7", "E6", "B4"],
     "rows": ["F6", "F7", "B1", "B3"]
   },
   "diode_direction": "COL2ROW",
+  "features": {
+    "bootmagic": false,
+    "mousekey": false,
+    "extrakey": false
+  },
   "split": {
+    "enabled": true,
     "soft_serial_pin": "D2"
   },
   "tapping": {
     "term": 100
   },
+  "rgb_matrix": {
+    "driver": "ws2812"
+  },
   "rgblight": {
     "hue_steps": 10
   },

+ 0 - 1
keyboards/25keys/zinc/rev1/rules.mk

@@ -1 +0,0 @@
-SPLIT_KEYBOARD = yes

+ 19 - 0
keyboards/25keys/zinc/reva/info.json → keyboards/25keys/zinc/reva/keyboard.json

@@ -1,16 +1,35 @@
 {
   "keyboard_name": "Zinc rev.A",
+  "manufacturer": "25KEYS",
+  "url": "https://github.com/monksoffunk/zinc",
+  "maintainer": "monksoffunk",
+  "usb": {
+    "vid": "0x04D8",
+    "pid": "0xEA3B",
+    "device_version": "0.0.1"
+  },
+  "processor": "atmega32u4",
+  "bootloader": "caterina",
   "matrix_pins": {
     "cols": ["F4", "F5", "F6", "F7", "B1", "B3"],
     "rows": ["D4", "C6", "D7", "E6"]
   },
   "diode_direction": "COL2ROW",
+  "features": {
+    "bootmagic": false,
+    "mousekey": false,
+    "extrakey": false
+  },
   "split": {
+    "enabled": true,
     "soft_serial_pin": "D2"
   },
   "tapping": {
     "term": 100
   },
+  "rgb_matrix": {
+    "driver": "ws2812"
+  },
   "rgblight": {
     "hue_steps": 10
   },

+ 0 - 1
keyboards/25keys/zinc/reva/rules.mk

@@ -1 +0,0 @@
-SPLIT_KEYBOARD = yes

+ 0 - 14
keyboards/25keys/zinc/rules.mk

@@ -1,17 +1,3 @@
-# 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
-AUDIO_ENABLE = no           # Audio output
-RGBLIGHT_ENABLE = no       # Enable WS2812 RGB underlight.  Do not enable this with audio at the same time.
-RGB_MATRIX_ENABLE = no
-
 DEFAULT_FOLDER = 25keys/zinc/rev1
 
 #SRC += i2c.c

+ 0 - 7
keyboards/2key2crawl/config.h

@@ -1,7 +0,0 @@
-#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

+ 6 - 0
keyboards/2key2crawl/keyboard.json

@@ -17,6 +17,12 @@
         "mousekey": false,
         "nkro": false
     },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
     "matrix_pins": {
         "cols": ["B3", "B4", "B5", "B6", "B7", "C7", "B2"],
         "rows": ["C4", "C5"]

+ 0 - 5
keyboards/40percentclub/25/config.h

@@ -21,11 +21,6 @@
 //#define MASTER_RIGHT
 //#define EE_HANDS
 
-/* 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.

+ 14 - 0
keyboards/40percentclub/25/info.json → keyboards/40percentclub/25/keyboard.json

@@ -13,7 +13,21 @@
         "rows": ["D4", "C6", "D7", "E6", "B4"]
     },
     "diode_direction": "COL2ROW",
+    "features": {
+        "bootmagic": true,
+        "mousekey": true,
+        "extrakey": true,
+        "command": true,
+        "nkro": true
+    },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
     "split": {
+        "enabled": true,
         "soft_serial_pin": "D0"
     },
     "processor": "atmega32u4",

+ 0 - 15
keyboards/40percentclub/25/rules.mk

@@ -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 = 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
-AUDIO_ENABLE = no           # Audio output
-
-# Enable generic behavior for split boards
-SPLIT_KEYBOARD = yes

+ 0 - 39
keyboards/40percentclub/4pack/config.h

@@ -1,39 +0,0 @@
-/*
-Copyright 2019 Arda Kilicdagi
-
-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 <http://www.gnu.org/licenses/>.
-*/
-
-#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

+ 6 - 0
keyboards/40percentclub/4pack/keyboard.json

@@ -23,6 +23,12 @@
         "mousekey": false,
         "nkro": false
     },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+       }
+    },
     "matrix_pins": {
         "direct": [
             ["E6", "D7", "C6", "D4"]

+ 0 - 24
keyboards/40percentclub/4x4/config.h

@@ -1,24 +0,0 @@
-
-
-#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

+ 13 - 0
keyboards/40percentclub/4x4/info.json → keyboards/40percentclub/4x4/keyboard.json

@@ -15,6 +15,19 @@
     "diode_direction": "COL2ROW",
     "processor": "atmega32u4",
     "bootloader": "caterina",
+    "features": {
+        "bootmagic": false,
+        "mousekey": true,
+        "extrakey": true,
+        "console": true,
+        "command": true
+    },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
     "community_layouts": ["ortho_4x4", "ortho_4x12"],
     "layouts": {
         "LAYOUT_ortho_4x4": {

+ 0 - 12
keyboards/40percentclub/4x4/rules.mk

@@ -1,15 +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 = yes        # 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
-AUDIO_ENABLE = no           # Audio output
-
 # Disable unsupported hardware
 RGBLIGHT_SUPPORTED = no
 AUDIO_SUPPORTED = no

+ 0 - 24
keyboards/40percentclub/5x5/config.h

@@ -1,24 +0,0 @@
-
-
-#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

+ 6 - 0
keyboards/40percentclub/5x5/keyboard.json

@@ -16,6 +16,12 @@
         "mousekey": true,
         "nkro": false
     },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+       }
+    },
     "matrix_pins": {
         "cols": ["D7", "E6", "B4", "B5", "B6", "B7", "D6", "F7", "F6", "F5", "F4", "F1", "F0", "B3", "B1"],
         "rows": ["B2", "D1", "D0", "D4", "C6"]

+ 0 - 5
keyboards/40percentclub/6lit/config.h

@@ -21,11 +21,6 @@
 //#define MASTER_RIGHT
 //#define EE_HANDS
 
-/* 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.

+ 14 - 0
keyboards/40percentclub/6lit/info.json → keyboards/40percentclub/6lit/keyboard.json

@@ -13,7 +13,21 @@
         "rows": ["D7", "E6"]
     },
     "diode_direction": "COL2ROW",
+    "features": {
+        "bootmagic": true,
+        "mousekey": true,
+        "extrakey": true,
+        "command": true,
+        "nkro": true
+    },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
     "split": {
+        "enabled": true,
         "soft_serial_pin": "D0"
     },
     "processor": "atmega32u4",

+ 0 - 15
keyboards/40percentclub/6lit/rules.mk

@@ -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 = 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
-AUDIO_ENABLE = no           # Audio output
-
-# Enable generic behavior for split boards
-SPLIT_KEYBOARD = yes

+ 0 - 5
keyboards/40percentclub/foobar/config.h

@@ -21,11 +21,6 @@
 //#define MASTER_RIGHT
 //#define EE_HANDS
 
-/* 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.

+ 14 - 0
keyboards/40percentclub/foobar/info.json → keyboards/40percentclub/foobar/keyboard.json

@@ -13,7 +13,21 @@
         "rows": ["D7", "E6", "B4"]
     },
     "diode_direction": "COL2ROW",
+    "features": {
+        "bootmagic": true,
+        "mousekey": true,
+        "extrakey": true,
+        "command": true,
+        "nkro": true
+    },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
     "split": {
+        "enabled": true,
         "soft_serial_pin": "D0"
     },
     "processor": "atmega32u4",

+ 0 - 15
keyboards/40percentclub/foobar/rules.mk

@@ -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 = 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
-AUDIO_ENABLE = no           # Audio output
-
-# Enable generic behavior for split boards
-SPLIT_KEYBOARD = yes

+ 0 - 39
keyboards/40percentclub/half_n_half/config.h

@@ -1,39 +0,0 @@
-/*
-Copyright 2019 Boy_314
-
-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 <http://www.gnu.org/licenses/>.
-*/
-
-#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

+ 14 - 0
keyboards/40percentclub/half_n_half/info.json → keyboards/40percentclub/half_n_half/keyboard.json

@@ -13,7 +13,21 @@
     "rows": ["D4", "C6", "D7", "E6"]
   },
   "diode_direction": "COL2ROW",
+  "features": {
+    "bootmagic": false,
+    "mousekey": true,
+    "extrakey": true,
+    "console": true,
+    "command": true
+  },
+  "qmk": {
+    "locking": {
+      "enabled": true,
+      "resync": true
+    }
+  },
   "split": {
+    "enabled": true,
     "soft_serial_pin": "D0"
   },
   "processor": "atmega32u4",

+ 0 - 15
keyboards/40percentclub/half_n_half/rules.mk

@@ -1,15 +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 = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-
-# Enable generic behavior for split boards
-SPLIT_KEYBOARD = yes

+ 0 - 38
keyboards/40percentclub/i75/config.h

@@ -1,38 +0,0 @@
-/* Copyright 2018
- *
- * 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 <http://www.gnu.org/licenses/>.
- */
-
-#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

+ 108 - 17
keyboards/40percentclub/i75/info.json

@@ -1,19 +1,110 @@
 {
-  "keyboard_name": "i75",
-  "manufacturer": "di0ib",
-  "url": "",
-  "maintainer": "qmk",
-  "features": {
-    "bootmagic": true,
-    "command": true,
-    "console": true,
-    "extrakey": true,
-    "mousekey": true,
-    "nkro": false
-  },
-  "usb": {
-    "vid": "0x4025",
-    "pid": "0x0A0C",
-    "device_version": "1.7.5"
-  }
+    "keyboard_name": "i75",
+    "manufacturer": "di0ib",
+    "url": "",
+    "maintainer": "qmk",
+    "usb": {
+        "vid": "0x4025",
+        "pid": "0x0A0C",
+        "device_version": "1.7.5"
+    },
+    "features": {
+        "bootmagic": true,
+        "mousekey": true,
+        "extrakey": true,
+        "console": true,
+        "command": true
+    },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
+    "community_layouts": ["ortho_5x15"],
+    "layouts": {
+        "LAYOUT_ortho_5x15": {
+            "layout": [
+                {"matrix": [0, 0], "x": 0, "y": 0},
+                {"matrix": [0, 1], "x": 1, "y": 0},
+                {"matrix": [0, 2], "x": 2, "y": 0},
+                {"matrix": [0, 3], "x": 3, "y": 0},
+                {"matrix": [0, 4], "x": 4, "y": 0},
+                {"matrix": [0, 5], "x": 5, "y": 0},
+                {"matrix": [0, 6], "x": 6, "y": 0},
+                {"matrix": [0, 7], "x": 7, "y": 0},
+                {"matrix": [0, 8], "x": 8, "y": 0},
+                {"matrix": [1, 0], "x": 9, "y": 0},
+                {"matrix": [1, 1], "x": 10, "y": 0},
+                {"matrix": [1, 2], "x": 11, "y": 0},
+                {"matrix": [1, 3], "x": 12, "y": 0},
+                {"matrix": [1, 4], "x": 13, "y": 0},
+                {"matrix": [1, 5], "x": 14, "y": 0},
+
+                {"matrix": [1, 6], "x": 0, "y": 1},
+                {"matrix": [1, 7], "x": 1, "y": 1},
+                {"matrix": [1, 8], "x": 2, "y": 1},
+                {"matrix": [2, 0], "x": 3, "y": 1},
+                {"matrix": [2, 1], "x": 4, "y": 1},
+                {"matrix": [2, 2], "x": 5, "y": 1},
+                {"matrix": [2, 3], "x": 6, "y": 1},
+                {"matrix": [2, 4], "x": 7, "y": 1},
+                {"matrix": [2, 5], "x": 8, "y": 1},
+                {"matrix": [2, 6], "x": 9, "y": 1},
+                {"matrix": [2, 7], "x": 10, "y": 1},
+                {"matrix": [2, 8], "x": 11, "y": 1},
+                {"matrix": [3, 0], "x": 12, "y": 1},
+                {"matrix": [3, 1], "x": 13, "y": 1},
+                {"matrix": [3, 2], "x": 14, "y": 1},
+
+                {"matrix": [3, 3], "x": 0, "y": 2},
+                {"matrix": [3, 4], "x": 1, "y": 2},
+                {"matrix": [3, 5], "x": 2, "y": 2},
+                {"matrix": [3, 6], "x": 3, "y": 2},
+                {"matrix": [3, 7], "x": 4, "y": 2},
+                {"matrix": [3, 8], "x": 5, "y": 2},
+                {"matrix": [4, 0], "x": 6, "y": 2},
+                {"matrix": [4, 1], "x": 7, "y": 2},
+                {"matrix": [4, 2], "x": 8, "y": 2},
+                {"matrix": [4, 3], "x": 9, "y": 2},
+                {"matrix": [4, 4], "x": 10, "y": 2},
+                {"matrix": [4, 5], "x": 11, "y": 2},
+                {"matrix": [4, 6], "x": 12, "y": 2},
+                {"matrix": [4, 7], "x": 13, "y": 2},
+                {"matrix": [4, 8], "x": 14, "y": 2},
+
+                {"matrix": [5, 0], "x": 0, "y": 3},
+                {"matrix": [5, 1], "x": 1, "y": 3},
+                {"matrix": [5, 2], "x": 2, "y": 3},
+                {"matrix": [5, 3], "x": 3, "y": 3},
+                {"matrix": [5, 4], "x": 4, "y": 3},
+                {"matrix": [5, 5], "x": 5, "y": 3},
+                {"matrix": [5, 6], "x": 6, "y": 3},
+                {"matrix": [5, 7], "x": 7, "y": 3},
+                {"matrix": [5, 8], "x": 8, "y": 3},
+                {"matrix": [6, 0], "x": 9, "y": 3},
+                {"matrix": [6, 1], "x": 10, "y": 3},
+                {"matrix": [6, 2], "x": 11, "y": 3},
+                {"matrix": [6, 3], "x": 12, "y": 3},
+                {"matrix": [6, 4], "x": 13, "y": 3},
+                {"matrix": [6, 5], "x": 14, "y": 3},
+
+                {"matrix": [6, 6], "x": 0, "y": 4},
+                {"matrix": [6, 7], "x": 1, "y": 4},
+                {"matrix": [6, 8], "x": 2, "y": 4},
+                {"matrix": [7, 0], "x": 3, "y": 4},
+                {"matrix": [7, 1], "x": 4, "y": 4},
+                {"matrix": [7, 2], "x": 5, "y": 4},
+                {"matrix": [7, 3], "x": 6, "y": 4},
+                {"matrix": [7, 4], "x": 7, "y": 4},
+                {"matrix": [7, 5], "x": 8, "y": 4},
+                {"matrix": [7, 6], "x": 9, "y": 4},
+                {"matrix": [7, 7], "x": 10, "y": 4},
+                {"matrix": [7, 8], "x": 11, "y": 4},
+                {"matrix": [8, 0], "x": 12, "y": 4},
+                {"matrix": [8, 1], "x": 13, "y": 4},
+                {"matrix": [8, 2], "x": 14, "y": 4}
+            ]
+        }
+    }
 }

+ 1 - 87
keyboards/40percentclub/i75/promicro/keyboard.json

@@ -5,91 +5,5 @@
     },
     "diode_direction": "COL2ROW",
     "processor": "atmega32u4",
-    "bootloader": "caterina",
-    "community_layouts": ["ortho_5x15"],
-    "layouts": {
-        "LAYOUT_ortho_5x15": {
-            "layout": [
-                {"matrix": [0, 0], "x": 0, "y": 0},
-                {"matrix": [0, 1], "x": 1, "y": 0},
-                {"matrix": [0, 2], "x": 2, "y": 0},
-                {"matrix": [0, 3], "x": 3, "y": 0},
-                {"matrix": [0, 4], "x": 4, "y": 0},
-                {"matrix": [0, 5], "x": 5, "y": 0},
-                {"matrix": [0, 6], "x": 6, "y": 0},
-                {"matrix": [0, 7], "x": 7, "y": 0},
-                {"matrix": [0, 8], "x": 8, "y": 0},
-                {"matrix": [1, 0], "x": 9, "y": 0},
-                {"matrix": [1, 1], "x": 10, "y": 0},
-                {"matrix": [1, 2], "x": 11, "y": 0},
-                {"matrix": [1, 3], "x": 12, "y": 0},
-                {"matrix": [1, 4], "x": 13, "y": 0},
-                {"matrix": [1, 5], "x": 14, "y": 0},
-
-                {"matrix": [1, 6], "x": 0, "y": 1},
-                {"matrix": [1, 7], "x": 1, "y": 1},
-                {"matrix": [1, 8], "x": 2, "y": 1},
-                {"matrix": [2, 0], "x": 3, "y": 1},
-                {"matrix": [2, 1], "x": 4, "y": 1},
-                {"matrix": [2, 2], "x": 5, "y": 1},
-                {"matrix": [2, 3], "x": 6, "y": 1},
-                {"matrix": [2, 4], "x": 7, "y": 1},
-                {"matrix": [2, 5], "x": 8, "y": 1},
-                {"matrix": [2, 6], "x": 9, "y": 1},
-                {"matrix": [2, 7], "x": 10, "y": 1},
-                {"matrix": [2, 8], "x": 11, "y": 1},
-                {"matrix": [3, 0], "x": 12, "y": 1},
-                {"matrix": [3, 1], "x": 13, "y": 1},
-                {"matrix": [3, 2], "x": 14, "y": 1},
-
-                {"matrix": [3, 3], "x": 0, "y": 2},
-                {"matrix": [3, 4], "x": 1, "y": 2},
-                {"matrix": [3, 5], "x": 2, "y": 2},
-                {"matrix": [3, 6], "x": 3, "y": 2},
-                {"matrix": [3, 7], "x": 4, "y": 2},
-                {"matrix": [3, 8], "x": 5, "y": 2},
-                {"matrix": [4, 0], "x": 6, "y": 2},
-                {"matrix": [4, 1], "x": 7, "y": 2},
-                {"matrix": [4, 2], "x": 8, "y": 2},
-                {"matrix": [4, 3], "x": 9, "y": 2},
-                {"matrix": [4, 4], "x": 10, "y": 2},
-                {"matrix": [4, 5], "x": 11, "y": 2},
-                {"matrix": [4, 6], "x": 12, "y": 2},
-                {"matrix": [4, 7], "x": 13, "y": 2},
-                {"matrix": [4, 8], "x": 14, "y": 2},
-
-                {"matrix": [5, 0], "x": 0, "y": 3},
-                {"matrix": [5, 1], "x": 1, "y": 3},
-                {"matrix": [5, 2], "x": 2, "y": 3},
-                {"matrix": [5, 3], "x": 3, "y": 3},
-                {"matrix": [5, 4], "x": 4, "y": 3},
-                {"matrix": [5, 5], "x": 5, "y": 3},
-                {"matrix": [5, 6], "x": 6, "y": 3},
-                {"matrix": [5, 7], "x": 7, "y": 3},
-                {"matrix": [5, 8], "x": 8, "y": 3},
-                {"matrix": [6, 0], "x": 9, "y": 3},
-                {"matrix": [6, 1], "x": 10, "y": 3},
-                {"matrix": [6, 2], "x": 11, "y": 3},
-                {"matrix": [6, 3], "x": 12, "y": 3},
-                {"matrix": [6, 4], "x": 13, "y": 3},
-                {"matrix": [6, 5], "x": 14, "y": 3},
-
-                {"matrix": [6, 6], "x": 0, "y": 4},
-                {"matrix": [6, 7], "x": 1, "y": 4},
-                {"matrix": [6, 8], "x": 2, "y": 4},
-                {"matrix": [7, 0], "x": 3, "y": 4},
-                {"matrix": [7, 1], "x": 4, "y": 4},
-                {"matrix": [7, 2], "x": 5, "y": 4},
-                {"matrix": [7, 3], "x": 6, "y": 4},
-                {"matrix": [7, 4], "x": 7, "y": 4},
-                {"matrix": [7, 5], "x": 8, "y": 4},
-                {"matrix": [7, 6], "x": 9, "y": 4},
-                {"matrix": [7, 7], "x": 10, "y": 4},
-                {"matrix": [7, 8], "x": 11, "y": 4},
-                {"matrix": [8, 0], "x": 12, "y": 4},
-                {"matrix": [8, 1], "x": 13, "y": 4},
-                {"matrix": [8, 2], "x": 14, "y": 4}
-            ]
-        }
-    }
+    "bootloader": "caterina"
 }

+ 1 - 87
keyboards/40percentclub/i75/teensy2/keyboard.json

@@ -5,91 +5,5 @@
     },
     "diode_direction": "COL2ROW",
     "processor": "atmega32u4",
-    "bootloader": "halfkay",
-    "community_layouts": ["ortho_5x15"],
-    "layouts": {
-        "LAYOUT_ortho_5x15": {
-            "layout": [
-                {"matrix": [0, 0], "x": 0, "y": 0},
-                {"matrix": [0, 1], "x": 1, "y": 0},
-                {"matrix": [0, 2], "x": 2, "y": 0},
-                {"matrix": [0, 3], "x": 3, "y": 0},
-                {"matrix": [0, 4], "x": 4, "y": 0},
-                {"matrix": [0, 5], "x": 5, "y": 0},
-                {"matrix": [0, 6], "x": 6, "y": 0},
-                {"matrix": [0, 7], "x": 7, "y": 0},
-                {"matrix": [0, 8], "x": 8, "y": 0},
-                {"matrix": [1, 0], "x": 9, "y": 0},
-                {"matrix": [1, 1], "x": 10, "y": 0},
-                {"matrix": [1, 2], "x": 11, "y": 0},
-                {"matrix": [1, 3], "x": 12, "y": 0},
-                {"matrix": [1, 4], "x": 13, "y": 0},
-                {"matrix": [1, 5], "x": 14, "y": 0},
-
-                {"matrix": [1, 6], "x": 0, "y": 1},
-                {"matrix": [1, 7], "x": 1, "y": 1},
-                {"matrix": [1, 8], "x": 2, "y": 1},
-                {"matrix": [2, 0], "x": 3, "y": 1},
-                {"matrix": [2, 1], "x": 4, "y": 1},
-                {"matrix": [2, 2], "x": 5, "y": 1},
-                {"matrix": [2, 3], "x": 6, "y": 1},
-                {"matrix": [2, 4], "x": 7, "y": 1},
-                {"matrix": [2, 5], "x": 8, "y": 1},
-                {"matrix": [2, 6], "x": 9, "y": 1},
-                {"matrix": [2, 7], "x": 10, "y": 1},
-                {"matrix": [2, 8], "x": 11, "y": 1},
-                {"matrix": [3, 0], "x": 12, "y": 1},
-                {"matrix": [3, 1], "x": 13, "y": 1},
-                {"matrix": [3, 2], "x": 14, "y": 1},
-
-                {"matrix": [3, 3], "x": 0, "y": 2},
-                {"matrix": [3, 4], "x": 1, "y": 2},
-                {"matrix": [3, 5], "x": 2, "y": 2},
-                {"matrix": [3, 6], "x": 3, "y": 2},
-                {"matrix": [3, 7], "x": 4, "y": 2},
-                {"matrix": [3, 8], "x": 5, "y": 2},
-                {"matrix": [4, 0], "x": 6, "y": 2},
-                {"matrix": [4, 1], "x": 7, "y": 2},
-                {"matrix": [4, 2], "x": 8, "y": 2},
-                {"matrix": [4, 3], "x": 9, "y": 2},
-                {"matrix": [4, 4], "x": 10, "y": 2},
-                {"matrix": [4, 5], "x": 11, "y": 2},
-                {"matrix": [4, 6], "x": 12, "y": 2},
-                {"matrix": [4, 7], "x": 13, "y": 2},
-                {"matrix": [4, 8], "x": 14, "y": 2},
-
-                {"matrix": [5, 0], "x": 0, "y": 3},
-                {"matrix": [5, 1], "x": 1, "y": 3},
-                {"matrix": [5, 2], "x": 2, "y": 3},
-                {"matrix": [5, 3], "x": 3, "y": 3},
-                {"matrix": [5, 4], "x": 4, "y": 3},
-                {"matrix": [5, 5], "x": 5, "y": 3},
-                {"matrix": [5, 6], "x": 6, "y": 3},
-                {"matrix": [5, 7], "x": 7, "y": 3},
-                {"matrix": [5, 8], "x": 8, "y": 3},
-                {"matrix": [6, 0], "x": 9, "y": 3},
-                {"matrix": [6, 1], "x": 10, "y": 3},
-                {"matrix": [6, 2], "x": 11, "y": 3},
-                {"matrix": [6, 3], "x": 12, "y": 3},
-                {"matrix": [6, 4], "x": 13, "y": 3},
-                {"matrix": [6, 5], "x": 14, "y": 3},
-
-                {"matrix": [6, 6], "x": 0, "y": 4},
-                {"matrix": [6, 7], "x": 1, "y": 4},
-                {"matrix": [6, 8], "x": 2, "y": 4},
-                {"matrix": [7, 0], "x": 3, "y": 4},
-                {"matrix": [7, 1], "x": 4, "y": 4},
-                {"matrix": [7, 2], "x": 5, "y": 4},
-                {"matrix": [7, 3], "x": 6, "y": 4},
-                {"matrix": [7, 4], "x": 7, "y": 4},
-                {"matrix": [7, 5], "x": 8, "y": 4},
-                {"matrix": [7, 6], "x": 9, "y": 4},
-                {"matrix": [7, 7], "x": 10, "y": 4},
-                {"matrix": [7, 8], "x": 11, "y": 4},
-                {"matrix": [8, 0], "x": 12, "y": 4},
-                {"matrix": [8, 1], "x": 13, "y": 4},
-                {"matrix": [8, 2], "x": 14, "y": 4}
-            ]
-        }
-    }
+    "bootloader": "halfkay"
 }

+ 0 - 7
keyboards/40percentclub/luddite/config.h

@@ -1,7 +0,0 @@
-#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

+ 6 - 0
keyboards/40percentclub/luddite/keyboard.json

@@ -18,6 +18,12 @@
     "nkro": true,
     "rgblight": true
   },
+  "qmk": {
+    "locking": {
+      "enabled": true,
+      "resync": true
+    }
+  },
   "matrix_pins": {
     "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"],
     "rows": ["D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6"]

+ 0 - 39
keyboards/40percentclub/mf68/config.h

@@ -1,39 +0,0 @@
-/*
-Copyright 2012 Jun Wako <wakojun@gmail.com>
-
-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 <http://www.gnu.org/licenses/>.
-*/
-
-#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

+ 6 - 0
keyboards/40percentclub/mf68/keyboard.json

@@ -17,6 +17,12 @@
     "mousekey": true,
     "nkro": true
   },
+  "qmk": {
+    "locking": {
+      "enabled": true,
+      "resync": true
+    }
+  },
   "matrix_pins": {
     "cols": ["D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6", "B4"],
     "rows": ["B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"]

+ 0 - 38
keyboards/40percentclub/nein/config.h

@@ -1,38 +0,0 @@
-/* Copyright 2019
- *
- * 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 <http://www.gnu.org/licenses/>.
- */
-
-#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

+ 6 - 0
keyboards/40percentclub/nein/keyboard.json

@@ -18,6 +18,12 @@
     "mousekey": true,
     "nkro": true
   },
+  "qmk": {
+    "locking": {
+      "enabled": true,
+      "resync": true
+    }
+  },
   "matrix_pins": {
     "direct": [
       ["F4", "F5", "F6"],

+ 0 - 38
keyboards/40percentclub/nori/config.h

@@ -1,38 +0,0 @@
-/* Copyright 2018
- *
- * 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 <http://www.gnu.org/licenses/>.
- */
-
-#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

+ 15 - 0
keyboards/40percentclub/nori/info.json → keyboards/40percentclub/nori/keyboard.json

@@ -13,6 +13,21 @@
       "rows": ["D3", "D2", "D1", "D0"]
     },
     "diode_direction": "COL2ROW",
+    "features": {
+      "bootmagic": true,
+      "mousekey": true,
+      "extrakey": true,
+      "command": true,
+      "nkro": true,
+      "backlight": true,
+      "rgblight": true
+    },
+    "qmk": {
+      "locking": {
+        "enabled": true,
+        "resync": true
+      }
+    },
     "backlight": {
       "pin": "B5"
     },

+ 0 - 13
keyboards/40percentclub/nori/rules.mk

@@ -1,15 +1,2 @@
-# 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 = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-
 # Disable unsupported hardware
 AUDIO_SUPPORTED = no

+ 0 - 40
keyboards/40percentclub/polyandry/config.h

@@ -1,40 +0,0 @@
-/* Copyright 2021
- *
- * 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 <http://www.gnu.org/licenses/>.
- */
-
-#pragma once
-
-//more detailed config options start below:
-
-/* 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

+ 27 - 0
keyboards/40percentclub/polyandry/info.json

@@ -11,9 +11,36 @@
         "mousekey": true,
         "nkro": false
     },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
     "usb": {
         "vid": "0x4025",
         "pid": "0x6060",
         "device_version": "0.0.1"
+    },
+    "layouts": {
+        "LAYOUT_ortho_4x3": {
+            "layout": [
+                {"matrix": [0, 0], "x": 0, "y": 0},
+                {"matrix": [0, 1], "x": 1, "y": 0},
+                {"matrix": [0, 2], "x": 2, "y": 0},
+
+                {"matrix": [0, 3], "x": 0, "y": 1},
+                {"matrix": [0, 4], "x": 1, "y": 1},
+                {"matrix": [0, 5], "x": 2, "y": 1},
+
+                {"matrix": [0, 6], "x": 0, "y": 2},
+                {"matrix": [0, 7], "x": 1, "y": 2},
+                {"matrix": [0, 8], "x": 2, "y": 2},
+
+                {"matrix": [0, 9], "x": 0, "y": 3},
+                {"matrix": [0, 10], "x": 1, "y": 3},
+                {"matrix": [0, 11], "x": 2, "y": 3}
+            ]
+        }
     }
 }

+ 1 - 22
keyboards/40percentclub/polyandry/promicro/keyboard.json

@@ -5,26 +5,5 @@
     },
     "diode_direction": "COL2ROW",
     "processor": "atmega32u4",
-    "bootloader": "caterina",
-    "layouts": {
-        "LAYOUT_ortho_4x3": {
-            "layout": [
-                {"matrix": [0, 0], "x": 0, "y": 0},
-                {"matrix": [0, 1], "x": 1, "y": 0},
-                {"matrix": [0, 2], "x": 2, "y": 0},
-
-                {"matrix": [0, 3], "x": 0, "y": 1},
-                {"matrix": [0, 4], "x": 1, "y": 1},
-                {"matrix": [0, 5], "x": 2, "y": 1},
-
-                {"matrix": [0, 6], "x": 0, "y": 2},
-                {"matrix": [0, 7], "x": 1, "y": 2},
-                {"matrix": [0, 8], "x": 2, "y": 2},
-
-                {"matrix": [0, 9], "x": 0, "y": 3},
-                {"matrix": [0, 10], "x": 1, "y": 3},
-                {"matrix": [0, 11], "x": 2, "y": 3}
-            ]
-        }
-    }
+    "bootloader": "caterina"
 }

+ 1 - 22
keyboards/40percentclub/polyandry/teensy2/keyboard.json

@@ -5,26 +5,5 @@
     },
     "diode_direction": "COL2ROW",
     "processor": "atmega32u4",
-    "bootloader": "halfkay",
-    "layouts": {
-        "LAYOUT_ortho_4x3": {
-            "layout": [
-                {"matrix": [0, 0], "x": 0, "y": 0},
-                {"matrix": [0, 1], "x": 1, "y": 0},
-                {"matrix": [0, 2], "x": 2, "y": 0},
-
-                {"matrix": [0, 3], "x": 0, "y": 1},
-                {"matrix": [0, 4], "x": 1, "y": 1},
-                {"matrix": [0, 5], "x": 2, "y": 1},
-
-                {"matrix": [0, 6], "x": 0, "y": 2},
-                {"matrix": [0, 7], "x": 1, "y": 2},
-                {"matrix": [0, 8], "x": 2, "y": 2},
-
-                {"matrix": [0, 9], "x": 0, "y": 3},
-                {"matrix": [0, 10], "x": 1, "y": 3},
-                {"matrix": [0, 11], "x": 2, "y": 3}
-            ]
-        }
-    }
+    "bootloader": "halfkay"
 }

+ 0 - 7
keyboards/40percentclub/tomato/config.h

@@ -1,7 +0,0 @@
-#pragma once
-
-/* Locking resynchronize hack */
-#define LOCKING_RESYNC_ENABLE
-
-/* eliminate lag on space cadet mods */
-#define PERMISSIVE_HOLD

+ 9 - 0
keyboards/40percentclub/tomato/keyboard.json

@@ -37,6 +37,15 @@
     "nkro": true,
     "rgblight": true
   },
+  "qmk": {
+    "locking": {
+      "enabled": false,
+      "resync": true
+    }
+  },
+  "tapping": {
+    "permissive_hold": true
+  },
   "matrix_pins": {
     "cols": ["B4", "E6", "D7", "C6", "D4", "D0"],
     "rows": ["F7", "B1", "B3", "B2", "B6"]

+ 0 - 5
keyboards/40percentclub/ut47/config.h

@@ -28,10 +28,5 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 /* COL2ROW, ROW2COL*/
 #define DIODE_DIRECTION COL2ROW
 
-/* 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
-
 /* Enable GNAP matrix serial output */
 #define GNAP_ENABLE

+ 13 - 0
keyboards/40percentclub/ut47/info.json → keyboards/40percentclub/ut47/keyboard.json

@@ -10,6 +10,19 @@
   },
   "processor": "atmega32u4",
   "bootloader": "caterina",
+  "features": {
+    "bootmagic": true,
+    "mousekey": true,
+    "extrakey": true,
+    "command": true,
+    "nkro": true
+  },
+  "qmk": {
+    "locking": {
+      "enabled": true,
+      "resync": true
+    }
+  },
   "layouts": {
     "LAYOUT": {
       "layout": [

+ 0 - 13
keyboards/40percentclub/ut47/rules.mk

@@ -1,16 +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 = yes        # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-AUDIO_ENABLE = no           # Audio output
-
-# custom matrix setup
 CUSTOM_MATRIX = yes
 SRC += matrix.c
 UART_DRIVER_REQUIRED = yes

+ 0 - 25
keyboards/45_ats/config.h

@@ -1,25 +0,0 @@
- /* 
- Copyright 2020 Alec Penland
- Copyright 2020 Garret Gartner
-  
- 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 <http://www.gnu.org/licenses/>. 
- */ 
-
-#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

+ 6 - 0
keyboards/45_ats/keyboard.json

@@ -16,6 +16,12 @@
         "mousekey": true,
         "nkro": false
     },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
     "matrix_pins": {
       "cols": ["E6", "B0", "B1", "B2", "B3", "B7", "F6", "F5", "F4", "C7", "F7", "C6", "B6", "D4"],
       "rows": ["D3", "D5", "D7", "D6"]

+ 7 - 0
keyboards/4pplet/aekiso60/rev_b/info.json → keyboards/4pplet/aekiso60/rev_b/keyboard.json

@@ -4,6 +4,13 @@
         "pid": "0x0011",
         "device_version": "0.0.2"
     },
+    "features": {
+        "bootmagic": true,
+        "mousekey": true,
+        "extrakey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "rgblight": {
         "saturation_steps": 8,
         "brightness_steps": 8,

+ 0 - 14
keyboards/4pplet/aekiso60/rev_b/rules.mk

@@ -1,16 +1,2 @@
-# 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 = yes        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-
 # Wildcard to allow APM32 MCU
 DFU_SUFFIX_ARGS = -p FFFF -v FFFF
-

+ 0 - 5
keyboards/4pplet/eagle_viper_rep/rev_a/config.h

@@ -25,11 +25,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #define WS2812_SPI_SCK_PIN A5
 #define WS2812_SPI_SCK_PAL_MODE 0
 
-/* 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
-
 /* Indicator leds */
 #define LOCK_LIGHTS     TRUE
 #define DISPLAY_LAYERS  TRUE

+ 16 - 0
keyboards/4pplet/eagle_viper_rep/rev_a/info.json → keyboards/4pplet/eagle_viper_rep/rev_a/keyboard.json

@@ -13,6 +13,22 @@
         "rows": ["A2", "A1", "B8", "A10", "C15", "A15", "B7", "B6", "C14", "C13"]
     },
     "diode_direction": "COL2ROW",
+    "features": {
+        "bootmagic": true,
+        "mousekey": true,
+        "extrakey": true,
+        "console": true,
+        "command": true,
+        "nkro": true,
+        "backlight": true,
+        "rgblight": true
+    },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
     "dynamic_keymap": {
         "layer_count": 5
     },

+ 0 - 13
keyboards/4pplet/eagle_viper_rep/rev_a/rules.mk

@@ -1,15 +1,2 @@
-# 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 = yes
-RGBLIGHT_ENABLE = yes
-
 # Wildcard to allow APM32 MCU
 DFU_SUFFIX_ARGS = -p FFFF -v FFFF
-

+ 0 - 5
keyboards/4pplet/eagle_viper_rep/rev_b/config.h

@@ -23,11 +23,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 /* Underglow */
 #define WS2812_EXTERNAL_PULLUP
 
-/* 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
-
 /* Indicator leds */
 #define LAYER_1             B14
 #define LAYER_2             B15

+ 15 - 0
keyboards/4pplet/eagle_viper_rep/rev_b/info.json → keyboards/4pplet/eagle_viper_rep/rev_b/keyboard.json

@@ -13,6 +13,21 @@
         "rows": ["A2", "A1", "B8", "A10", "C15", "A15", "B7", "B6", "C14", "C13"]
     },
     "diode_direction": "COL2ROW",
+    "features": {
+        "bootmagic": true,
+        "mousekey": true,
+        "extrakey": true,
+        "command": true,
+        "nkro": true,
+        "backlight": true,
+        "rgblight": true
+    },
+    "qmk": {
+        "locking": {
+            "enabled": true,
+            "resync": true
+        }
+    },
     "dynamic_keymap": {
         "layer_count": 5
     },

+ 0 - 13
keyboards/4pplet/eagle_viper_rep/rev_b/rules.mk

@@ -1,15 +1,2 @@
-# 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 = yes
-RGBLIGHT_ENABLE = yes
-
 # Wildcard to allow APM32 MCU
 DFU_SUFFIX_ARGS = -p FFFF -v FFFF
-

+ 2 - 1
keyboards/4pplet/steezy60/rev_a/info.json → keyboards/4pplet/steezy60/rev_a/keyboard.json

@@ -36,7 +36,8 @@
         "extrakey": true,
         "mousekey": false,
         "nkro": true,
-        "rgblight": true
+        "rgblight": true,
+        "key_lock": true
     },
     "rgblight": {
         "led_count": 12,

+ 0 - 4
keyboards/4pplet/steezy60/rev_a/rules.mk

@@ -1,4 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-KEY_LOCK_ENABLE = yes

Some files were not shown because too many files changed in this diff