~ruther/qmk_firmware

0e3cc6af12ad0337574280f783ee118a79c6ea55 — Ryan 3 years ago 64acbcb
Move keyboard USB IDs and strings to data driven: X (#17925)

68 files changed, 218 insertions(+), 245 deletions(-)

M keyboards/x16/config.h
M keyboards/x16/info.json
M keyboards/xbows/knight/config.h
M keyboards/xbows/knight/info.json
M keyboards/xbows/knight_plus/config.h
M keyboards/xbows/knight_plus/info.json
M keyboards/xbows/nature/config.h
M keyboards/xbows/nature/info.json
M keyboards/xbows/numpad/config.h
M keyboards/xbows/numpad/info.json
M keyboards/xbows/ranger/config.h
M keyboards/xbows/ranger/info.json
M keyboards/xbows/woody/config.h
M keyboards/xbows/woody/info.json
M keyboards/xelus/akis/config.h
M keyboards/xelus/akis/info.json
M keyboards/xelus/dharma/config.h
M keyboards/xelus/dharma/info.json
M keyboards/xelus/kangaroo/config.h
M keyboards/xelus/kangaroo/info.json
M keyboards/xelus/la_plus/config.h
M keyboards/xelus/la_plus/info.json
M keyboards/xelus/ninjin/config.h
M keyboards/xelus/ninjin/info.json
M keyboards/xelus/pachi/mini_32u4/config.h
M keyboards/xelus/pachi/mini_32u4/info.json
M keyboards/xelus/pachi/rev1/config.h
M keyboards/xelus/pachi/rev1/info.json
M keyboards/xelus/pachi/rgb/rev1/config.h
M keyboards/xelus/pachi/rgb/rev1/info.json
M keyboards/xelus/pachi/rgb/rev2/config.h
M keyboards/xelus/pachi/rgb/rev2/info.json
M keyboards/xelus/rs108/config.h
M keyboards/xelus/rs108/info.json
M keyboards/xelus/snap96/config.h
M keyboards/xelus/snap96/info.json
M keyboards/xelus/trinityxttkl/config.h
M keyboards/xelus/trinityxttkl/info.json
M keyboards/xelus/valor/rev1/config.h
M keyboards/xelus/valor/rev1/info.json
M keyboards/xelus/valor/rev2/config.h
M keyboards/xelus/valor/rev2/info.json
M keyboards/xelus/valor_frl_tkl/config.h
M keyboards/xelus/valor_frl_tkl/info.json
M keyboards/xelus/xs60/config.h
M keyboards/xelus/xs60/info.json
M keyboards/xenon/config.h
M keyboards/xenon/info.json
M keyboards/xiaomi/mk02/config.h
M keyboards/xiaomi/mk02/info.json
M keyboards/xiudi/xd002/config.h
M keyboards/xiudi/xd002/info.json
M keyboards/xiudi/xd68/config.h
M keyboards/xiudi/xd68/info.json
M keyboards/xiudi/xd75/config.h
M keyboards/xiudi/xd75/info.json
M keyboards/xiudi/xd84/config.h
M keyboards/xiudi/xd84/info.json
M keyboards/xiudi/xd84pro/config.h
M keyboards/xiudi/xd84pro/info.json
M keyboards/xiudi/xd87/config.h
M keyboards/xiudi/xd87/info.json
M keyboards/xiudi/xd96/config.h
M keyboards/xiudi/xd96/info.json
M keyboards/xmmx/config.h
M keyboards/xmmx/info.json
M keyboards/xw60/config.h
M keyboards/xw60/info.json
M keyboards/x16/config.h => keyboards/x16/config.h +0 -7
@@ 18,13 18,6 @@

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0x4B50
#define PRODUCT_ID      0x016A
#define DEVICE_VER      0x0001
#define MANUFACTURER    yinxianwei
#define PRODUCT         x16

/* key matrix size */
#define MATRIX_ROWS 4
#define MATRIX_COLS 4

M keyboards/x16/info.json => keyboards/x16/info.json +6 -0
@@ 1,7 1,13 @@
{
    "keyboard_name": "x16",
    "manufacturer": "yinxianwei",
    "url": "",
    "maintainer": "yinxianwei",
    "usb": {
        "vid": "0x4B50",
        "pid": "0x016A",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT_ortho_4x4": {
            "layout": [

M keyboards/xbows/knight/config.h => keyboards/xbows/knight/config.h +0 -6
@@ 17,12 17,6 @@

#include "config_common.h"

#define VENDOR_ID    0x5842
#define PRODUCT_ID   0x4B6E
#define DEVICE_VER   0x0001
#define MANUFACTURER X-BOWS
#define PRODUCT      KNIGHT

#define MATRIX_ROWS 6
#define MATRIX_COLS 15
#define MATRIX_ROW_PINS { F7, F6, F5, F4, F1, F0 }

M keyboards/xbows/knight/info.json => keyboards/xbows/knight/info.json +6 -0
@@ 1,7 1,13 @@
{
    "keyboard_name": "KNIGHT",
    "manufacturer": "X-BOWS",
    "url": "",
    "maintainer": "xbows-qmk",
    "usb": {
        "vid": "0x5842",
        "pid": "0x4B6E",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT": {
            "layout": [

M keyboards/xbows/knight_plus/config.h => keyboards/xbows/knight_plus/config.h +0 -6
@@ 17,12 17,6 @@

#include "config_common.h"

#define VENDOR_ID    0x5842
#define PRODUCT_ID   0x4B50
#define DEVICE_VER   0x0001
#define MANUFACTURER X-BOWS
#define PRODUCT      KNIGHT_PLUS

#define MATRIX_ROWS 6
#define MATRIX_COLS 15
#define MATRIX_ROW_PINS { F7, F6, F5, F4, F1, F0 }

M keyboards/xbows/knight_plus/info.json => keyboards/xbows/knight_plus/info.json +6 -0
@@ 1,7 1,13 @@
{
    "keyboard_name": "KNIGHT_PLUS",
    "manufacturer": "X-BOWS",
    "url": "",
    "maintainer": "xbows-qmk",
    "usb": {
        "vid": "0x5842",
        "pid": "0x4B50",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT": {
            "layout": [

M keyboards/xbows/nature/config.h => keyboards/xbows/nature/config.h +0 -6
@@ 17,12 17,6 @@

#include "config_common.h"

#define VENDOR_ID    0x5842
#define PRODUCT_ID   0x4E61
#define DEVICE_VER   0x0001
#define MANUFACTURER X-BOWS
#define PRODUCT      NATURE

#define MATRIX_ROWS 6
#define MATRIX_COLS 15
#define MATRIX_ROW_PINS { F7, F6, F5, F4, F1, F0 }

M keyboards/xbows/nature/info.json => keyboards/xbows/nature/info.json +6 -0
@@ 1,7 1,13 @@
{
    "keyboard_name": "NATURE",
    "manufacturer": "X-BOWS",
    "url": "",
    "maintainer": "xbows-qmk",
    "usb": {
        "vid": "0x5842",
        "pid": "0x4E61",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT": {
            "layout": [

M keyboards/xbows/numpad/config.h => keyboards/xbows/numpad/config.h +0 -6
@@ 17,12 17,6 @@

#include "config_common.h"

#define VENDOR_ID    0x5842
#define PRODUCT_ID   0x4E75
#define DEVICE_VER   0x0001
#define MANUFACTURER X-BOWS
#define PRODUCT      NUMPAD

#define MATRIX_ROWS 6
#define MATRIX_COLS 4
#define MATRIX_ROW_PINS { B5, B4, C6, B6, D7, B3 }

M keyboards/xbows/numpad/info.json => keyboards/xbows/numpad/info.json +6 -0
@@ 1,7 1,13 @@
{
    "keyboard_name": "NUMPAD",
    "manufacturer": "X-BOWS",
    "url": "",
    "maintainer": "xbows-qmk",
    "usb": {
        "vid": "0x5842",
        "pid": "0x4E75",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT": {
            "layout": [

M keyboards/xbows/ranger/config.h => keyboards/xbows/ranger/config.h +0 -6
@@ 17,12 17,6 @@

#include "config_common.h"

#define VENDOR_ID    0x5842
#define PRODUCT_ID   0x5261
#define DEVICE_VER   0x0001
#define MANUFACTURER X-BOWS
#define PRODUCT      Ranger

#define MATRIX_ROWS 6
#define MATRIX_COLS 16
#define MATRIX_ROW_PINS { C7, B6, B4, C6, B5, D6 }

M keyboards/xbows/ranger/info.json => keyboards/xbows/ranger/info.json +6 -0
@@ 1,7 1,13 @@
{
    "keyboard_name": "Ranger",
    "manufacturer": "X-BOWS",
    "url": "",
    "maintainer": "xbows-qmk",
    "usb": {
        "vid": "0x5842",
        "pid": "0x5261",
        "device_version": "0.0.1"
    },
    "layout_aliases": {
        "LAYOUT": "LAYOUT_tkl_ansi"
    },

M keyboards/xbows/woody/config.h => keyboards/xbows/woody/config.h +0 -5
@@ 1,10 1,5 @@
#pragma once
#include "config_common.h"
#define VENDOR_ID       0xFEED
#define PRODUCT_ID      0x1224
#define DEVICE_VER      0x0001
#define MANUFACTURER    X-BOWS
#define PRODUCT         WOO-DY

#define MATRIX_ROWS 5
#define MATRIX_COLS 15

M keyboards/xbows/woody/info.json => keyboards/xbows/woody/info.json +6 -0
@@ 1,7 1,13 @@
{
    "keyboard_name": "WOO-DY", 
    "manufacturer": "X-BOWS",
    "url": "", 
    "maintainer": "qmk", 
    "usb": {
        "vid": "0xFEED",
        "pid": "0x1224",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT": {
            "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":10, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0, "w":2}, {"x":15, "y":0}, {"x":0, "y":1, "w":1.5}, {"x":1.5, "y":1}, {"x":2.5, "y":1}, {"x":3.5, "y":1}, {"x":4.5, "y":1}, {"x":5.5, "y":1}, {"x":6.5, "y":1}, {"x":7.5, "y":1}, {"x":8.5, "y":1}, {"x":9.5, "y":1}, {"x":10.5, "y":1}, {"x":11.5, "y":1}, {"x":12.5, "y":1}, {"x":13.5, "y":1, "w":1.5}, {"x":15, "y":1}, {"x":0, "y":2, "w":1.75}, {"x":1.75, "y":2}, {"x":2.75, "y":2}, {"x":3.75, "y":2}, {"x":4.75, "y":2}, {"x":5.75, "y":2}, {"x":6.75, "y":2}, {"x":7.75, "y":2}, {"x":8.75, "y":2}, {"x":9.75, "y":2}, {"x":10.75, "y":2}, {"x":11.75, "y":2}, {"x":12.75, "y":2, "w":2.25}, {"x":15, "y":2}, {"x":0, "y":3, "w":2.25}, {"x":2.25, "y":3}, {"x":3.25, "y":3}, {"x":4.25, "y":3}, {"x":5.25, "y":3}, {"x":6.25, "y":3}, {"x":7.25, "y":3}, {"x":8.25, "y":3}, {"x":9.25, "y":3}, {"x":10.25, "y":3}, {"x":11.25, "y":3}, {"x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":15, "y":3}, {"x":0, "y":4, "w":1.25}, {"x":1.25, "y":4, "w":1.25}, {"x":2.5, "y":4, "w":1.5}, {"x":4, "y":4, "w":6.25}, {"x":10.25, "y":4, "w":1.5}, {"x":11.75, "y":4, "w":1.25}, {"x":13, "y":4}, {"x":14, "y":4}, {"x":15, "y":4}]

M keyboards/xelus/akis/config.h => keyboards/xelus/akis/config.h +0 -7
@@ 18,13 18,6 @@

#include "config_common.h"

// USB Device descriptor parameter
#define VENDOR_ID       0x5845 // XE
#define PRODUCT_ID      0xA04B // A-K
#define DEVICE_VER      0x0001
#define MANUFACTURER    Xelus
#define PRODUCT         AkiS

/* key matrix size */
#define MATRIX_ROWS 5
#define MATRIX_COLS 15

M keyboards/xelus/akis/info.json => keyboards/xelus/akis/info.json +7 -1
@@ 1,7 1,13 @@
{
    "keyboard_name": "akiS",
    "keyboard_name": "AkiS",
    "manufacturer": "Xelus",
    "url": "https://github.com/qmk/qmk_firmware/tree/master/keyboards/xelus/akis",
    "maintainer": "Xelus22",
    "usb": {
        "vid": "0x5845",
        "pid": "0xA04B",
        "device_version": "0.0.1"
    },
    "layout_aliases": {
        "LAYOUT_65_all": "LAYOUT_all"
    },

M keyboards/xelus/dharma/config.h => keyboards/xelus/dharma/config.h +0 -7
@@ 16,13 16,6 @@

#pragma once

/* USB Device descriptor parameter */
#define VENDOR_ID       0x5845 // XE
#define PRODUCT_ID      0xDAAA // Dharma
#define DEVICE_VER      0x0001
#define MANUFACTURER    Xelus
#define PRODUCT         Dharma

/* key matrix size */
#define MATRIX_ROWS 5
#define MATRIX_COLS 18

M keyboards/xelus/dharma/info.json => keyboards/xelus/dharma/info.json +7 -1
@@ 1,7 1,13 @@
{
    "keyboard_name": "Xelus Dharma",
    "keyboard_name": "Dharma",
    "manufacturer": "Xelus",
    "url": "",
    "maintainer": "Xelus22",
    "usb": {
        "vid": "0x5845",
        "pid": "0xDAAA",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT_all": {
            "layout": [

M keyboards/xelus/kangaroo/config.h => keyboards/xelus/kangaroo/config.h +0 -7
@@ 16,13 16,6 @@

#pragma once

/* USB Device descriptor parameter */
#define VENDOR_ID       0x5845  // XE
#define PRODUCT_ID      0x524F  // RO
#define DEVICE_VER      0x0001
#define MANUFACTURER    Xelus
#define PRODUCT         Kangaroo

/* key matrix size */
#define MATRIX_ROWS 12
#define MATRIX_COLS 11

M keyboards/xelus/kangaroo/info.json => keyboards/xelus/kangaroo/info.json +6 -0
@@ 1,7 1,13 @@
{
    "keyboard_name": "Kangaroo", 
    "manufacturer": "Xelus",
    "url": "https://github.com/qmk/qmk_firmware/tree/master/keyboards/xelus/kangaroo", 
    "maintainer": "qmk", 
    "usb": {
        "vid": "0x5845",
        "pid": "0x524F",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT_all": {
            "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"label":"PrtSc", "x":4.25, "y":0}, {"label":"Scroll Lock", "x":5.25, "y":0}, {"label":"Pause", "x":6.25, "y":0}, {"label":"Esc", "x":7.5, "y":0}, {"label":"F1", "x":9.5, "y":0}, {"label":"F2", "x":10.5, "y":0}, {"label":"F3", "x":11.5, "y":0}, {"label":"F4", "x":12.5, "y":0}, {"label":"F5", "x":14, "y":0}, {"label":"F6", "x":15, "y":0}, {"label":"F7", "x":16, "y":0}, {"label":"F8", "x":17, "y":0}, {"label":"F9", "x":18.5, "y":0}, {"label":"F10", "x":19.5, "y":0}, {"label":"F11", "x":20.5, "y":0}, {"label":"F12", "x":21.5, "y":0}, {"x":0, "y":1.25}, {"x":1, "y":1.25}, {"x":2, "y":1.25}, {"x":3, "y":1.25}, {"label":"Insert", "x":4.25, "y":1.25}, {"label":"Home", "x":5.25, "y":1.25}, {"label":"PgUp", "x":6.25, "y":1.25}, {"label":"~", "x":7.5, "y":1.25}, {"label":"!", "x":8.5, "y":1.25}, {"label":"@", "x":9.5, "y":1.25}, {"label":"#", "x":10.5, "y":1.25}, {"label":"$", "x":11.5, "y":1.25}, {"label":"%", "x":12.5, "y":1.25}, {"label":"^", "x":13.5, "y":1.25}, {"label":"&", "x":14.5, "y":1.25}, {"label":"*", "x":15.5, "y":1.25}, {"label":"(", "x":16.5, "y":1.25}, {"label":")", "x":17.5, "y":1.25}, {"label":"_", "x":18.5, "y":1.25}, {"label":"+", "x":19.5, "y":1.25}, {"x":20.5, "y":1.25}, {"x":21.5, "y":1.25}, {"x":0, "y":2.25}, {"x":1, "y":2.25}, {"x":2, "y":2.25}, {"x":3, "y":2.25}, {"label":"Delete", "x":4.25, "y":2.25}, {"label":"End", "x":5.25, "y":2.25}, {"label":"PgDn", "x":6.25, "y":2.25}, {"label":"Tab", "x":7.5, "y":2.25, "w":1.5}, {"label":"Q", "x":9, "y":2.25}, {"label":"W", "x":10, "y":2.25}, {"label":"E", "x":11, "y":2.25}, {"label":"R", "x":12, "y":2.25}, {"label":"T", "x":13, "y":2.25}, {"label":"Y", "x":14, "y":2.25}, {"label":"U", "x":15, "y":2.25}, {"label":"I", "x":16, "y":2.25}, {"label":"O", "x":17, "y":2.25}, {"label":"P", "x":18, "y":2.25}, {"label":"{", "x":19, "y":2.25}, {"label":"}", "x":20, "y":2.25}, {"label":"|", "x":21, "y":2.25, "w":1.5}, {"x":0, "y":3.25}, {"x":1, "y":3.25}, {"x":2, "y":3.25}, {"x":3, "y":3.25}, {"label":"Caps Lock", "x":7.5, "y":3.25, "w":1.75}, {"label":"A", "x":9.25, "y":3.25}, {"label":"S", "x":10.25, "y":3.25}, {"label":"D", "x":11.25, "y":3.25}, {"label":"F", "x":12.25, "y":3.25}, {"label":"G", "x":13.25, "y":3.25}, {"label":"H", "x":14.25, "y":3.25}, {"label":"J", "x":15.25, "y":3.25}, {"label":"K", "x":16.25, "y":3.25}, {"label":"L", "x":17.25, "y":3.25}, {"label":":", "x":18.25, "y":3.25}, {"label":"\"", "x":19.25, "y":3.25}, {"label":"Enter", "x":20.25, "y":3.25, "w":2.25}, {"x":0, "y":4.25}, {"x":1, "y":4.25}, {"x":2, "y":4.25}, {"x":3, "y":4.25}, {"label":"\u2191", "x":5.25, "y":4.25}, {"label":"Shift", "x":7.5, "y":4.25, "w":2.25}, {"label":"Z", "x":9.75, "y":4.25}, {"label":"X", "x":10.75, "y":4.25}, {"label":"C", "x":11.75, "y":4.25}, {"label":"V", "x":12.75, "y":4.25}, {"label":"B", "x":13.75, "y":4.25}, {"label":"N", "x":14.75, "y":4.25}, {"label":"M", "x":15.75, "y":4.25}, {"label":"<", "x":16.75, "y":4.25}, {"label":">", "x":17.75, "y":4.25}, {"label":"?", "x":18.75, "y":4.25}, {"x":19.75, "y":4.25, "w":1.75}, {"x":21.5, "y":4.25}, {"x":0, "y":5.25}, {"x":1, "y":5.25}, {"x":2, "y":5.25}, {"x":3, "y":5.25}, {"label":"\u2190", "x":4.25, "y":5.25}, {"label":"\u2193", "x":5.25, "y":5.25}, {"label":"\u2192", "x":6.25, "y":5.25}, {"label":"Ctrl", "x":7.5, "y":5.25, "w":1.25}, {"label":"Win", "x":8.75, "y":5.25, "w":1.25}, {"label":"Alt", "x":10, "y":5.25, "w":1.25}, {"x":11.25, "y":5.25, "w":6.25}, {"label":"Alt", "x":17.5, "y":5.25, "w":1.25}, {"label":"Win", "x":18.75, "y":5.25, "w":1.25}, {"label":"Menu", "x":20, "y":5.25, "w":1.25}, {"label":"Ctrl", "x":21.25, "y":5.25, "w":1.25}]

M keyboards/xelus/la_plus/config.h => keyboards/xelus/la_plus/config.h +0 -7
@@ 18,13 18,6 @@

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0x5845 // XE
#define PRODUCT_ID      0x4C50 // LP
#define DEVICE_VER      0x0001
#define MANUFACTURER    Xelus
#define PRODUCT         MechaMaker La+

/* key matrix size */
#define MATRIX_ROWS 5
#define MATRIX_COLS 15

M keyboards/xelus/la_plus/info.json => keyboards/xelus/la_plus/info.json +7 -1
@@ 1,7 1,13 @@
{
    "keyboard_name": "La+",
    "keyboard_name": "MechaMaker La+",
    "manufacturer": "Xelus",
    "url": "",
    "maintainer": "Xelus22",
    "usb": {
        "vid": "0x5845",
        "pid": "0x4C50",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT_all": {
            "layout": [

M keyboards/xelus/ninjin/config.h => keyboards/xelus/ninjin/config.h +0 -7
@@ 16,13 16,6 @@

#pragma once

/* USB Device descriptor parameter */
#define VENDOR_ID       0x5845  // XE
#define PRODUCT_ID      0x4E4A  // NJ
#define DEVICE_VER      0x0001
#define MANUFACTURER    Xelus
#define PRODUCT         Ninjin

/* key matrix size */
#define MATRIX_ROWS 6
#define MATRIX_COLS 17

M keyboards/xelus/ninjin/info.json => keyboards/xelus/ninjin/info.json +6 -0
@@ 1,7 1,13 @@
{
    "keyboard_name": "Ninjin",
    "manufacturer": "Xelus",
    "url": "",
    "maintainer": "Xelus",
    "usb": {
        "vid": "0x5845",
        "pid": "0x4E4A",
        "device_version": "0.0.1"
    },
    "layout_aliases": {
        "LAYOUT_all": "LAYOUT_tkl_ansi_tsangan"
    },

M keyboards/xelus/pachi/mini_32u4/config.h => keyboards/xelus/pachi/mini_32u4/config.h +0 -7
@@ 16,13 16,6 @@

#pragma once

/* USB Device descriptor parameter */
#define VENDOR_ID       0x5845  // XE
#define PRODUCT_ID      0x5041  // PA
#define DEVICE_VER      0x0001
#define MANUFACTURER    Xelus
#define PRODUCT         Xelus Pachi Mini

/* key matrix size */
#define MATRIX_ROWS 6
#define MATRIX_COLS 17

M keyboards/xelus/pachi/mini_32u4/info.json => keyboards/xelus/pachi/mini_32u4/info.json +7 -1
@@ 1,7 1,13 @@
{
    "keyboard_name": "Xelus Pachi Mini",
    "keyboard_name": "Pachi Mini",
    "manufacturer": "Xelus",
    "url": "",
    "maintainer": "Xelus22",
    "usb": {
        "vid": "0x5845",
        "pid": "0x5041",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT_all": {
            "layout": [

M keyboards/xelus/pachi/rev1/config.h => keyboards/xelus/pachi/rev1/config.h +0 -7
@@ 16,13 16,6 @@

#pragma once

/* USB Device descriptor parameter */
#define VENDOR_ID       0x5845  // XE
#define PRODUCT_ID      0x5041  // PA
#define DEVICE_VER      0x0001
#define MANUFACTURER    Xelus
#define PRODUCT         Xelus Pachi

/* key matrix size */
#define MATRIX_ROWS 6
#define MATRIX_COLS 17

M keyboards/xelus/pachi/rev1/info.json => keyboards/xelus/pachi/rev1/info.json +7 -1
@@ 1,7 1,13 @@
{
    "keyboard_name": "Xelus Pachi Rev 1",
    "keyboard_name": "Pachi Rev 1",
    "manufacturer": "Xelus",
    "url": "",
    "maintainer": "Xelus22",
    "usb": {
        "vid": "0x5845",
        "pid": "0x5041",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT_all": {
            "layout": [

M keyboards/xelus/pachi/rgb/rev1/config.h => keyboards/xelus/pachi/rgb/rev1/config.h +0 -7
@@ 16,13 16,6 @@

#pragma once

/* USB Device descriptor parameter */
#define VENDOR_ID       0x5845 // "XE"
#define PRODUCT_ID      0x5052 // "PR"
#define DEVICE_VER      0x0001
#define MANUFACTURER    Xelus
#define PRODUCT         Xelus Pachi RGB Rev1

/* key matrix size */
#define MATRIX_ROWS 6
#define MATRIX_COLS 17

M keyboards/xelus/pachi/rgb/rev1/info.json => keyboards/xelus/pachi/rgb/rev1/info.json +7 -1
@@ 1,7 1,13 @@
{
    "keyboard_name": "Xelus Pachi RGB Rev 1",
    "keyboard_name": "Pachi RGB Rev 1",
    "manufacturer": "Xelus",
    "url": "",
    "maintainer": "Xelus22",
    "usb": {
        "vid": "0x5845",
        "pid": "0x5052",
        "device_version": "0.0.1"
    },
    "layout_aliases": {
        "LAYOUT_ansi_tsangan": "LAYOUT_tkl_ansi_tsangan"
    },

M keyboards/xelus/pachi/rgb/rev2/config.h => keyboards/xelus/pachi/rgb/rev2/config.h +0 -7
@@ 16,13 16,6 @@

#pragma once

/* USB Device descriptor parameter */
#define VENDOR_ID       0x5845 // "XE"
#define PRODUCT_ID      0x5053 // "PR" + 1
#define DEVICE_VER      0x0002
#define MANUFACTURER    Xelus
#define PRODUCT         Xelus Pachi RGB Rev 2

/* key matrix size */
#define MATRIX_ROWS 12
#define MATRIX_COLS 9

M keyboards/xelus/pachi/rgb/rev2/info.json => keyboards/xelus/pachi/rgb/rev2/info.json +7 -1
@@ 1,7 1,13 @@
{
    "keyboard_name": "Xelus Pachi RGB Rev 1",
    "keyboard_name": "Pachi RGB Rev 2",
    "manufacturer": "Xelus",
    "url": "",
    "maintainer": "Xelus22",
    "usb": {
        "vid": "0x5845",
        "pid": "0x5053",
        "device_version": "0.0.2"
    },
    "layout_aliases": {
        "LAYOUT_ansi_tsangan": "LAYOUT_tkl_ansi_tsangan"
    },

M keyboards/xelus/rs108/config.h => keyboards/xelus/rs108/config.h +0 -7
@@ 15,13 15,6 @@
 */
#pragma once

// USB Device descriptor parameter
#define VENDOR_ID       0x5845 // XE
#define PRODUCT_ID      0x5208 // RS108 "R+08"
#define DEVICE_VER      0x0002
#define MANUFACTURER    Xelus
#define PRODUCT         RS60

/* key matrix size */
#define MATRIX_ROWS 12
#define MATRIX_COLS 11

M keyboards/xelus/rs108/info.json => keyboards/xelus/rs108/info.json +6 -0
@@ 1,7 1,13 @@
{
    "keyboard_name": "RS108",
    "manufacturer": "Xelus",
    "url": "",
    "maintainer": "xelus22",
    "usb": {
        "vid": "0x5845",
        "pid": "0x5208",
        "device_version": "0.0.2"
    },
    "layouts": {
        "LAYOUT_108_fullsize_ansi": {
            "layout": [

M keyboards/xelus/snap96/config.h => keyboards/xelus/snap96/config.h +0 -7
@@ 2,13 2,6 @@

#include "config_common.h"

// USB Device descriptor parameter
#define VENDOR_ID       0x5845 // XE
#define PRODUCT_ID      0x5396 // Snap96
#define DEVICE_VER      0x0001
#define MANUFACTURER    Xelus
#define PRODUCT         Snap96

// key matrix size
#define MATRIX_ROWS 12
#define MATRIX_COLS 10

M keyboards/xelus/snap96/info.json => keyboards/xelus/snap96/info.json +6 -0
@@ 1,7 1,13 @@
{
    "keyboard_name": "Snap96",
    "manufacturer": "Xelus",
    "url": "",
    "maintainer": "Xelus22",
    "usb": {
        "vid": "0x5845",
        "pid": "0x5396",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT_all": {
            "layout": [

M keyboards/xelus/trinityxttkl/config.h => keyboards/xelus/trinityxttkl/config.h +0 -7
@@ 16,13 16,6 @@

#pragma once

/* USB Device descriptor parameter */
#define VENDOR_ID       0x5845  // XE
#define PRODUCT_ID      0x5854  // XT
#define DEVICE_VER      0x0001
#define MANUFACTURER    Xelus
#define PRODUCT         TrinityXTtkl

/* key matrix size */
#define MATRIX_ROWS 6
#define MATRIX_COLS 19

M keyboards/xelus/trinityxttkl/info.json => keyboards/xelus/trinityxttkl/info.json +6 -0
@@ 1,7 1,13 @@
{
    "keyboard_name": "Trinity XT TKL",
    "manufacturer": "Xelus",
    "url": "",
    "maintainer": "Xelus22",
    "usb": {
        "vid": "0x5845",
        "pid": "0x5854",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT_all": {
            "layout": [

M keyboards/xelus/valor/rev1/config.h => keyboards/xelus/valor/rev1/config.h +0 -7
@@ 18,13 18,6 @@

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0x5845 // "XE"
#define PRODUCT_ID      0x5652 // Valor "VR"
#define DEVICE_VER      0x0001
#define MANUFACTURER    Xelus
#define PRODUCT         Xelus Valor

/* key matrix size */
#define MATRIX_ROWS 5
#define MATRIX_COLS 15

M keyboards/xelus/valor/rev1/info.json => keyboards/xelus/valor/rev1/info.json +7 -1
@@ 1,7 1,13 @@
{
    "keyboard_name": "Xelus Valor rev1",
    "keyboard_name": "Valor Rev1",
    "manufacturer": "Xelus",
    "url": "",
    "maintainer": "Xelus22",
    "usb": {
        "vid": "0x5845",
        "pid": "0x5652",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT_alice_split_bs": {
            "layout": [

M keyboards/xelus/valor/rev2/config.h => keyboards/xelus/valor/rev2/config.h +0 -7
@@ 18,13 18,6 @@

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0x5845 // "XE"
#define PRODUCT_ID      0x5653 // Valor "VR" + 1
#define DEVICE_VER      0x0001
#define MANUFACTURER    Xelus
#define PRODUCT         Xelus Valor Rev2

/* key matrix size */
#define MATRIX_ROWS 5
#define MATRIX_COLS 15

M keyboards/xelus/valor/rev2/info.json => keyboards/xelus/valor/rev2/info.json +7 -1
@@ 1,7 1,13 @@
{
    "keyboard_name": "Xelus Valor Rev2",
    "keyboard_name": "Valor Rev2",
    "manufacturer": "Xelus",
    "url": "",
    "maintainer": "Xelus22",
    "usb": {
        "vid": "0x5845",
        "pid": "0x5653",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT_alice_split_bs": {
            "layout": [

M keyboards/xelus/valor_frl_tkl/config.h => keyboards/xelus/valor_frl_tkl/config.h +0 -7
@@ 18,13 18,6 @@

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0x5845 // "XE"
#define PRODUCT_ID      0x4654 // "FT"
#define DEVICE_VER      0x0001
#define MANUFACTURER    Xelus
#define PRODUCT         Xelus Valor FRL TKL

/* key matrix size */
#define MATRIX_ROWS 5
#define MATRIX_COLS 17

M keyboards/xelus/valor_frl_tkl/info.json => keyboards/xelus/valor_frl_tkl/info.json +7 -1
@@ 1,7 1,13 @@
{
    "keyboard_name": "Xelus Valor FRL TKL",
    "keyboard_name": "Valor FRL TKL",
    "manufacturer": "Xelus",
    "url": "",
    "maintainer": "Xelus22",
    "usb": {
        "vid": "0x5845",
        "pid": "0x4654",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT_all": {
            "layout": [

M keyboards/xelus/xs60/config.h => keyboards/xelus/xs60/config.h +0 -7
@@ 16,13 16,6 @@

#pragma once

/* USB Device descriptor parameter */
#define VENDOR_ID       0x5845 // "XE"
#define PRODUCT_ID      0x5860 // "XS60"
#define DEVICE_VER      0x0001
#define MANUFACTURER    Xelus
#define PRODUCT         Xelus XS60

/* key matrix size */
#define MATRIX_ROWS 5
#define MATRIX_COLS 14

M keyboards/xelus/xs60/info.json => keyboards/xelus/xs60/info.json +6 -0
@@ 1,7 1,13 @@
{
    "keyboard_name": "XS60",
    "manufacturer": "Xelus",
    "url": "",
    "maintainer": "Xelus22",
    "usb": {
        "vid": "0x5845",
        "pid": "0x5860",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT_60_ansi_split_bs_rshift": {
            "layout": [

M keyboards/xenon/config.h => keyboards/xenon/config.h +0 -6
@@ 19,12 19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0xFEED
#define PRODUCT_ID      0x3404
#define DEVICE_VER      0x0001
#define PRODUCT         Xenon

/* key matrix size */
/* Rows are doubled up */
#define MATRIX_ROWS 10

M keyboards/xenon/info.json => keyboards/xenon/info.json +6 -1
@@ 1,8 1,13 @@
{
  "keyboard_name": "Xenon",
  "manufacturer": "narinari",
  "url": "https://github.com/narinari/xenon-keyboard",
  "maintainer": "Kyrremann",
  "manufacturer": "narinari",
  "usb": {
    "vid": "0xFEED",
    "pid": "0x3404",
    "device_version": "0.0.1"
  },
  "layouts": {
    "LAYOUT": {
      "layout": [

M keyboards/xiaomi/mk02/config.h => keyboards/xiaomi/mk02/config.h +0 -7
@@ 19,13 19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP FALSE

/* USB Device descriptor parameter */
#define VENDOR_ID       0xFEED
#define PRODUCT_ID      0x0B91
#define DEVICE_VER      0x0001
#define MANUFACTURER Xiaomi
#define PRODUCT MK02

/* key matrix size */
#define MATRIX_ROWS 6
#define MATRIX_COLS 17

M keyboards/xiaomi/mk02/info.json => keyboards/xiaomi/mk02/info.json +7 -1
@@ 1,7 1,13 @@
{
    "keyboard_name": "Xiaomi MK02",
    "keyboard_name": "MK02",
    "manufacturer": "Xiaomi",
    "url": "",
    "maintainer": "qmk",
    "usb": {
        "vid": "0xFEED",
        "pid": "0x0B91",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT_tkl_ansi": {
            "layout": [

M keyboards/xiudi/xd002/config.h => keyboards/xiudi/xd002/config.h +0 -7
@@ 17,13 17,6 @@

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID  0x7844 // "XD"
#define PRODUCT_ID 0x0202
#define DEVICE_VER 0x0001
#define MANUFACTURER XIUDI
#define PRODUCT XD002

/* matrix size */
#define MATRIX_ROWS 1
#define MATRIX_COLS 2

M keyboards/xiudi/xd002/info.json => keyboards/xiudi/xd002/info.json +7 -1
@@ 1,7 1,13 @@
{
  "keyboard_name": "xd002",
  "keyboard_name": "XD002",
  "manufacturer": "XIUDI",
  "url": "https://kprepublic.com/products/xd002-xiudi-2-custom-mechanical-keyboard-2-keys-underglow-and-switch-rgb-pcb-programmed-hot-swappable-macro-key-aluminum-case",
  "maintainer": "zvecr",
  "usb": {
    "vid": "0x7844",
    "pid": "0x0202",
    "device_version": "0.0.1"
  },
  "layouts": {
    "LAYOUT": {
      "layout": [

M keyboards/xiudi/xd68/config.h => keyboards/xiudi/xd68/config.h +0 -7
@@ 19,13 19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0x7844   // "XD"
#define PRODUCT_ID      0x6868
#define DEVICE_VER      0x0001
#define MANUFACTURER    xiudi
#define PRODUCT         XD68

/* key matrix size */
#define MATRIX_ROWS 5
#define MATRIX_COLS 15

M keyboards/xiudi/xd68/info.json => keyboards/xiudi/xd68/info.json +7 -1
@@ 1,7 1,13 @@
{
    "keyboard_name": "xd68",
    "keyboard_name": "XD68",
    "manufacturer": "xiudi",
    "url": "",
    "maintainer": "qmk",
    "usb": {
        "vid": "0x7844",
        "pid": "0x6868",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT_65_ansi": {
            "layout": [

M keyboards/xiudi/xd75/config.h => keyboards/xiudi/xd75/config.h +0 -7
@@ 19,13 19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID    0x7844  // "XD"
#define PRODUCT_ID   0x7575
#define DEVICE_VER   0x0001
#define MANUFACTURER xiudi
#define PRODUCT      XD75

/* key matrix size */
#define MATRIX_ROWS 5
#define MATRIX_COLS 15

M keyboards/xiudi/xd75/info.json => keyboards/xiudi/xd75/info.json +6 -0
@@ 1,7 1,13 @@
{
    "keyboard_name": "XD75",
    "manufacturer": "xiudi",
    "url": "",
    "maintainer": "qmk",
    "usb": {
        "vid": "0x7844",
        "pid": "0x7575",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT_ortho_5x15": {
            "layout": [

M keyboards/xiudi/xd84/config.h => keyboards/xiudi/xd84/config.h +0 -7
@@ 18,13 18,6 @@

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0x7844   // "XD"
#define PRODUCT_ID      0x8484
#define DEVICE_VER      0x0001
#define MANUFACTURER    KPrepublic
#define PRODUCT         XD84

/* key matrix size */
#define MATRIX_ROWS 6
#define MATRIX_COLS 15

M keyboards/xiudi/xd84/info.json => keyboards/xiudi/xd84/info.json +6 -0
@@ 1,7 1,13 @@
{
    "keyboard_name": "XD84",
    "manufacturer": "KPrepublic",
    "url": "",
    "maintainer": "qmk",
    "usb": {
        "vid": "0x7844",
        "pid": "0x8484",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT_75_ansi": {
            "layout": [

M keyboards/xiudi/xd84pro/config.h => keyboards/xiudi/xd84pro/config.h +0 -7
@@ 18,13 18,6 @@

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0x7844 // "xD"
#define PRODUCT_ID      0x8450 // 84 "P"
#define DEVICE_VER      0x0001
#define MANUFACTURER    KPrepublic
#define PRODUCT         XD84 Pro

/* key matrix size */
#define MATRIX_ROWS 6
#define MATRIX_COLS 15

M keyboards/xiudi/xd84pro/info.json => keyboards/xiudi/xd84pro/info.json +6 -0
@@ 1,7 1,13 @@
{
    "keyboard_name": "XD84 Pro",
    "manufacturer": "KPrepublic",
    "url": "",
    "maintainer": "qmk",
    "usb": {
        "vid": "0x7844",
        "pid": "0x8450",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT_all": {
            "layout": [

M keyboards/xiudi/xd87/config.h => keyboards/xiudi/xd87/config.h +0 -7
@@ 19,13 19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0x7844   // "XD"
#define PRODUCT_ID      0x8787
#define DEVICE_VER      0x0001
#define MANUFACTURER    KP Republic
#define PRODUCT         XD87 TKL

/* key matrix size */
#define MATRIX_ROWS 6
#define MATRIX_COLS 17

M keyboards/xiudi/xd87/info.json => keyboards/xiudi/xd87/info.json +6 -0
@@ 1,7 1,13 @@
{
  "keyboard_name": "XD87",
  "manufacturer": "KPrepublic",
  "url": "https://kprepublic.com/products/hot-swappable-xd87-hs-xd87-custom-mechanical-keyboard-kit80-supports-tkg-tools-support-underglow-rgb-pcb-programmed-gh80-kle",
  "maintainer": "qmk",
  "usb": {
    "vid": "0x7844",
    "pid": "0x8787",
    "device_version": "0.0.1"
  },
  "layouts": {
    "LAYOUT_all": {
      "layout": [

M keyboards/xiudi/xd96/config.h => keyboards/xiudi/xd96/config.h +0 -7
@@ 18,13 18,6 @@

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0x7844   // "XD"
#define PRODUCT_ID      0x9696
#define DEVICE_VER      0x0001
#define MANUFACTURER    KPrepublic
#define PRODUCT         XD96

/* key matrix size */
#define MATRIX_ROWS 6
#define MATRIX_COLS 18

M keyboards/xiudi/xd96/info.json => keyboards/xiudi/xd96/info.json +7 -1
@@ 1,7 1,13 @@
{
  "keyboard_name": "xd96",
  "keyboard_name": "XD96",
  "manufacturer": "KPrepublic",
  "url": "",
  "maintainer": "qmk",
  "usb": {
    "vid": "0x7844",
    "pid": "0x9696",
    "device_version": "0.0.1"
  },
  "layouts": {  
    "LAYOUT_96_ansi": {
      "layout": [

M keyboards/xmmx/config.h => keyboards/xmmx/config.h +0 -7
@@ 2,13 2,6 @@

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0xFEED
#define PRODUCT_ID      0x6776
#define DEVICE_VER      0x0001
#define MANUFACTURER    farmakon
#define PRODUCT         "XMMX"

/* key matrix size */
#define MATRIX_ROWS 6
#define MATRIX_COLS 17

M keyboards/xmmx/info.json => keyboards/xmmx/info.json +6 -0
@@ 1,7 1,13 @@
{
    "keyboard_name": "XMMX",
    "manufacturer": "farmakon",
    "url": "",
    "maintainer": "qmk",
    "usb": {
        "vid": "0xFEED",
        "pid": "0x6776",
        "device_version": "0.0.1"
    },
    "layouts": {
        "LAYOUT_all": {
            "layout": [

M keyboards/xw60/config.h => keyboards/xw60/config.h +0 -7
@@ 2,13 2,6 @@

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID       0xFEED
#define PRODUCT_ID      0x6060
#define DEVICE_VER      0x0001
#define MANUFACTURER    Drclick
#define PRODUCT         XW60

/* key matrix size */
#define MATRIX_ROWS 5
#define MATRIX_COLS 14

M keyboards/xw60/info.json => keyboards/xw60/info.json +6 -0
@@ 1,7 1,13 @@
{
    "keyboard_name": "XW60",
    "manufacturer": "Drclick",
    "url": "",
    "maintainer": "qmk",
    "usb": {
      "vid": "0xFEED",
      "pid": "0x6060",
      "device_version": "0.0.1"
    },
    "layouts": {
      "LAYOUT": {
        "layout": [{"label":"K00", "x":0, "y":0}, {"label":"K01", "x":1, "y":0}, {"label":"K02", "x":2, "y":0}, {"label":"K03", "x":3, "y":0}, {"label":"K04", "x":4, "y":0}, {"label":"K05", "x":5, "y":0}, {"label":"K06", "x":6, "y":0}, {"label":"K07", "x":7, "y":0}, {"label":"K08", "x":8, "y":0}, {"label":"K09", "x":9, "y":0}, {"label":"K0A", "x":10, "y":0}, {"label":"K0B", "x":11, "y":0}, {"label":"K0C", "x":12, "y":0}, {"label":"K0D", "x":13, "y":0}, {"label":"K49", "x":14, "y":0}, {"label":"K10", "x":0, "y":1, "w":1.5}, {"label":"K11", "x":1.5, "y":1}, {"label":"K12", "x":2.5, "y":1}, {"label":"K13", "x":3.5, "y":1}, {"label":"K14", "x":4.5, "y":1}, {"label":"K15", "x":5.5, "y":1}, {"label":"K16", "x":6.5, "y":1}, {"label":"K17", "x":7.5, "y":1}, {"label":"K18", "x":8.5, "y":1}, {"label":"K19", "x":9.5, "y":1}, {"label":"K1A", "x":10.5, "y":1}, {"label":"K1B", "x":11.5, "y":1}, {"label":"K1C", "x":12.5, "y":1}, {"label":"K1D", "x":13.5, "y":1, "w":1.5}, {"label":"K20", "x":0, "y":2, "w":1.75}, {"label":"K21", "x":1.75, "y":2}, {"label":"K22", "x":2.75, "y":2}, {"label":"K23", "x":3.75, "y":2}, {"label":"K24", "x":4.75, "y":2}, {"label":"K25", "x":5.75, "y":2}, {"label":"K26", "x":6.75, "y":2}, {"label":"K27", "x":7.75, "y":2}, {"label":"K28", "x":8.75, "y":2}, {"label":"K29", "x":9.75, "y":2}, {"label":"K2A", "x":10.75, "y":2}, {"label":"K2B", "x":11.75, "y":2}, {"label":"K2C", "x":12.75, "y":2}, {"label":"K2D", "x":13.75, "y":2, "w":1.25}, {"label":"K30", "x":0, "y":3, "w":1.25}, {"label":"K31", "x":1.25, "y":3}, {"label":"K32", "x":2.25, "y":3}, {"label":"K33", "x":3.25, "y":3}, {"label":"K34", "x":4.25, "y":3}, {"label":"K35", "x":5.25, "y":3}, {"label":"K36", "x":6.25, "y":3}, {"label":"K37", "x":7.25, "y":3}, {"label":"K38", "x":8.25, "y":3}, {"label":"K39", "x":9.25, "y":3}, {"label":"K3A", "x":10.25, "y":3}, {"label":"K3B", "x":11.25, "y":3}, {"label":"K3D", "x":12.25, "y":3, "w":1.75}, {"label":"K3C", "x":14, "y":3}, {"label":"K40", "x":0, "y":4, "w":1.25}, {"label":"K41", "x":1.25, "y":4, "w":1.25}, {"label":"K42", "x":2.5, "y":4, "w":1.25}, {"label":"K44", "x":3.75, "y":4, "w":2}, {"label":"K45", "x":5.75, "y":4, "w":2.25}, {"label":"K46", "x":8, "y":4, "w":2}, {"label":"K4A", "x":10, "y":4, "w":1.25}, {"label":"K4B", "x":11.25, "y":4, "w":1.25}, {"label":"K4C", "x":12.5, "y":4, "w":1.25}, {"label":"K4D", "x":13.75, "y":4, "w":1.25}]