~ruther/qmk_firmware

089a819179fe5a5eb25b8dc3fd595c9b6c485349 — Ryan 10 months ago 751fbd7
keyboard.json schema: set minimum value for `key_unit` (#23937)

* keyboard.json schema: set minimum value for `key_unit`

* Fix invalid `matrix_size` in keyboard.json

* Fix bad layout for silverbullet44
M data/schemas/definitions.jsonschema => data/schemas/definitions.jsonschema +2 -1
@@ 40,7 40,8 @@
        "pattern": "^[0-9a-z_/\\-]+\\.json$"
    },
    "key_unit": {
        "type": "number"
        "type": "number",
        "minimum": 0
    },
    "keyboard": {
        "type": "string",

M data/schemas/keyboard.jsonschema => data/schemas/keyboard.jsonschema +4 -4
@@ 515,8 515,8 @@
                                    "minimum": 0
                                }
                            },
                            "x": {"$ref": "qmk.definitions.v1#/key_unit"},
                            "y": {"$ref": "qmk.definitions.v1#/key_unit"},
                            "x": {"$ref": "qmk.definitions.v1#/unsigned_int"},
                            "y": {"$ref": "qmk.definitions.v1#/unsigned_int"},
                            "flags": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
                        }
                    }


@@ 601,8 601,8 @@
                                    "minimum": 0
                                }
                            },
                            "x": {"$ref": "qmk.definitions.v1#/key_unit"},
                            "y": {"$ref": "qmk.definitions.v1#/key_unit"},
                            "x": {"$ref": "qmk.definitions.v1#/unsigned_int"},
                            "y": {"$ref": "qmk.definitions.v1#/unsigned_int"},
                            "flags": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
                        }
                    }

M keyboards/hazel/bad_wings/config.h => keyboards/hazel/bad_wings/config.h +3 -0
@@ 3,6 3,9 @@

#pragma once

#define MATRIX_COLS 8
#define MATRIX_ROWS 5

#define SPI_SCK_PIN     GP2
#define SPI_MOSI_PIN    GP3
#define SPI_MISO_PIN    GP4

