diff --git a/keyboards/ano/keyboard.json b/keyboards/ano/keyboard.json
index e676ce7270..9c46895f1a 100644
--- a/keyboards/ano/keyboard.json
+++ b/keyboards/ano/keyboard.json
@@ -36,8 +36,11 @@
},
"processor": "STM32F303",
"bootloader": "stm32-dfu",
+ "layout_aliases": {
+ "LAYOUT_all": "LAYOUT"
+ },
"layouts": {
- "LAYOUT_all": {
+ "LAYOUT": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
diff --git a/keyboards/ano/keymaps/default/keymap.c b/keyboards/ano/keymaps/default/keymap.c
index 3e9907fa91..5832f76440 100644
--- a/keyboards/ano/keymaps/default/keymap.c
+++ b/keyboards/ano/keymaps/default/keymap.c
@@ -18,7 +18,7 @@
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_all(
+ [0] = LAYOUT(
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_MEDIA_PLAY_PAUSE,
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_NUM, KC_PSLS, KC_PAST, KC_B,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_P7, KC_P8, KC_P9, KC_PMNS,
@@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT
),
- [1] = LAYOUT_all(
+ [1] = LAYOUT(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
diff --git a/keyboards/ash1800/keyboard.json b/keyboards/ash1800/keyboard.json
index c2244a7ad7..7156172173 100644
--- a/keyboards/ash1800/keyboard.json
+++ b/keyboards/ash1800/keyboard.json
@@ -155,6 +155,498 @@
{"matrix": [11, 8], "x": 14.25, "y": 6.25},
{"matrix": [11, 9], "x": 15.25, "y": 6.25},
+ {"matrix": [11, 5], "x": 16.5, "y": 6},
+ {"matrix": [11, 6], "x": 17.5, "y": 6}
+ ]
+ },
+ "LAYOUT_ansi": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+
+ {"matrix": [0, 1], "x": 1.25, "y": 0},
+ {"matrix": [0, 2], "x": 2.25, "y": 0},
+ {"matrix": [0, 3], "x": 3.25, "y": 0},
+ {"matrix": [6, 0], "x": 4.25, "y": 0},
+
+ {"matrix": [6, 1], "x": 5.5, "y": 0},
+ {"matrix": [6, 2], "x": 6.5, "y": 0},
+ {"matrix": [6, 3], "x": 7.5, "y": 0},
+ {"matrix": [0, 4], "x": 8.5, "y": 0},
+
+ {"matrix": [0, 5], "x": 9.75, "y": 0},
+ {"matrix": [0, 6], "x": 10.75, "y": 0},
+ {"matrix": [0, 7], "x": 11.75, "y": 0},
+ {"matrix": [0, 8], "x": 12.75, "y": 0},
+
+ {"matrix": [5, 4], "x": 15.5, "y": 0},
+ {"matrix": [5, 5], "x": 16.5, "y": 0},
+ {"matrix": [5, 6], "x": 17.5, "y": 0},
+ {"matrix": [5, 7], "x": 18.5, "y": 0},
+
+ {"matrix": [6, 4], "x": 15.5, "y": 1},
+ {"matrix": [6, 5], "x": 16.5, "y": 1},
+ {"matrix": [6, 6], "x": 17.5, "y": 1},
+ {"matrix": [6, 7], "x": 18.5, "y": 1},
+
+ {"matrix": [1, 0], "x": 0, "y": 2},
+ {"matrix": [1, 1], "x": 1, "y": 2},
+ {"matrix": [1, 2], "x": 2, "y": 2},
+ {"matrix": [1, 3], "x": 3, "y": 2},
+ {"matrix": [7, 0], "x": 4, "y": 2},
+ {"matrix": [7, 1], "x": 5, "y": 2},
+ {"matrix": [7, 2], "x": 6, "y": 2},
+ {"matrix": [7, 3], "x": 7, "y": 2},
+ {"matrix": [1, 4], "x": 8, "y": 2},
+ {"matrix": [1, 5], "x": 9, "y": 2},
+ {"matrix": [1, 6], "x": 10, "y": 2},
+ {"matrix": [1, 7], "x": 11, "y": 2},
+ {"matrix": [1, 8], "x": 12, "y": 2},
+ {"matrix": [1, 9], "x": 13, "y": 2, "w": 2},
+
+ {"matrix": [7, 4], "x": 15.5, "y": 2},
+ {"matrix": [7, 5], "x": 16.5, "y": 2},
+ {"matrix": [7, 6], "x": 17.5, "y": 2},
+ {"matrix": [7, 7], "x": 18.5, "y": 2},
+
+ {"matrix": [2, 0], "x": 0, "y": 3, "w": 1.5},
+ {"matrix": [2, 1], "x": 1.5, "y": 3},
+ {"matrix": [2, 2], "x": 2.5, "y": 3},
+ {"matrix": [2, 3], "x": 3.5, "y": 3},
+ {"matrix": [8, 0], "x": 4.5, "y": 3},
+ {"matrix": [8, 1], "x": 5.5, "y": 3},
+ {"matrix": [8, 2], "x": 6.5, "y": 3},
+ {"matrix": [8, 3], "x": 7.5, "y": 3},
+ {"matrix": [2, 4], "x": 8.5, "y": 3},
+ {"matrix": [2, 5], "x": 9.5, "y": 3},
+ {"matrix": [2, 6], "x": 10.5, "y": 3},
+ {"matrix": [2, 7], "x": 11.5, "y": 3},
+ {"matrix": [2, 8], "x": 12.5, "y": 3},
+ {"matrix": [2, 9], "x": 13.5, "y": 3, "w": 1.5},
+
+ {"matrix": [8, 4], "x": 15.5, "y": 3},
+ {"matrix": [8, 5], "x": 16.5, "y": 3},
+ {"matrix": [8, 6], "x": 17.5, "y": 3},
+ {"matrix": [8, 7], "x": 18.5, "y": 3},
+
+ {"matrix": [3, 0], "x": 0, "y": 4, "w": 1.75},
+ {"matrix": [3, 1], "x": 1.75, "y": 4},
+ {"matrix": [3, 2], "x": 2.75, "y": 4},
+ {"matrix": [3, 3], "x": 3.75, "y": 4},
+ {"matrix": [9, 0], "x": 4.75, "y": 4},
+ {"matrix": [9, 1], "x": 5.75, "y": 4},
+ {"matrix": [9, 2], "x": 6.75, "y": 4},
+ {"matrix": [9, 3], "x": 7.75, "y": 4},
+ {"matrix": [3, 4], "x": 8.75, "y": 4},
+ {"matrix": [3, 5], "x": 9.75, "y": 4},
+ {"matrix": [3, 6], "x": 10.75, "y": 4},
+ {"matrix": [3, 7], "x": 11.75, "y": 4},
+ {"matrix": [3, 8], "x": 12.75, "y": 4, "w": 2.25},
+
+ {"matrix": [9, 4], "x": 15.5, "y": 4},
+ {"matrix": [9, 5], "x": 16.5, "y": 4},
+ {"matrix": [9, 6], "x": 17.5, "y": 4},
+ {"matrix": [9, 7], "x": 18.5, "y": 4},
+
+ {"matrix": [4, 0], "x": 0, "y": 5, "w": 2.25},
+ {"matrix": [4, 2], "x": 2.25, "y": 5},
+ {"matrix": [4, 3], "x": 3.25, "y": 5},
+ {"matrix": [10, 0], "x": 4.25, "y": 5},
+ {"matrix": [10, 1], "x": 5.25, "y": 5},
+ {"matrix": [10, 2], "x": 6.25, "y": 5},
+ {"matrix": [10, 3], "x": 7.25, "y": 5},
+ {"matrix": [4, 4], "x": 8.25, "y": 5},
+ {"matrix": [4, 5], "x": 9.25, "y": 5},
+ {"matrix": [4, 6], "x": 10.25, "y": 5},
+ {"matrix": [4, 7], "x": 11.25, "y": 5},
+ {"matrix": [4, 8], "x": 12.25, "y": 5, "w": 1.75},
+
+ {"matrix": [10, 9], "x": 14.25, "y": 5.25},
+
+ {"matrix": [10, 4], "x": 15.5, "y": 5},
+ {"matrix": [10, 5], "x": 16.5, "y": 5},
+ {"matrix": [10, 6], "x": 17.5, "y": 5},
+ {"matrix": [10, 7], "x": 18.5, "y": 5, "h": 2},
+
+ {"matrix": [5, 0], "x": 0, "y": 6, "w": 1.25},
+ {"matrix": [5, 1], "x": 1.25, "y": 6, "w": 1.25},
+ {"matrix": [5, 2], "x": 2.5, "y": 6, "w": 1.25},
+ {"matrix": [5, 3], "x": 3.75, "y": 6, "w": 6.25},
+ {"matrix": [11, 4], "x": 10, "y": 6, "w": 1.5},
+ {"matrix": [11, 7], "x": 11.5, "y": 6, "w": 1.5},
+
+ {"matrix": [10, 8], "x": 13.25, "y": 6.25},
+ {"matrix": [11, 8], "x": 14.25, "y": 6.25},
+ {"matrix": [11, 9], "x": 15.25, "y": 6.25},
+
+ {"matrix": [11, 5], "x": 16.5, "y": 6},
+ {"matrix": [11, 6], "x": 17.5, "y": 6}
+ ]
+ },
+ "LAYOUT_ansi_wkl": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+
+ {"matrix": [0, 1], "x": 1.25, "y": 0},
+ {"matrix": [0, 2], "x": 2.25, "y": 0},
+ {"matrix": [0, 3], "x": 3.25, "y": 0},
+ {"matrix": [6, 0], "x": 4.25, "y": 0},
+
+ {"matrix": [6, 1], "x": 5.5, "y": 0},
+ {"matrix": [6, 2], "x": 6.5, "y": 0},
+ {"matrix": [6, 3], "x": 7.5, "y": 0},
+ {"matrix": [0, 4], "x": 8.5, "y": 0},
+
+ {"matrix": [0, 5], "x": 9.75, "y": 0},
+ {"matrix": [0, 6], "x": 10.75, "y": 0},
+ {"matrix": [0, 7], "x": 11.75, "y": 0},
+ {"matrix": [0, 8], "x": 12.75, "y": 0},
+
+ {"matrix": [5, 4], "x": 15.5, "y": 0},
+ {"matrix": [5, 5], "x": 16.5, "y": 0},
+ {"matrix": [5, 6], "x": 17.5, "y": 0},
+ {"matrix": [5, 7], "x": 18.5, "y": 0},
+
+ {"matrix": [6, 4], "x": 15.5, "y": 1},
+ {"matrix": [6, 5], "x": 16.5, "y": 1},
+ {"matrix": [6, 6], "x": 17.5, "y": 1},
+ {"matrix": [6, 7], "x": 18.5, "y": 1},
+
+ {"matrix": [1, 0], "x": 0, "y": 2},
+ {"matrix": [1, 1], "x": 1, "y": 2},
+ {"matrix": [1, 2], "x": 2, "y": 2},
+ {"matrix": [1, 3], "x": 3, "y": 2},
+ {"matrix": [7, 0], "x": 4, "y": 2},
+ {"matrix": [7, 1], "x": 5, "y": 2},
+ {"matrix": [7, 2], "x": 6, "y": 2},
+ {"matrix": [7, 3], "x": 7, "y": 2},
+ {"matrix": [1, 4], "x": 8, "y": 2},
+ {"matrix": [1, 5], "x": 9, "y": 2},
+ {"matrix": [1, 6], "x": 10, "y": 2},
+ {"matrix": [1, 7], "x": 11, "y": 2},
+ {"matrix": [1, 8], "x": 12, "y": 2},
+ {"matrix": [1, 9], "x": 13, "y": 2, "w": 2},
+
+ {"matrix": [7, 4], "x": 15.5, "y": 2},
+ {"matrix": [7, 5], "x": 16.5, "y": 2},
+ {"matrix": [7, 6], "x": 17.5, "y": 2},
+ {"matrix": [7, 7], "x": 18.5, "y": 2},
+
+ {"matrix": [2, 0], "x": 0, "y": 3, "w": 1.5},
+ {"matrix": [2, 1], "x": 1.5, "y": 3},
+ {"matrix": [2, 2], "x": 2.5, "y": 3},
+ {"matrix": [2, 3], "x": 3.5, "y": 3},
+ {"matrix": [8, 0], "x": 4.5, "y": 3},
+ {"matrix": [8, 1], "x": 5.5, "y": 3},
+ {"matrix": [8, 2], "x": 6.5, "y": 3},
+ {"matrix": [8, 3], "x": 7.5, "y": 3},
+ {"matrix": [2, 4], "x": 8.5, "y": 3},
+ {"matrix": [2, 5], "x": 9.5, "y": 3},
+ {"matrix": [2, 6], "x": 10.5, "y": 3},
+ {"matrix": [2, 7], "x": 11.5, "y": 3},
+ {"matrix": [2, 8], "x": 12.5, "y": 3},
+ {"matrix": [2, 9], "x": 13.5, "y": 3, "w": 1.5},
+
+ {"matrix": [8, 4], "x": 15.5, "y": 3},
+ {"matrix": [8, 5], "x": 16.5, "y": 3},
+ {"matrix": [8, 6], "x": 17.5, "y": 3},
+ {"matrix": [8, 7], "x": 18.5, "y": 3},
+
+ {"matrix": [3, 0], "x": 0, "y": 4, "w": 1.75},
+ {"matrix": [3, 1], "x": 1.75, "y": 4},
+ {"matrix": [3, 2], "x": 2.75, "y": 4},
+ {"matrix": [3, 3], "x": 3.75, "y": 4},
+ {"matrix": [9, 0], "x": 4.75, "y": 4},
+ {"matrix": [9, 1], "x": 5.75, "y": 4},
+ {"matrix": [9, 2], "x": 6.75, "y": 4},
+ {"matrix": [9, 3], "x": 7.75, "y": 4},
+ {"matrix": [3, 4], "x": 8.75, "y": 4},
+ {"matrix": [3, 5], "x": 9.75, "y": 4},
+ {"matrix": [3, 6], "x": 10.75, "y": 4},
+ {"matrix": [3, 7], "x": 11.75, "y": 4},
+ {"matrix": [3, 8], "x": 12.75, "y": 4, "w": 2.25},
+
+ {"matrix": [9, 4], "x": 15.5, "y": 4},
+ {"matrix": [9, 5], "x": 16.5, "y": 4},
+ {"matrix": [9, 6], "x": 17.5, "y": 4},
+ {"matrix": [9, 7], "x": 18.5, "y": 4},
+
+ {"matrix": [4, 0], "x": 0, "y": 5, "w": 2.25},
+ {"matrix": [4, 2], "x": 2.25, "y": 5},
+ {"matrix": [4, 3], "x": 3.25, "y": 5},
+ {"matrix": [10, 0], "x": 4.25, "y": 5},
+ {"matrix": [10, 1], "x": 5.25, "y": 5},
+ {"matrix": [10, 2], "x": 6.25, "y": 5},
+ {"matrix": [10, 3], "x": 7.25, "y": 5},
+ {"matrix": [4, 4], "x": 8.25, "y": 5},
+ {"matrix": [4, 5], "x": 9.25, "y": 5},
+ {"matrix": [4, 6], "x": 10.25, "y": 5},
+ {"matrix": [4, 7], "x": 11.25, "y": 5},
+ {"matrix": [4, 8], "x": 12.25, "y": 5, "w": 1.75},
+
+ {"matrix": [10, 9], "x": 14.25, "y": 5.25},
+
+ {"matrix": [10, 4], "x": 15.5, "y": 5},
+ {"matrix": [10, 5], "x": 16.5, "y": 5},
+ {"matrix": [10, 6], "x": 17.5, "y": 5},
+ {"matrix": [10, 7], "x": 18.5, "y": 5, "h": 2},
+
+ {"matrix": [5, 0], "x": 0, "y": 6, "w": 1.5},
+ {"matrix": [5, 1], "x": 1.5, "y": 6, "w": 1.5},
+ {"matrix": [5, 3], "x": 3, "y": 6, "w": 7},
+ {"matrix": [11, 4], "x": 10, "y": 6, "w": 1.5},
+ {"matrix": [11, 7], "x": 11.5, "y": 6, "w": 1.5},
+
+ {"matrix": [10, 8], "x": 13.25, "y": 6.25},
+ {"matrix": [11, 8], "x": 14.25, "y": 6.25},
+ {"matrix": [11, 9], "x": 15.25, "y": 6.25},
+
+ {"matrix": [11, 5], "x": 16.5, "y": 6},
+ {"matrix": [11, 6], "x": 17.5, "y": 6}
+ ]
+ },
+ "LAYOUT_iso": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+
+ {"matrix": [0, 1], "x": 1.25, "y": 0},
+ {"matrix": [0, 2], "x": 2.25, "y": 0},
+ {"matrix": [0, 3], "x": 3.25, "y": 0},
+ {"matrix": [6, 0], "x": 4.25, "y": 0},
+
+ {"matrix": [6, 1], "x": 5.5, "y": 0},
+ {"matrix": [6, 2], "x": 6.5, "y": 0},
+ {"matrix": [6, 3], "x": 7.5, "y": 0},
+ {"matrix": [0, 4], "x": 8.5, "y": 0},
+
+ {"matrix": [0, 5], "x": 9.75, "y": 0},
+ {"matrix": [0, 6], "x": 10.75, "y": 0},
+ {"matrix": [0, 7], "x": 11.75, "y": 0},
+ {"matrix": [0, 8], "x": 12.75, "y": 0},
+
+ {"matrix": [5, 4], "x": 15.5, "y": 0},
+ {"matrix": [5, 5], "x": 16.5, "y": 0},
+ {"matrix": [5, 6], "x": 17.5, "y": 0},
+ {"matrix": [5, 7], "x": 18.5, "y": 0},
+
+ {"matrix": [6, 4], "x": 15.5, "y": 1},
+ {"matrix": [6, 5], "x": 16.5, "y": 1},
+ {"matrix": [6, 6], "x": 17.5, "y": 1},
+ {"matrix": [6, 7], "x": 18.5, "y": 1},
+
+ {"matrix": [1, 0], "x": 0, "y": 2},
+ {"matrix": [1, 1], "x": 1, "y": 2},
+ {"matrix": [1, 2], "x": 2, "y": 2},
+ {"matrix": [1, 3], "x": 3, "y": 2},
+ {"matrix": [7, 0], "x": 4, "y": 2},
+ {"matrix": [7, 1], "x": 5, "y": 2},
+ {"matrix": [7, 2], "x": 6, "y": 2},
+ {"matrix": [7, 3], "x": 7, "y": 2},
+ {"matrix": [1, 4], "x": 8, "y": 2},
+ {"matrix": [1, 5], "x": 9, "y": 2},
+ {"matrix": [1, 6], "x": 10, "y": 2},
+ {"matrix": [1, 7], "x": 11, "y": 2},
+ {"matrix": [1, 8], "x": 12, "y": 2},
+ {"matrix": [1, 9], "x": 13, "y": 2, "w": 2},
+
+ {"matrix": [7, 4], "x": 15.5, "y": 2},
+ {"matrix": [7, 5], "x": 16.5, "y": 2},
+ {"matrix": [7, 6], "x": 17.5, "y": 2},
+ {"matrix": [7, 7], "x": 18.5, "y": 2},
+
+ {"matrix": [2, 0], "x": 0, "y": 3, "w": 1.5},
+ {"matrix": [2, 1], "x": 1.5, "y": 3},
+ {"matrix": [2, 2], "x": 2.5, "y": 3},
+ {"matrix": [2, 3], "x": 3.5, "y": 3},
+ {"matrix": [8, 0], "x": 4.5, "y": 3},
+ {"matrix": [8, 1], "x": 5.5, "y": 3},
+ {"matrix": [8, 2], "x": 6.5, "y": 3},
+ {"matrix": [8, 3], "x": 7.5, "y": 3},
+ {"matrix": [2, 4], "x": 8.5, "y": 3},
+ {"matrix": [2, 5], "x": 9.5, "y": 3},
+ {"matrix": [2, 6], "x": 10.5, "y": 3},
+ {"matrix": [2, 7], "x": 11.5, "y": 3},
+ {"matrix": [2, 8], "x": 12.5, "y": 3},
+
+ {"matrix": [8, 4], "x": 15.5, "y": 3},
+ {"matrix": [8, 5], "x": 16.5, "y": 3},
+ {"matrix": [8, 6], "x": 17.5, "y": 3},
+ {"matrix": [8, 7], "x": 18.5, "y": 3},
+
+ {"matrix": [3, 0], "x": 0, "y": 4, "w": 1.75},
+ {"matrix": [3, 1], "x": 1.75, "y": 4},
+ {"matrix": [3, 2], "x": 2.75, "y": 4},
+ {"matrix": [3, 3], "x": 3.75, "y": 4},
+ {"matrix": [9, 0], "x": 4.75, "y": 4},
+ {"matrix": [9, 1], "x": 5.75, "y": 4},
+ {"matrix": [9, 2], "x": 6.75, "y": 4},
+ {"matrix": [9, 3], "x": 7.75, "y": 4},
+ {"matrix": [3, 4], "x": 8.75, "y": 4},
+ {"matrix": [3, 5], "x": 9.75, "y": 4},
+ {"matrix": [3, 6], "x": 10.75, "y": 4},
+ {"matrix": [3, 7], "x": 11.75, "y": 4},
+ {"matrix": [2, 9], "x": 12.75, "y": 4},
+ {"matrix": [3, 8], "x": 13.75, "y": 3, "w": 1.25, "h": 2},
+
+ {"matrix": [9, 4], "x": 15.5, "y": 4},
+ {"matrix": [9, 5], "x": 16.5, "y": 4},
+ {"matrix": [9, 6], "x": 17.5, "y": 4},
+ {"matrix": [9, 7], "x": 18.5, "y": 4},
+
+ {"matrix": [4, 0], "x": 0, "y": 5, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 5},
+ {"matrix": [4, 2], "x": 2.25, "y": 5},
+ {"matrix": [4, 3], "x": 3.25, "y": 5},
+ {"matrix": [10, 0], "x": 4.25, "y": 5},
+ {"matrix": [10, 1], "x": 5.25, "y": 5},
+ {"matrix": [10, 2], "x": 6.25, "y": 5},
+ {"matrix": [10, 3], "x": 7.25, "y": 5},
+ {"matrix": [4, 4], "x": 8.25, "y": 5},
+ {"matrix": [4, 5], "x": 9.25, "y": 5},
+ {"matrix": [4, 6], "x": 10.25, "y": 5},
+ {"matrix": [4, 7], "x": 11.25, "y": 5},
+ {"matrix": [4, 8], "x": 12.25, "y": 5, "w": 1.75},
+
+ {"matrix": [10, 9], "x": 14.25, "y": 5.25},
+
+ {"matrix": [10, 4], "x": 15.5, "y": 5},
+ {"matrix": [10, 5], "x": 16.5, "y": 5},
+ {"matrix": [10, 6], "x": 17.5, "y": 5},
+ {"matrix": [10, 7], "x": 18.5, "y": 5, "h": 2},
+
+ {"matrix": [5, 0], "x": 0, "y": 6, "w": 1.25},
+ {"matrix": [5, 1], "x": 1.25, "y": 6, "w": 1.25},
+ {"matrix": [5, 2], "x": 2.5, "y": 6, "w": 1.25},
+ {"matrix": [5, 3], "x": 3.75, "y": 6, "w": 6.25},
+ {"matrix": [11, 4], "x": 10, "y": 6, "w": 1.5},
+ {"matrix": [11, 7], "x": 11.5, "y": 6, "w": 1.5},
+
+ {"matrix": [10, 8], "x": 13.25, "y": 6.25},
+ {"matrix": [11, 8], "x": 14.25, "y": 6.25},
+ {"matrix": [11, 9], "x": 15.25, "y": 6.25},
+
+ {"matrix": [11, 5], "x": 16.5, "y": 6},
+ {"matrix": [11, 6], "x": 17.5, "y": 6}
+ ]
+ },
+ "LAYOUT_iso_wkl": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+
+ {"matrix": [0, 1], "x": 1.25, "y": 0},
+ {"matrix": [0, 2], "x": 2.25, "y": 0},
+ {"matrix": [0, 3], "x": 3.25, "y": 0},
+ {"matrix": [6, 0], "x": 4.25, "y": 0},
+
+ {"matrix": [6, 1], "x": 5.5, "y": 0},
+ {"matrix": [6, 2], "x": 6.5, "y": 0},
+ {"matrix": [6, 3], "x": 7.5, "y": 0},
+ {"matrix": [0, 4], "x": 8.5, "y": 0},
+
+ {"matrix": [0, 5], "x": 9.75, "y": 0},
+ {"matrix": [0, 6], "x": 10.75, "y": 0},
+ {"matrix": [0, 7], "x": 11.75, "y": 0},
+ {"matrix": [0, 8], "x": 12.75, "y": 0},
+
+ {"matrix": [5, 4], "x": 15.5, "y": 0},
+ {"matrix": [5, 5], "x": 16.5, "y": 0},
+ {"matrix": [5, 6], "x": 17.5, "y": 0},
+ {"matrix": [5, 7], "x": 18.5, "y": 0},
+
+ {"matrix": [6, 4], "x": 15.5, "y": 1},
+ {"matrix": [6, 5], "x": 16.5, "y": 1},
+ {"matrix": [6, 6], "x": 17.5, "y": 1},
+ {"matrix": [6, 7], "x": 18.5, "y": 1},
+
+ {"matrix": [1, 0], "x": 0, "y": 2},
+ {"matrix": [1, 1], "x": 1, "y": 2},
+ {"matrix": [1, 2], "x": 2, "y": 2},
+ {"matrix": [1, 3], "x": 3, "y": 2},
+ {"matrix": [7, 0], "x": 4, "y": 2},
+ {"matrix": [7, 1], "x": 5, "y": 2},
+ {"matrix": [7, 2], "x": 6, "y": 2},
+ {"matrix": [7, 3], "x": 7, "y": 2},
+ {"matrix": [1, 4], "x": 8, "y": 2},
+ {"matrix": [1, 5], "x": 9, "y": 2},
+ {"matrix": [1, 6], "x": 10, "y": 2},
+ {"matrix": [1, 7], "x": 11, "y": 2},
+ {"matrix": [1, 8], "x": 12, "y": 2},
+ {"matrix": [1, 9], "x": 13, "y": 2, "w": 2},
+
+ {"matrix": [7, 4], "x": 15.5, "y": 2},
+ {"matrix": [7, 5], "x": 16.5, "y": 2},
+ {"matrix": [7, 6], "x": 17.5, "y": 2},
+ {"matrix": [7, 7], "x": 18.5, "y": 2},
+
+ {"matrix": [2, 0], "x": 0, "y": 3, "w": 1.5},
+ {"matrix": [2, 1], "x": 1.5, "y": 3},
+ {"matrix": [2, 2], "x": 2.5, "y": 3},
+ {"matrix": [2, 3], "x": 3.5, "y": 3},
+ {"matrix": [8, 0], "x": 4.5, "y": 3},
+ {"matrix": [8, 1], "x": 5.5, "y": 3},
+ {"matrix": [8, 2], "x": 6.5, "y": 3},
+ {"matrix": [8, 3], "x": 7.5, "y": 3},
+ {"matrix": [2, 4], "x": 8.5, "y": 3},
+ {"matrix": [2, 5], "x": 9.5, "y": 3},
+ {"matrix": [2, 6], "x": 10.5, "y": 3},
+ {"matrix": [2, 7], "x": 11.5, "y": 3},
+ {"matrix": [2, 8], "x": 12.5, "y": 3},
+
+ {"matrix": [8, 4], "x": 15.5, "y": 3},
+ {"matrix": [8, 5], "x": 16.5, "y": 3},
+ {"matrix": [8, 6], "x": 17.5, "y": 3},
+ {"matrix": [8, 7], "x": 18.5, "y": 3},
+
+ {"matrix": [3, 0], "x": 0, "y": 4, "w": 1.75},
+ {"matrix": [3, 1], "x": 1.75, "y": 4},
+ {"matrix": [3, 2], "x": 2.75, "y": 4},
+ {"matrix": [3, 3], "x": 3.75, "y": 4},
+ {"matrix": [9, 0], "x": 4.75, "y": 4},
+ {"matrix": [9, 1], "x": 5.75, "y": 4},
+ {"matrix": [9, 2], "x": 6.75, "y": 4},
+ {"matrix": [9, 3], "x": 7.75, "y": 4},
+ {"matrix": [3, 4], "x": 8.75, "y": 4},
+ {"matrix": [3, 5], "x": 9.75, "y": 4},
+ {"matrix": [3, 6], "x": 10.75, "y": 4},
+ {"matrix": [3, 7], "x": 11.75, "y": 4},
+ {"matrix": [2, 9], "x": 12.75, "y": 4},
+ {"matrix": [3, 8], "x": 13.75, "y": 3, "w": 1.25, "h": 2},
+
+ {"matrix": [9, 4], "x": 15.5, "y": 4},
+ {"matrix": [9, 5], "x": 16.5, "y": 4},
+ {"matrix": [9, 6], "x": 17.5, "y": 4},
+ {"matrix": [9, 7], "x": 18.5, "y": 4},
+
+ {"matrix": [4, 0], "x": 0, "y": 5, "w": 1.25},
+ {"matrix": [4, 1], "x": 1.25, "y": 5},
+ {"matrix": [4, 2], "x": 2.25, "y": 5},
+ {"matrix": [4, 3], "x": 3.25, "y": 5},
+ {"matrix": [10, 0], "x": 4.25, "y": 5},
+ {"matrix": [10, 1], "x": 5.25, "y": 5},
+ {"matrix": [10, 2], "x": 6.25, "y": 5},
+ {"matrix": [10, 3], "x": 7.25, "y": 5},
+ {"matrix": [4, 4], "x": 8.25, "y": 5},
+ {"matrix": [4, 5], "x": 9.25, "y": 5},
+ {"matrix": [4, 6], "x": 10.25, "y": 5},
+ {"matrix": [4, 7], "x": 11.25, "y": 5},
+ {"matrix": [4, 8], "x": 12.25, "y": 5, "w": 1.75},
+
+ {"matrix": [10, 9], "x": 14.25, "y": 5.25},
+
+ {"matrix": [10, 4], "x": 15.5, "y": 5},
+ {"matrix": [10, 5], "x": 16.5, "y": 5},
+ {"matrix": [10, 6], "x": 17.5, "y": 5},
+ {"matrix": [10, 7], "x": 18.5, "y": 5, "h": 2},
+
+ {"matrix": [5, 0], "x": 0, "y": 6, "w": 1.5},
+ {"matrix": [5, 1], "x": 1.5, "y": 6, "w": 1.5},
+ {"matrix": [5, 3], "x": 3, "y": 6, "w": 7},
+ {"matrix": [11, 4], "x": 10, "y": 6, "w": 1.5},
+ {"matrix": [11, 7], "x": 11.5, "y": 6, "w": 1.5},
+
+ {"matrix": [10, 8], "x": 13.25, "y": 6.25},
+ {"matrix": [11, 8], "x": 14.25, "y": 6.25},
+ {"matrix": [11, 9], "x": 15.25, "y": 6.25},
+
{"matrix": [11, 5], "x": 16.5, "y": 6},
{"matrix": [11, 6], "x": 17.5, "y": 6}
]
diff --git a/keyboards/ash1800/matrix_diagram.md b/keyboards/ash1800/matrix_diagram.md
new file mode 100644
index 0000000000..4141116663
--- /dev/null
+++ b/keyboards/ash1800/matrix_diagram.md
@@ -0,0 +1,26 @@
+# Matrix Diagram for ASH1800
+
+```
+┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐
+│00 ││01 │02 │03 │60 ││61 │62 │63 │04 ││05 │06 │07 │08 │ │54 │55 │56 │57 │
+└───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘ ├───┼───┼───┼───┤
+ │64 │65 │66 │67 │
+┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ├───┼───┼───┼───┤
+│10 │11 │12 │13 │70 │71 │72 │73 │14 │15 │16 │17 │18 │19 │ │74 │75 │76 │77 │
+├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┼───┤ ┌─────┐
+│20 │21 │22 │23 │80 │81 │82 │83 │24 │25 │26 │27 │28 │29 │ │84 │85 │86 │87 │ │38 │
+├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ ├───┼───┼───┼───┤ ┌──┴┐ │ ISO Enter
+│30 │31 │32 │33 │90 │91 │92 │93 │34 │35 │36 │37 │38 │ │94 │95 │96 │97 │ │29 │ │
+├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┘ ├───┼───┼───┼───┤ └───┴────┘
+│40 │41 │42 │43 │A0 │A1 │A2 │A3 │44 │45 │46 │47 │48 │┌───┐│A4 │A5 │A6 │A7 │
+├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴──┬───┘│A9 │└───┼───┼───┤ │
+│50 │51 │52 │53 │B4 │B7 │┌───┼───┼───┐│B5 │B6 │ │
+└────┴────┴────┴────────────────────────┴─────┴─────┘│A8 │B8 │B9 │└───┴───┴───┘
+ └───┴───┴───┘
+┌────────┐
+│40 │ 2.25u LShift
+└────────┘
+┌─────┬─────┬───────────────────────────┬─────┬─────┐
+│50 │51 │53 │B4 │B7 │ WKL
+└─────┴─────┴───────────────────────────┴─────┴─────┘
+```
diff --git a/keyboards/latincompass/latin60rgb/config.h b/keyboards/latincompass/latin60rgb/config.h
index 94ea00468c..b2636abe1a 100644
--- a/keyboards/latincompass/latin60rgb/config.h
+++ b/keyboards/latincompass/latin60rgb/config.h
@@ -16,5 +16,3 @@
#pragma once
#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
-
-#define RGB_MATRIX_LED_COUNT 60
diff --git a/keyboards/latincompass/latin60rgb/keyboard.json b/keyboards/latincompass/latin60rgb/keyboard.json
index 3197b3979d..764a7c882a 100644
--- a/keyboards/latincompass/latin60rgb/keyboard.json
+++ b/keyboards/latincompass/latin60rgb/keyboard.json
@@ -40,6 +40,72 @@
"solid_reactive": true
},
"driver": "is31fl3733",
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [0, 1], "x": 16, "y": 0, "flags": 4},
+ {"matrix": [0, 2], "x": 32, "y": 0, "flags": 4},
+ {"matrix": [0, 3], "x": 48, "y": 0, "flags": 4},
+ {"matrix": [0, 4], "x": 64, "y": 0, "flags": 4},
+ {"matrix": [0, 5], "x": 80, "y": 0, "flags": 4},
+ {"matrix": [0, 6], "x": 96, "y": 0, "flags": 4},
+ {"matrix": [0, 7], "x": 112, "y": 0, "flags": 4},
+ {"matrix": [0, 8], "x": 128, "y": 0, "flags": 4},
+ {"matrix": [0, 9], "x": 144, "y": 0, "flags": 4},
+ {"matrix": [0, 10], "x": 160, "y": 0, "flags": 4},
+ {"matrix": [0, 11], "x": 176, "y": 0, "flags": 4},
+ {"matrix": [0, 12], "x": 192, "y": 0, "flags": 4},
+ {"matrix": [0, 13], "x": 216, "y": 0, "flags": 1},
+
+ {"matrix": [1, 0], "x": 4, "y": 16, "flags": 1},
+ {"matrix": [1, 1], "x": 24, "y": 16, "flags": 4},
+ {"matrix": [1, 2], "x": 40, "y": 16, "flags": 4},
+ {"matrix": [1, 3], "x": 56, "y": 16, "flags": 4},
+ {"matrix": [1, 4], "x": 72, "y": 16, "flags": 4},
+ {"matrix": [1, 5], "x": 88, "y": 16, "flags": 4},
+ {"matrix": [1, 6], "x": 104, "y": 16, "flags": 4},
+ {"matrix": [1, 7], "x": 120, "y": 16, "flags": 4},
+ {"matrix": [1, 8], "x": 136, "y": 16, "flags": 4},
+ {"matrix": [1, 9], "x": 152, "y": 16, "flags": 4},
+ {"matrix": [1, 10], "x": 168, "y": 16, "flags": 4},
+ {"matrix": [1, 11], "x": 184, "y": 16, "flags": 4},
+ {"matrix": [1, 12], "x": 200, "y": 16, "flags": 4},
+ {"matrix": [1, 13], "x": 220, "y": 16, "flags": 1},
+
+ {"matrix": [2, 0], "x": 6, "y": 32, "flags": 1},
+ {"matrix": [2, 1], "x": 28, "y": 32, "flags": 4},
+ {"matrix": [2, 2], "x": 44, "y": 32, "flags": 4},
+ {"matrix": [2, 3], "x": 60, "y": 32, "flags": 4},
+ {"matrix": [2, 4], "x": 76, "y": 32, "flags": 4},
+ {"matrix": [2, 5], "x": 92, "y": 32, "flags": 4},
+ {"matrix": [2, 6], "x": 108, "y": 32, "flags": 4},
+ {"matrix": [2, 7], "x": 124, "y": 32, "flags": 4},
+ {"matrix": [2, 8], "x": 140, "y": 32, "flags": 4},
+ {"matrix": [2, 9], "x": 156, "y": 32, "flags": 4},
+ {"matrix": [2, 10], "x": 172, "y": 32, "flags": 4},
+ {"matrix": [2, 11], "x": 188, "y": 32, "flags": 4},
+ {"matrix": [2, 12], "x": 214, "y": 32, "flags": 1},
+
+ {"matrix": [3, 0], "x": 8, "y": 48, "flags": 1},
+ {"matrix": [3, 1], "x": 32, "y": 48, "flags": 4},
+ {"matrix": [3, 2], "x": 48, "y": 48, "flags": 4},
+ {"matrix": [3, 3], "x": 64, "y": 48, "flags": 4},
+ {"matrix": [3, 4], "x": 80, "y": 48, "flags": 4},
+ {"matrix": [3, 5], "x": 96, "y": 48, "flags": 4},
+ {"matrix": [3, 6], "x": 112, "y": 48, "flags": 4},
+ {"matrix": [3, 7], "x": 128, "y": 48, "flags": 4},
+ {"matrix": [3, 8], "x": 144, "y": 48, "flags": 4},
+ {"matrix": [3, 9], "x": 160, "y": 48, "flags": 4},
+ {"matrix": [3, 10], "x": 176, "y": 48, "flags": 4},
+ {"matrix": [3, 11], "x": 192, "y": 48, "flags": 4},
+ {"matrix": [3, 12], "x": 208, "y": 48, "flags": 4},
+ {"matrix": [3, 13], "x": 224, "y": 48, "flags": 4},
+
+ {"matrix": [4, 0], "x": 22, "y": 64, "flags": 1},
+ {"matrix": [4, 1], "x": 42, "y": 64, "flags": 1},
+ {"matrix": [4, 2], "x": 102, "y": 64, "flags": 4},
+ {"matrix": [4, 3], "x": 162, "y": 64, "flags": 1},
+ {"matrix": [4, 4], "x": 180, "y": 64, "flags": 1}
+ ],
"sleep": true
},
"features": {
diff --git a/keyboards/latincompass/latin60rgb/latin60rgb.c b/keyboards/latincompass/latin60rgb/latin60rgb.c
index 8a032d76b1..305aaff5f2 100644
--- a/keyboards/latincompass/latin60rgb/latin60rgb.c
+++ b/keyboards/latincompass/latin60rgb/latin60rgb.c
@@ -17,92 +17,70 @@
#ifdef RGB_MATRIX_ENABLE
const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
- { 0, SW11_CS13, SW10_CS13, SW12_CS13 },
- { 0, SW11_CS12, SW10_CS12, SW12_CS12 },
- { 0, SW11_CS11, SW10_CS11, SW12_CS11 },
- { 0, SW11_CS10, SW10_CS10, SW12_CS10 },
- { 0, SW11_CS9, SW10_CS9, SW12_CS9 },
- { 0, SW11_CS8, SW10_CS8, SW12_CS8 },
- { 0, SW11_CS7, SW10_CS7, SW12_CS7 },
- { 0, SW11_CS6, SW10_CS6, SW12_CS6 },
- { 0, SW11_CS5, SW10_CS5, SW12_CS5 },
- { 0, SW11_CS4, SW10_CS4, SW12_CS4 },
- { 0, SW11_CS3, SW10_CS3, SW12_CS3 },
- { 0, SW11_CS2, SW10_CS2, SW12_CS2 },
- { 0, SW11_CS1, SW10_CS1, SW12_CS1 },
-
- { 0, SW8_CS16, SW7_CS16, SW9_CS16 },
- { 0, SW8_CS15, SW7_CS15, SW9_CS15 },
- { 0, SW8_CS14, SW7_CS14, SW9_CS14 },
- { 0, SW8_CS13, SW7_CS13, SW9_CS13 },
- { 0, SW8_CS12, SW7_CS12, SW9_CS12 },
- { 0, SW8_CS11, SW7_CS11, SW9_CS11 },
- { 0, SW8_CS10, SW7_CS10, SW9_CS10 },
- { 0, SW8_CS9, SW7_CS9, SW9_CS9 },
- { 0, SW8_CS8, SW7_CS8, SW9_CS8 },
- { 0, SW8_CS7, SW7_CS7, SW9_CS7 },
- { 0, SW8_CS6, SW7_CS6, SW9_CS6 },
- { 0, SW8_CS5, SW7_CS5, SW9_CS5 },
- { 0, SW8_CS4, SW7_CS4, SW9_CS4 },
- { 0, SW8_CS3, SW7_CS3, SW9_CS3 },
- { 0, SW8_CS2, SW7_CS2, SW9_CS2 },
- { 0, SW8_CS1, SW7_CS1, SW9_CS1 },
-
- { 0, SW5_CS16, SW4_CS16, SW6_CS16 },
- { 0, SW5_CS15, SW4_CS15, SW6_CS15 },
- { 0, SW5_CS14, SW4_CS14, SW6_CS14 },
- { 0, SW5_CS13, SW4_CS13, SW6_CS13 },
- { 0, SW5_CS12, SW4_CS12, SW6_CS12 },
- { 0, SW5_CS11, SW4_CS11, SW6_CS11 },
- { 0, SW5_CS10, SW4_CS10, SW6_CS10 },
- { 0, SW5_CS9, SW4_CS9, SW6_CS9 },
- { 0, SW5_CS8, SW4_CS8, SW6_CS8 },
- { 0, SW5_CS7, SW4_CS7, SW6_CS7 },
- { 0, SW5_CS6, SW4_CS6, SW6_CS6 },
- { 0, SW5_CS5, SW4_CS5, SW6_CS5 },
- { 0, SW5_CS4, SW4_CS4, SW6_CS4 },
- { 0, SW5_CS3, SW4_CS3, SW6_CS3 },
- { 0, SW5_CS2, SW4_CS2, SW6_CS2 },
- { 0, SW5_CS1, SW4_CS1, SW6_CS1 },
+ { 0, SW2_CS1, SW1_CS1, SW3_CS1 },
+ { 0, SW2_CS2, SW1_CS2, SW3_CS2 },
+ { 0, SW2_CS3, SW1_CS3, SW3_CS3 },
+ { 0, SW2_CS4, SW1_CS4, SW3_CS4 },
+ { 0, SW2_CS5, SW1_CS5, SW3_CS5 },
+ { 0, SW2_CS6, SW1_CS6, SW3_CS6 },
+ { 0, SW2_CS7, SW1_CS7, SW3_CS7 },
+ { 0, SW2_CS8, SW1_CS8, SW3_CS8 },
+ { 0, SW2_CS9, SW1_CS9, SW3_CS9 },
+ { 0, SW2_CS10, SW1_CS10, SW3_CS10 },
+ { 0, SW2_CS11, SW1_CS11, SW3_CS11 },
+ { 0, SW2_CS12, SW1_CS12, SW3_CS12 },
+ { 0, SW2_CS13, SW1_CS13, SW3_CS13 },
+ { 0, SW2_CS14, SW1_CS14, SW3_CS14 },
{ 0, SW2_CS16, SW1_CS16, SW3_CS16 },
- { 0, SW2_CS14, SW1_CS14, SW3_CS14 },
- { 0, SW2_CS13, SW1_CS13, SW3_CS13 },
- { 0, SW2_CS12, SW1_CS12, SW3_CS12 },
- { 0, SW2_CS11, SW1_CS11, SW3_CS11 },
- { 0, SW2_CS10, SW1_CS10, SW3_CS10 },
- { 0, SW2_CS9, SW1_CS9, SW3_CS9 },
- { 0, SW2_CS8, SW1_CS8, SW3_CS8 },
- { 0, SW2_CS7, SW1_CS7, SW3_CS7 },
- { 0, SW2_CS6, SW1_CS6, SW3_CS6 },
- { 0, SW2_CS5, SW1_CS5, SW3_CS5 },
- { 0, SW2_CS4, SW1_CS4, SW3_CS4 },
- { 0, SW2_CS3, SW1_CS3, SW3_CS3 },
- { 0, SW2_CS2, SW1_CS2, SW3_CS2 },
- { 0, SW2_CS1, SW1_CS1, SW3_CS1 }
+ { 0, SW5_CS1, SW4_CS1, SW6_CS1 },
+ { 0, SW5_CS2, SW4_CS2, SW6_CS2 },
+ { 0, SW5_CS3, SW4_CS3, SW6_CS3 },
+ { 0, SW5_CS4, SW4_CS4, SW6_CS4 },
+ { 0, SW5_CS5, SW4_CS5, SW6_CS5 },
+ { 0, SW5_CS6, SW4_CS6, SW6_CS6 },
+ { 0, SW5_CS7, SW4_CS7, SW6_CS7 },
+ { 0, SW5_CS8, SW4_CS8, SW6_CS8 },
+ { 0, SW5_CS9, SW4_CS9, SW6_CS9 },
+ { 0, SW5_CS10, SW4_CS10, SW6_CS10 },
+ { 0, SW5_CS11, SW4_CS11, SW6_CS11 },
+ { 0, SW5_CS12, SW4_CS12, SW6_CS12 },
+ { 0, SW5_CS13, SW4_CS13, SW6_CS13 },
-};
+ { 0, SW5_CS14, SW4_CS14, SW6_CS14 },
+ { 0, SW5_CS15, SW4_CS15, SW6_CS15 },
+ { 0, SW5_CS16, SW4_CS16, SW6_CS16 },
+ { 0, SW8_CS1, SW7_CS1, SW9_CS1 },
+ { 0, SW8_CS2, SW7_CS2, SW9_CS2 },
+ { 0, SW8_CS3, SW7_CS3, SW9_CS3 },
+ { 0, SW8_CS4, SW7_CS4, SW9_CS4 },
+ { 0, SW8_CS5, SW7_CS5, SW9_CS5 },
+ { 0, SW8_CS6, SW7_CS6, SW9_CS6 },
+ { 0, SW8_CS7, SW7_CS7, SW9_CS7 },
+ { 0, SW8_CS8, SW7_CS8, SW9_CS8 },
+ { 0, SW8_CS9, SW7_CS9, SW9_CS9 },
+ { 0, SW8_CS10, SW7_CS10, SW9_CS10 },
-led_config_t g_led_config = {
- {
- { 59, 58, 57, 56, 55, 54, 53, 52, 51, 50, 49, 48, 47, 46 },
- { 45, 44, 43, 42, 41, 40, 39, 38, 37, 36, 35, 34, 33, 32 },
- { 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19 },
- { 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5 },
- { 4, 3, 2, 1 ,0 }
- }, {
- { 224, 0 }, { 208, 0 }, { 192, 0 }, { 176, 0 }, { 160, 0 }, { 144, 0 }, { 128, 0 }, { 112, 0 }, { 96, 0 }, { 80, 0 }, { 64, 0 }, { 48, 0 }, { 32, 0 }, { 16, 0 },
- { 220, 16 }, { 200, 16 }, { 184, 16 }, { 168, 16 }, { 152, 16 }, { 136, 16 }, { 120, 16 }, { 104, 16 }, { 88, 16 }, { 72, 16 }, { 56, 16 }, { 40, 16 }, { 24, 16 }, { 4, 16 },
- { 204, 32 }, { 188, 32 }, { 172, 32 }, { 156, 32 }, { 140, 32 }, { 124, 32 }, { 108, 32 }, { 92, 32 }, { 76, 32 }, { 60, 32 }, { 44, 32 }, { 28, 32 }, { 6, 32 },
- { 224, 48 }, { 198, 64 }, { 202, 48 }, { 180, 48 }, { 164, 48 }, { 148, 48 }, { 132, 48 }, { 116, 48 }, { 100, 48 }, { 84, 48 }, { 68, 48 }, { 52, 48 }, { 20, 48 }, { 10, 48 },
- { 218, 64 }, { 178, 64 }, { 112, 64 }, { 46, 64 }, { 26, 64 }
- }, {
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
- 1, 1, 4, 1, 1
- }
+ { 0, SW8_CS11, SW7_CS11, SW9_CS11 },
+ { 0, SW8_CS12, SW7_CS12, SW9_CS12 },
+ { 0, SW8_CS13, SW7_CS13, SW9_CS13 },
+ { 0, SW8_CS14, SW7_CS14, SW9_CS14 },
+ { 0, SW8_CS15, SW7_CS15, SW9_CS15 },
+ { 0, SW8_CS16, SW7_CS16, SW9_CS16 },
+ { 0, SW11_CS1, SW10_CS1, SW12_CS1 },
+ { 0, SW11_CS2, SW10_CS2, SW12_CS2 },
+ { 0, SW11_CS3, SW10_CS3, SW12_CS3 },
+ { 0, SW11_CS4, SW10_CS4, SW12_CS4 },
+ { 0, SW11_CS5, SW10_CS5, SW12_CS5 },
+ { 0, SW11_CS6, SW10_CS6, SW12_CS6 },
+ { 0, SW11_CS7, SW10_CS7, SW12_CS7 },
+ { 0, SW11_CS8, SW10_CS8, SW12_CS8 },
+
+ { 0, SW11_CS9, SW10_CS9, SW12_CS9 },
+ { 0, SW11_CS10, SW10_CS10, SW12_CS10 },
+ { 0, SW11_CS11, SW10_CS11, SW12_CS11 },
+ { 0, SW11_CS12, SW10_CS12, SW12_CS12 },
+ { 0, SW11_CS13, SW10_CS13, SW12_CS13 }
};
void suspend_power_down_kb(void) {
@@ -120,7 +98,7 @@ bool rgb_matrix_indicators_kb(void) {
return false;
}
if (host_keyboard_led_state().caps_lock) {
- rgb_matrix_set_color(41, 0xFF, 0xFF, 0xFF);
+ rgb_matrix_set_color(28, 0xFF, 0xFF, 0xFF);
}
return true;
}
diff --git a/keyboards/mechlovin/olly/octagon/config.h b/keyboards/mechlovin/olly/octagon/config.h
index 6f9d5f9a02..791bfee784 100644
--- a/keyboards/mechlovin/olly/octagon/config.h
+++ b/keyboards/mechlovin/olly/octagon/config.h
@@ -19,8 +19,6 @@ along with this program. If not, see .
#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_SDA
-#define LED_MATRIX_LED_COUNT 94
-
#define I2C_DRIVER I2CD2
#define I2C1_SCL_PIN B10
#define I2C1_SDA_PIN B11
diff --git a/keyboards/mechlovin/olly/octagon/keyboard.json b/keyboards/mechlovin/olly/octagon/keyboard.json
index 81b78b0b1c..4bc7d88ed7 100644
--- a/keyboards/mechlovin/olly/octagon/keyboard.json
+++ b/keyboards/mechlovin/olly/octagon/keyboard.json
@@ -57,7 +57,110 @@
"wave_up_down": true
},
"driver": "is31fl3731",
- "react_on_keyup": true
+ "react_on_keyup": true,
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 4},
+ {"matrix": [0, 1], "x": 15, "y": 0, "flags": 4},
+ {"matrix": [0, 2], "x": 30, "y": 0, "flags": 4},
+ {"matrix": [0, 3], "x": 45, "y": 0, "flags": 4},
+ {"matrix": [0, 4], "x": 60, "y": 0, "flags": 4},
+ {"matrix": [0, 5], "x": 75, "y": 0, "flags": 4},
+ {"matrix": [0, 6], "x": 90, "y": 0, "flags": 4},
+ {"matrix": [0, 7], "x": 105, "y": 0, "flags": 4},
+ {"matrix": [0, 8], "x": 120, "y": 0, "flags": 4},
+ {"matrix": [0, 9], "x": 134, "y": 0, "flags": 4},
+ {"matrix": [0, 10], "x": 149, "y": 0, "flags": 4},
+ {"matrix": [0, 11], "x": 164, "y": 0, "flags": 4},
+ {"matrix": [0, 12], "x": 179, "y": 0, "flags": 4},
+ {"matrix": [0, 13], "x": 194, "y": 0, "flags": 4},
+ {"matrix": [0, 14], "x": 209, "y": 0, "flags": 4},
+ {"matrix": [0, 15], "x": 224, "y": 0, "flags": 4},
+
+ {"matrix": [1, 0], "x": 0, "y": 13, "flags": 4},
+ {"matrix": [1, 1], "x": 15, "y": 13, "flags": 4},
+ {"matrix": [1, 2], "x": 30, "y": 13, "flags": 4},
+ {"matrix": [1, 3], "x": 45, "y": 13, "flags": 4},
+ {"matrix": [1, 4], "x": 60, "y": 13, "flags": 4},
+ {"matrix": [1, 5], "x": 75, "y": 13, "flags": 4},
+ {"matrix": [1, 6], "x": 90, "y": 13, "flags": 4},
+ {"matrix": [1, 7], "x": 105, "y": 13, "flags": 4},
+ {"matrix": [1, 8], "x": 120, "y": 13, "flags": 4},
+ {"matrix": [1, 9], "x": 134, "y": 13, "flags": 4},
+ {"matrix": [1, 10], "x": 149, "y": 13, "flags": 4},
+ {"matrix": [1, 11], "x": 164, "y": 13, "flags": 4},
+ {"matrix": [1, 12], "x": 179, "y": 13, "flags": 4},
+ {"matrix": [1, 13], "x": 194, "y": 13, "flags": 4},
+ {"matrix": [1, 14], "x": 209, "y": 13, "flags": 4},
+ {"matrix": [1, 15], "x": 224, "y": 13, "flags": 4},
+
+ {"matrix": [2, 0], "x": 4, "y": 26, "flags": 4},
+ {"matrix": [2, 1], "x": 22, "y": 26, "flags": 4},
+ {"matrix": [2, 2], "x": 37, "y": 26, "flags": 4},
+ {"matrix": [2, 3], "x": 52, "y": 26, "flags": 4},
+ {"matrix": [2, 4], "x": 67, "y": 26, "flags": 4},
+ {"matrix": [2, 5], "x": 82, "y": 26, "flags": 4},
+ {"matrix": [2, 6], "x": 97, "y": 26, "flags": 4},
+ {"matrix": [2, 7], "x": 112, "y": 26, "flags": 4},
+ {"matrix": [2, 8], "x": 127, "y": 26, "flags": 4},
+ {"matrix": [2, 9], "x": 142, "y": 26, "flags": 4},
+ {"matrix": [2, 10], "x": 157, "y": 26, "flags": 4},
+ {"matrix": [2, 11], "x": 172, "y": 26, "flags": 4},
+ {"matrix": [2, 12], "x": 187, "y": 26, "flags": 4},
+ {"matrix": [2, 14], "x": 205, "y": 26, "flags": 4},
+ {"matrix": [2, 15], "x": 224, "y": 26, "flags": 4},
+
+ {"matrix": [3, 0], "x": 6, "y": 38, "flags": 4},
+ {"matrix": [3, 1], "x": 26, "y": 38, "flags": 4},
+ {"matrix": [3, 2], "x": 41, "y": 38, "flags": 4},
+ {"matrix": [3, 3], "x": 56, "y": 38, "flags": 4},
+ {"matrix": [3, 4], "x": 71, "y": 38, "flags": 4},
+ {"matrix": [3, 5], "x": 86, "y": 38, "flags": 4},
+ {"matrix": [3, 6], "x": 101, "y": 38, "flags": 4},
+ {"matrix": [3, 7], "x": 116, "y": 38, "flags": 4},
+ {"matrix": [3, 8], "x": 131, "y": 38, "flags": 4},
+ {"matrix": [3, 9], "x": 146, "y": 38, "flags": 4},
+ {"matrix": [3, 10], "x": 161, "y": 38, "flags": 4},
+ {"matrix": [3, 11], "x": 175, "y": 38, "flags": 4},
+ {"matrix": [3, 12], "x": 190, "y": 38, "flags": 4},
+ {"matrix": [3, 13], "x": 207, "y": 38, "flags": 4},
+ {"matrix": [3, 15], "x": 224, "y": 38, "flags": 4},
+
+ {"matrix": [4, 0], "x": 2, "y": 51, "flags": 4},
+ {"matrix": [4, 1], "x": 19, "y": 51, "flags": 4},
+ {"matrix": [4, 2], "x": 34, "y": 51, "flags": 4},
+ {"matrix": [4, 3], "x": 49, "y": 51, "flags": 4},
+ {"matrix": [4, 4], "x": 64, "y": 51, "flags": 4},
+ {"matrix": [4, 5], "x": 78, "y": 51, "flags": 4},
+ {"matrix": [4, 6], "x": 93, "y": 51, "flags": 4},
+ {"matrix": [4, 7], "x": 108, "y": 51, "flags": 4},
+ {"matrix": [4, 8], "x": 123, "y": 51, "flags": 4},
+ {"matrix": [4, 9], "x": 138, "y": 51, "flags": 4},
+ {"matrix": [4, 10], "x": 153, "y": 51, "flags": 4},
+ {"matrix": [4, 11], "x": 168, "y": 51, "flags": 4},
+ {"matrix": [4, 12], "x": 189, "y": 51, "flags": 4},
+ {"matrix": [4, 14], "x": 209, "y": 51, "flags": 4},
+ {"matrix": [4, 15], "x": 224, "y": 51, "flags": 4},
+
+ {"matrix": [5, 0], "x": 2, "y": 64, "flags": 4},
+ {"matrix": [5, 1], "x": 21, "y": 64, "flags": 4},
+ {"matrix": [5, 2], "x": 39, "y": 64, "flags": 4},
+ {"matrix": [5, 6], "x": 95, "y": 64, "flags": 4},
+ {"matrix": [5, 10], "x": 149, "y": 64, "flags": 4},
+ {"matrix": [5, 11], "x": 164, "y": 64, "flags": 4},
+ {"matrix": [5, 12], "x": 179, "y": 64, "flags": 4},
+ {"matrix": [5, 13], "x": 194, "y": 64, "flags": 4},
+ {"matrix": [5, 14], "x": 209, "y": 64, "flags": 4},
+ {"matrix": [5, 15], "x": 224, "y": 64, "flags": 4},
+
+ {"x": 113, "y": 0, "flags": 8},
+ {"x": 127, "y": 0, "flags": 8},
+ {"x": 142, "y": 0, "flags": 8},
+
+ {"x": 172, "y": 0, "flags": 8},
+ {"x": 187, "y": 0, "flags": 8},
+ {"x": 202, "y": 0, "flags": 8},
+ {"x": 217, "y": 0, "flags": 8}
+ ]
},
"matrix_pins": {
"cols": ["A10", "A9", "A8", "B15", "B14", "B13", "B2", "B1", "A15", "B3", "B9", "B8", "B7", "B6", "B5", "B4"],
diff --git a/keyboards/mechlovin/olly/octagon/octagon.c b/keyboards/mechlovin/olly/octagon/octagon.c
index c89565168b..a8ff139c01 100644
--- a/keyboards/mechlovin/olly/octagon/octagon.c
+++ b/keyboards/mechlovin/olly/octagon/octagon.c
@@ -31,33 +31,6 @@ const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
{ 0, C7_13 }, { 0, C7_14 }, { 0, C7_15 }, { 0, C7_16 }, // Layer Indicator
};
-led_config_t g_led_config = {
-{
- // Key Matrix to LED Index
- { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15},
- {16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31},
- {32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46},
- {47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61},
- {62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76},
- {77, 78, 79, 80, 81, 82, 83, 84, 85, 86},
-}, {
- //LED Index to Physical Positon
- {0, 0}, {15, 0}, {30, 0}, {45, 0}, {60, 0}, {75, 0}, {90, 0}, {105, 0}, {119, 0}, {134, 0}, {149, 0}, {164, 0}, {179, 0}, {194, 0}, {209, 0}, {224, 0},
- {0,13}, {15, 13}, {30, 13}, {45, 13}, {60, 13}, {75, 13}, {90, 13}, {105,13}, {119,13}, {134,13}, {149,13}, {164,13}, {179,13}, {194,13}, {209,13}, {224,13},
- {0,26}, {15, 26}, {30, 26}, {45, 26}, {60, 26}, {75, 26}, {90, 26}, {105,26}, {119,26}, {134,26}, {149,26}, {164,26}, {179,26}, {194,26}, {224,26},
- {0,38}, {15, 38}, {30, 38}, {45, 38}, {60, 38}, {75, 38}, {90, 38}, {105,38}, {119,38}, {134,38}, {149,38}, {164,38}, {179,38}, {194,38}, {224,38},
- {0,51}, {15, 51}, {30, 51}, {45, 51}, {60, 51}, {75, 51}, {90, 51}, {105,51}, {119,51}, {134,51}, {149,51}, {164,51}, {179,51}, {194,51}, {224,51},
- {0,64}, {15, 64}, {30, 64}, {90, 64}, {149,64}, {164,64}, {179,64}, {194,64}, {209,64}, {224,64},
- }, {
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- }
-};
-
bool led_matrix_indicators_kb(void) {
if (!led_matrix_indicators_user()) {
return false;
diff --git a/keyboards/mechwild/bbpad/config.h b/keyboards/mechwild/bbpad/config.h
new file mode 100644
index 0000000000..a0dd1826eb
--- /dev/null
+++ b/keyboards/mechwild/bbpad/config.h
@@ -0,0 +1,10 @@
+// Copyright 2024 QMK Contributors (@qmk)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#pragma once
+
+#define WS2812_PWM_DRIVER PWMD4
+#define WS2812_PWM_CHANNEL 1
+#define WS2812_PWM_PAL_MODE 2
+#define WS2812_DMA_STREAM STM32_DMA1_STREAM6
+#define WS2812_DMA_CHANNEL 2
diff --git a/keyboards/mechwild/bbpad/f401/keyboard.json b/keyboards/mechwild/bbpad/f401/keyboard.json
new file mode 100644
index 0000000000..797e990059
--- /dev/null
+++ b/keyboards/mechwild/bbpad/f401/keyboard.json
@@ -0,0 +1,3 @@
+{
+ "development_board": "blackpill_f401"
+}
diff --git a/keyboards/mechwild/bbpad/f411/keyboard.json b/keyboards/mechwild/bbpad/f411/keyboard.json
new file mode 100644
index 0000000000..a41c5f4dd1
--- /dev/null
+++ b/keyboards/mechwild/bbpad/f411/keyboard.json
@@ -0,0 +1,3 @@
+{
+ "development_board": "blackpill_f411"
+}
diff --git a/keyboards/mechwild/bbpad/halconf.h b/keyboards/mechwild/bbpad/halconf.h
new file mode 100644
index 0000000000..db4caea1d0
--- /dev/null
+++ b/keyboards/mechwild/bbpad/halconf.h
@@ -0,0 +1,8 @@
+// Copyright 2023 QMK Contributors (@qmk)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#pragma once
+
+#define HAL_USE_PWM TRUE
+
+#include_next
diff --git a/keyboards/mechwild/bbpad/info.json b/keyboards/mechwild/bbpad/info.json
new file mode 100644
index 0000000000..73a383f311
--- /dev/null
+++ b/keyboards/mechwild/bbpad/info.json
@@ -0,0 +1,195 @@
+{
+ "manufacturer": "MechWild",
+ "keyboard_name": "BBPad",
+ "maintainer": "kylemccreery",
+ "bootloader_instructions": "Hold down the BOOT button, then tap the NRST button on the BlackPill. Avoid touching the A11 and A12 pins.",
+ "diode_direction": "COL2ROW",
+ "encoder": {
+ "rotary": [
+ {"pin_a": "B1", "pin_b": "B0"}
+ ]
+ },
+ "features": {
+ "bootmagic": true,
+ "encoder": true,
+ "extrakey": true,
+ "mousekey": true,
+ "nkro": true,
+ "rgb_matrix": true
+ },
+ "matrix_pins": {
+ "cols": ["A4", "A3", "A2", "A1", "C15"],
+ "rows": ["B12", "B13", "B14", "B15", "A8"]
+ },
+ "rgb_matrix": {
+ "animations": {
+ "band_pinwheel_sat": true,
+ "band_pinwheel_val": true,
+ "band_sat": true,
+ "band_spiral_sat": true,
+ "band_spiral_val": true,
+ "band_val": true,
+ "breathing": true,
+ "cycle_all": true,
+ "cycle_left_right": true,
+ "cycle_out_in": true,
+ "cycle_out_in_dual": true,
+ "cycle_pinwheel": true,
+ "cycle_spiral": true,
+ "cycle_up_down": true,
+ "digital_rain": true,
+ "dual_beacon": true,
+ "flower_blooming": true,
+ "gradient_left_right": true,
+ "gradient_up_down": true,
+ "hue_breathing": true,
+ "hue_pendulum": true,
+ "hue_wave": true,
+ "jellybean_raindrops": true,
+ "multisplash": true,
+ "pixel_flow": true,
+ "pixel_fractal": true,
+ "pixel_rain": true,
+ "rainbow_beacon": true,
+ "rainbow_moving_chevron": true,
+ "rainbow_pinwheels": true,
+ "raindrops": true,
+ "riverflow": true,
+ "solid_multisplash": true,
+ "solid_reactive": true,
+ "solid_reactive_cross": true,
+ "solid_reactive_multicross": true,
+ "solid_reactive_multinexus": true,
+ "solid_reactive_multiwide": true,
+ "solid_reactive_nexus": true,
+ "solid_reactive_simple": true,
+ "solid_reactive_wide": true,
+ "solid_splash": true,
+ "splash": true,
+ "starlight": true,
+ "starlight_dual_hue": true,
+ "starlight_dual_sat": true,
+ "typing_heatmap": true
+ },
+ "center_point": [112, 75],
+ "driver": "ws2812",
+ "layout": [
+ {"x": 195, "y": 53, "flags": 2},
+ {"x": 195, "y": 97, "flags": 2},
+ {"x": 142, "y": 144, "flags": 2},
+ {"x": 74, "y": 144, "flags": 2},
+ {"x": 8, "y": 97, "flags": 2},
+ {"x": 8, "y": 53, "flags": 2},
+ {"x": 74, "y": 9, "flags": 2},
+ {"x": 142, "y": 9, "flags": 2},
+ {"matrix": [0, 0], "x": 147, "y": 24, "flags": 4},
+ {"matrix": [0, 1], "x": 147, "y": 58, "flags": 4},
+ {"matrix": [0, 2], "x": 147, "y": 90, "flags": 4},
+ {"matrix": [0, 3], "x": 147, "y": 124, "flags": 4},
+ {"matrix": [1, 3], "x": 115, "y": 124, "flags": 4},
+ {"matrix": [1, 2], "x": 115, "y": 90, "flags": 4},
+ {"matrix": [1, 1], "x": 115, "y": 58, "flags": 4},
+ {"matrix": [1, 0], "x": 115, "y": 24, "flags": 4},
+ {"matrix": [2, 0], "x": 83, "y": 24, "flags": 4},
+ {"matrix": [2, 1], "x": 83, "y": 58, "flags": 4},
+ {"matrix": [2, 2], "x": 83, "y": 90, "flags": 4},
+ {"matrix": [2, 3], "x": 83, "y": 124, "flags": 4},
+ {"matrix": [3, 3], "x": 51, "y": 124, "flags": 4},
+ {"matrix": [3, 2], "x": 51, "y": 90, "flags": 4},
+ {"matrix": [3, 1], "x": 51, "y": 58, "flags": 4},
+ {"matrix": [3, 0], "x": 51, "y": 24, "flags": 4},
+ {"matrix": [4, 0], "x": 17, "y": 31, "flags": 4},
+ {"matrix": [4, 1], "x": 17, "y": 53, "flags": 4},
+ {"matrix": [4, 2], "x": 17, "y": 90, "flags": 4},
+ {"matrix": [4, 3], "x": 17, "y": 124, "flags": 4}
+ ],
+ "max_brightness": 120
+ },
+ "url": "https://mechwild.com/product/bbpad/",
+ "usb": {
+ "device_version": "1.0.0",
+ "pid": "0x1713",
+ "vid": "0x6D77"
+ },
+ "ws2812": {
+ "driver": "pwm",
+ "pin": "B6"
+ },
+ "layout_aliases": {
+ "LAYOUT": "LAYOUT_vert"
+ },
+ "layouts": {
+ "LAYOUT_horiz": {
+ "layout": [
+ {"matrix": [4, 0], "x": 0, "y": 0},
+ {"matrix": [3, 0], "x": 1, "y": 0},
+ {"matrix": [2, 0], "x": 2, "y": 0},
+ {"matrix": [1, 0], "x": 3, "y": 0},
+ {"matrix": [0, 0], "x": 4, "y": 0},
+ {"matrix": [4, 1], "x": 0, "y": 1},
+ {"matrix": [3, 1], "x": 1, "y": 1},
+ {"matrix": [2, 1], "x": 2, "y": 1},
+ {"matrix": [1, 1], "x": 3, "y": 1},
+ {"matrix": [0, 1], "x": 4, "y": 1},
+ {"matrix": [4, 2], "x": 0, "y": 2},
+ {"matrix": [3, 2], "x": 1, "y": 2},
+ {"matrix": [2, 2], "x": 2, "y": 2},
+ {"matrix": [1, 2], "x": 3, "y": 2},
+ {"matrix": [0, 2], "x": 4, "y": 2},
+ {"matrix": [4, 3], "x": 0, "y": 3},
+ {"matrix": [3, 3], "x": 1, "y": 3},
+ {"matrix": [2, 3], "x": 2, "y": 3},
+ {"matrix": [1, 3], "x": 3, "y": 3},
+ {"matrix": [0, 3], "x": 4, "y": 3},
+ {"matrix": [0, 4], "x": 5, "y": 3, "encoder": 0}
+ ]
+ },
+ "LAYOUT_numpad": {
+ "layout": [
+ {"matrix": [0, 4], "x": 3, "y": 0, "encoder": 0},
+ {"matrix": [0, 0], "x": 0, "y": 1},
+ {"matrix": [0, 1], "x": 1, "y": 1},
+ {"matrix": [0, 2], "x": 2, "y": 1},
+ {"matrix": [0, 3], "x": 3, "y": 1},
+ {"matrix": [1, 0], "x": 0, "y": 2},
+ {"matrix": [1, 1], "x": 1, "y": 2},
+ {"matrix": [1, 2], "x": 2, "y": 2},
+ {"matrix": [2, 3], "x": 3, "y": 2, "h": 2},
+ {"matrix": [2, 0], "x": 0, "y": 3},
+ {"matrix": [2, 1], "x": 1, "y": 3},
+ {"matrix": [2, 2], "x": 2, "y": 3},
+ {"matrix": [3, 0], "x": 0, "y": 4},
+ {"matrix": [3, 1], "x": 1, "y": 4},
+ {"matrix": [3, 2], "x": 2, "y": 4},
+ {"matrix": [4, 3], "x": 3, "y": 4, "h": 2},
+ {"matrix": [4, 0], "x": 0, "y": 5, "w": 2},
+ {"matrix": [4, 2], "x": 2, "y": 5}
+ ]
+ },
+ "LAYOUT_vert": {
+ "layout": [
+ {"matrix": [0, 4], "x": 3, "y": 0, "encoder": 0},
+ {"matrix": [0, 0], "x": 0, "y": 1},
+ {"matrix": [0, 1], "x": 1, "y": 1},
+ {"matrix": [0, 2], "x": 2, "y": 1},
+ {"matrix": [0, 3], "x": 3, "y": 1},
+ {"matrix": [1, 0], "x": 0, "y": 2},
+ {"matrix": [1, 1], "x": 1, "y": 2},
+ {"matrix": [1, 2], "x": 2, "y": 2},
+ {"matrix": [1, 3], "x": 3, "y": 2},
+ {"matrix": [2, 0], "x": 0, "y": 3},
+ {"matrix": [2, 1], "x": 1, "y": 3},
+ {"matrix": [2, 2], "x": 2, "y": 3},
+ {"matrix": [2, 3], "x": 3, "y": 3},
+ {"matrix": [3, 0], "x": 0, "y": 4},
+ {"matrix": [3, 1], "x": 1, "y": 4},
+ {"matrix": [3, 2], "x": 2, "y": 4},
+ {"matrix": [3, 3], "x": 3, "y": 4},
+ {"matrix": [4, 0], "x": 0, "y": 5},
+ {"matrix": [4, 1], "x": 1, "y": 5},
+ {"matrix": [4, 2], "x": 2, "y": 5},
+ {"matrix": [4, 3], "x": 3, "y": 5}
+ ]
+ }
+ }
+}
diff --git a/keyboards/mechwild/bbpad/keymaps/default/keymap.json b/keyboards/mechwild/bbpad/keymaps/default/keymap.json
new file mode 100644
index 0000000000..bffab8d66e
--- /dev/null
+++ b/keyboards/mechwild/bbpad/keymaps/default/keymap.json
@@ -0,0 +1,29 @@
+{
+ "keyboard": "mechwild/bbpad",
+ "keymap": "default",
+ "version": 1,
+ "layout": "LAYOUT_horiz",
+ "layers": [
+ [
+ "KC_P7", "KC_P8", "KC_P9", "KC_PSLS", "KC_CALC",
+ "KC_P4", "KC_P5", "KC_P6", "KC_PAST", "TG(1)",
+ "KC_P1", "KC_P2", "KC_P3", "KC_PPLS", "KC_BSPC",
+ "KC_P0", "KC_PDOT", "KC_NUM", "KC_PMNS", "KC_PENT", "KC_MUTE"
+ ],
+ [
+ "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS",
+ "RGB_RMOD", "KC_TRNS", "RGB_MOD", "KC_TRNS", "KC_TRNS",
+ "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS",
+ "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_NUM", "RGB_TOG"
+ ]
+ ],
+ "config": {
+ "features": {
+ "encoder_map": true
+ }
+ },
+ "encoders": [
+ [{"ccw": "KC_VOLD", "cw": "KC_VOLU"}],
+ [{"ccw": "RGB_VAD", "cw": "RGB_VAI"}]
+ ]
+}
diff --git a/keyboards/mechwild/bbpad/mcuconf.h b/keyboards/mechwild/bbpad/mcuconf.h
new file mode 100644
index 0000000000..ea8856635d
--- /dev/null
+++ b/keyboards/mechwild/bbpad/mcuconf.h
@@ -0,0 +1,10 @@
+// Copyright 2023 QMK Contributors (@qmk)
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+#pragma once
+
+#include_next
+
+// WS2812
+#undef STM32_PWM_USE_TIM4
+#define STM32_PWM_USE_TIM4 TRUE
diff --git a/keyboards/mechwild/bbpad/readme.md b/keyboards/mechwild/bbpad/readme.md
new file mode 100644
index 0000000000..5655bc2dde
--- /dev/null
+++ b/keyboards/mechwild/bbpad/readme.md
@@ -0,0 +1,23 @@
+# BBPad
+
+![BBPad](https://i.imgur.com/FTrK1TC.png)
+
+A completely normal BlackPill-powered DIY numpad kit.
+
+The `f401` version is the standard for this kit, using an STM32F401 BlackPill. The `f411` version will not run on an STM32F401 BlackPill; if in doubt, use `f401`.
+
+* Keyboard Maintainer: [Kyle McCreery](https://github.com/kylemccreery)
+* Hardware Supported: BBPad 1.0
+* Hardware Availability: [BBPad on MechWild](https://mechwild.com/product/bbpad/)
+
+Make example for this keyboard (after setting up your build environment):
+
+ make mechwild/bbpad/f401:default
+ make mechwild/bbpad/f411:default
+
+Flashing example for this keyboard:
+
+ make mechwild/bbpad/f401:default:flash
+ make mechwild/bbpad/f411:default:flash
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/pearlboards/zeuspad/keyboard.json b/keyboards/pearlboards/zeuspad/keyboard.json
index 6f67bd74b0..93e1e64433 100644
--- a/keyboards/pearlboards/zeuspad/keyboard.json
+++ b/keyboards/pearlboards/zeuspad/keyboard.json
@@ -61,8 +61,12 @@
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
"debounce": 0,
+ "community_layouts": ["numpad_6x4"],
+ "layout_aliases": {
+ "LAYOUT_all": "LAYOUT_ortho_6x4"
+ },
"layouts": {
- "LAYOUT_all": {
+ "LAYOUT_ortho_6x4": {
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1, "y": 0},
@@ -94,6 +98,36 @@
{"matrix": [5, 2], "x": 2, "y": 5.25},
{"matrix": [5, 3], "x": 3, "y": 5.25}
]
+ },
+ "LAYOUT_numpad_6x4": {
+ "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.25},
+ {"matrix": [1, 1], "x": 1, "y": 1.25},
+ {"matrix": [1, 2], "x": 2, "y": 1.25},
+ {"matrix": [1, 3], "x": 3, "y": 1.25},
+
+ {"matrix": [2, 0], "x": 0, "y": 2.25},
+ {"matrix": [2, 1], "x": 1, "y": 2.25},
+ {"matrix": [2, 2], "x": 2, "y": 2.25},
+
+ {"matrix": [3, 0], "x": 0, "y": 3.25},
+ {"matrix": [3, 1], "x": 1, "y": 3.25},
+ {"matrix": [3, 2], "x": 2, "y": 3.25},
+ {"matrix": [3, 3], "x": 3, "y": 2.25, "h": 2},
+
+ {"matrix": [4, 0], "x": 0, "y": 4.25},
+ {"matrix": [4, 1], "x": 1, "y": 4.25},
+ {"matrix": [4, 2], "x": 2, "y": 4.25},
+
+ {"matrix": [5, 0], "x": 0, "y": 5.25, "w": 2},
+ {"matrix": [5, 2], "x": 2, "y": 5.25},
+ {"matrix": [5, 3], "x": 3, "y": 4.25, "h": 2}
+ ]
}
}
}
diff --git a/keyboards/pearlboards/zeuspad/keymaps/default/keymap.c b/keyboards/pearlboards/zeuspad/keymaps/default/keymap.c
index 88c243cdc5..850c96237c 100644
--- a/keyboards/pearlboards/zeuspad/keymaps/default/keymap.c
+++ b/keyboards/pearlboards/zeuspad/keymaps/default/keymap.c
@@ -18,7 +18,7 @@ along with this program. If not, see .
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- [0] = LAYOUT_all(
+ [0] = LAYOUT_ortho_6x4(
LT(1, KC_ESC), KC_LCTL, KC_LALT, KC_MEDIA_PLAY_PAUSE,
KC_NUM, KC_PSLS, KC_PAST, KC_PMNS,
KC_P7, KC_P8, KC_P9, KC_PPLS,
@@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_P1, KC_P2, KC_P3, KC_PENT,
KC_P0, KC_P0, KC_PDOT, KC_PENT),
- [1] = LAYOUT_all(
+ [1] = LAYOUT_ortho_6x4(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
QK_BOOT, RGB_TOG, RGB_MOD, RGB_HUI,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
diff --git a/keyboards/pearlboards/zeuspad/keymaps/via/keymap.c b/keyboards/pearlboards/zeuspad/keymaps/via/keymap.c
index ee0165b28e..d7489b3424 100644
--- a/keyboards/pearlboards/zeuspad/keymaps/via/keymap.c
+++ b/keyboards/pearlboards/zeuspad/keymaps/via/keymap.c
@@ -14,7 +14,7 @@ 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 .
*/
-#include
+
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
@@ -33,20 +33,4 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
-
- [2] = LAYOUT_all(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
-
- [3] = LAYOUT_all(
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
};
diff --git a/keyboards/pearlboards/zeuspad/matrix_diagram.md b/keyboards/pearlboards/zeuspad/matrix_diagram.md
new file mode 100644
index 0000000000..1dde3faef8
--- /dev/null
+++ b/keyboards/pearlboards/zeuspad/matrix_diagram.md
@@ -0,0 +1,21 @@
+# Matrix Diagram for Pearl Boards Zeuspad
+
+```
+┌───┬───┬───┬───┐
+│00 │01 │02 │03 │
+└───┴───┴───┴───┘
+┌───┬───┬───┬───┐
+│10 │11 │12 │13 │
+├───┼───┼───┼───┤┌───┐
+│20 │21 │22 │23 ││33 │
+├───┼───┼───┼───┤│ │ 2uh +
+│30 │31 │32 │33 ││ │
+├───┼───┼───┼───┤├───┤
+│40 │41 │42 │43 ││53 │
+├───┼───┼───┼───┤│ │ 2uh Enter
+│50 │51 │52 │53 ││ │
+└───┴───┴───┴───┘└───┘
+┌───────┐
+│50 │ 2u P0
+└───────┘
+```
\ No newline at end of file
diff --git a/keyboards/vertex/cycle7/keyboard.json b/keyboards/vertex/cycle7/keyboard.json
index d9b2f30168..9d55b63fec 100644
--- a/keyboards/vertex/cycle7/keyboard.json
+++ b/keyboards/vertex/cycle7/keyboard.json
@@ -252,7 +252,7 @@
{"matrix": [2, 9], "x": 9.75, "y": 2},
{"matrix": [2, 10], "x": 10.75, "y": 2},
{"matrix": [2, 11], "x": 11.75, "y": 2},
- {"matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25},
+ {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
{"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
{"matrix": [3, 2], "x": 2.25, "y": 3},
{"matrix": [3, 3], "x": 3.25, "y": 3},
@@ -557,7 +557,7 @@
{"matrix": [2, 9], "x": 9.75, "y": 2},
{"matrix": [2, 10], "x": 10.75, "y": 2},
{"matrix": [2, 11], "x": 11.75, "y": 2},
- {"matrix": [2, 12], "x": 12.75, "y": 2, "w": 2.25},
+ {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
{"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
{"matrix": [3, 2], "x": 2.25, "y": 3},
{"matrix": [3, 3], "x": 3.25, "y": 3},