M keyboards/hazel/bad_wings/keyboard.json => keyboards/hazel/bad_wings/keyboard.json +0 -4
@@ 10,10 10,6 @@
  },
  "processor": "RP2040",
  "bootloader": "rp2040",
  "matrix_size": {
    "cols": 8,
    "rows": 5
  },
  "diode_direction": "COL2ROW",
  "features": {
    "bootmagic": true,

M keyboards/keychron/q1v2/config.h => keyboards/keychron/q1v2/config.h +3 -0
@@ 16,6 16,9 @@

#pragma once

#define MATRIX_COLS 16
#define MATRIX_ROWS 6

/* RGB Matrix Driver Configuration */
#define SNLED27351_I2C_ADDRESS_1 SNLED27351_I2C_ADDRESS_VDDIO
#define SNLED27351_I2C_ADDRESS_2 SNLED27351_I2C_ADDRESS_GND

M keyboards/keychron/q1v2/info.json => keyboards/keychron/q1v2/info.json +0 -4
@@ 32,10 32,6 @@
        "custom": true,
        "custom_lite": true
    },
    "matrix_size": {
        "cols": 16,
        "rows": 6
    },
    "diode_direction": "ROW2COL",
    "rgb_matrix": {
        "driver": "snled27351",

A keyboards/mechlovin/olly/jf/rev1/config.h => keyboards/mechlovin/olly/jf/rev1/config.h +7 -0
@@ 0,0 1,7 @@
// Copyright 2024 QMK
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once

#define MATRIX_COLS 19
#define MATRIX_ROWS 6

M keyboards/mechlovin/olly/jf/rev1/keyboard.json => keyboards/mechlovin/olly/jf/rev1/keyboard.json +0 -4
@@ 16,10 16,6 @@
        "rows": ["D5", "D6", "A5", "A4", "A3", "A6"],
        "custom_lite": true
    },
    "matrix_size": {
        "cols": 19,
        "rows": 6
    },
    "backlight": {
        "pin": "D4",
        "breathing": true

M keyboards/silverbullet44/keyboard.json => keyboards/silverbullet44/keyboard.json +17 -17
@@ 92,29 92,29 @@
                {"matrix": [5, 1], "x": 16, "y": 1.75},
                {"matrix": [5, 0], "x": 17, "y": 2.375},

                {"matrix": [2, 0], "x": 12, "y": 2.5},
                {"matrix": [2, 1], "x": 13, "y": 2.25},
                {"matrix": [2, 2], "x": 14, "y": 2},
                {"matrix": [2, 3], "x": 15, "y": 2.25},
                {"matrix": [2, 4], "x": 16, "y": 2.75},
                {"matrix": [2, 5], "x": 17, "y": 3.375},
                {"matrix": [2, 0], "x": 0, "y": 3.375},
                {"matrix": [2, 1], "x": 1, "y": 2.75},
                {"matrix": [2, 2], "x": 2, "y": 2.25},
                {"matrix": [2, 3], "x": 3, "y": 2},
                {"matrix": [2, 4], "x": 4, "y": 2.25},
                {"matrix": [2, 5], "x": 5, "y": 2.5},

                {"matrix": [6, 5], "x": 0, "y": 3.375},
                {"matrix": [6, 4], "x": 1, "y": 2.75},
                {"matrix": [6, 3], "x": 2, "y": 2.25},
                {"matrix": [6, 2], "x": 3, "y": 2},
                {"matrix": [6, 1], "x": 4, "y": 2.25},
                {"matrix": [6, 0], "x": 5, "y": 2.5},
                {"matrix": [6, 5], "x": 12, "y": 2.5},
                {"matrix": [6, 4], "x": 13, "y": 2.25},
                {"matrix": [6, 3], "x": 14, "y": 2},
                {"matrix": [6, 2], "x": 15, "y": 2.25},
                {"matrix": [6, 1], "x": 16, "y": 2.75},
                {"matrix": [6, 0], "x": 17, "y": 3.375},

                {"matrix": [3, 2], "x": 4, "y": 3.25, "h": 1.25},
                {"matrix": [3, 3], "x": 5, "y": 3.5},
                {"matrix": [3, 4], "x": -0.5, "y": 3.5, "h": 1.5},
                {"matrix": [3, 5], "x": 7, "y": 3.25, "h": 1.5},
                {"matrix": [3, 4], "x": 6, "y": 3.25, "h": 1.5},
                {"matrix": [3, 5], "x": 7, "y": 3.5, "h": 1.5},

                {"matrix": [7, 5], "x": -3, "y": 3.5, "h": 1.5},
                {"matrix": [7, 4], "x": -2, "y": 3.5, "h": 1.5},
                {"matrix": [7, 5], "x": 10, "y": 3.5, "h": 1.5},
                {"matrix": [7, 4], "x": 11, "y": 3.25, "h": 1.5},
                {"matrix": [7, 3], "x": 12, "y": 3.5},
                {"matrix": [7, 2], "x": 13, "y": 3.25, "w": 1.25}
                {"matrix": [7, 2], "x": 13, "y": 3.25, "h": 1.25}
            ]
        }
    }

M keyboards/snes_macropad/config.h => keyboards/snes_macropad/config.h +3 -0
@@ 3,6 3,9 @@

#pragma once

#define MATRIX_COLS 4
#define MATRIX_ROWS 6

#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP25
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U

M keyboards/snes_macropad/keyboard.json => keyboards/snes_macropad/keyboard.json +0 -4
@@ 19,10 19,6 @@
        "driver": "vendor"
    },
    "processor": "RP2040",
    "matrix_size": {
        "cols": 4,
        "rows": 6
    },
    "url": "",
    "usb": {
        "device_version": "1.0.0",

M keyboards/zsa/voyager/config.h => keyboards/zsa/voyager/config.h +3 -0
@@ 4,6 4,9 @@

#pragma once

#define MATRIX_COLS 7
#define MATRIX_ROWS 12

#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC


M keyboards/zsa/voyager/keyboard.json => keyboards/zsa/voyager/keyboard.json +0 -4
@@ 27,10 27,6 @@
        "matrix": [0, 1]
    },
    "diode_direction": "ROW2COL",
    "matrix_size": {
        "cols": 7,
        "rows": 12
    },
    "mousekey": {
        "delay": 0,
        "interval": 20,

Do not follow this link