summaryrefslogtreecommitdiffstats
path: root/data
diff options
context:
space:
mode:
Diffstat (limited to 'data')
-rw-r--r--data/mappings/defaults.json6
-rw-r--r--data/mappings/info_config.json38
-rw-r--r--data/mappings/info_rules.json5
-rw-r--r--data/schemas/definitions.jsonschema16
-rw-r--r--data/schemas/keyboard.jsonschema128
-rw-r--r--data/schemas/keymap.jsonschema4
6 files changed, 159 insertions, 38 deletions
diff --git a/data/mappings/defaults.json b/data/mappings/defaults.json
index c855e64d33..ea9f6972c5 100644
--- a/data/mappings/defaults.json
+++ b/data/mappings/defaults.json
@@ -10,6 +10,12 @@
"bootloader": "atmel-dfu",
"pin_compatible": "promicro"
},
+ "elite_pi": {
+ "processor": "RP2040",
+ "bootloader": "rp2040",
+ "board": "QMK_PM2040",
+ "pin_compatible": "promicro"
+ },
"proton_c": {
"processor": "STM32F303",
"bootloader": "stm32-dfu",
diff --git a/data/mappings/info_config.json b/data/mappings/info_config.json
index 92004dd546..4559423b25 100644
--- a/data/mappings/info_config.json
+++ b/data/mappings/info_config.json
@@ -21,9 +21,7 @@
"COMBO_COUNT": {"info_key": "combo.count", "value_type": "int"},
"COMBO_TERM": {"info_key": "combo.term", "value_type": "int"},
"DEBOUNCE": {"info_key": "debounce", "value_type": "int"},
- "DEVICE_VER": {"info_key": "usb.device_ver", "value_type": "hex"},
- # TODO: Replace ^^^ with vvv
- #"DEVICE_VER": {"info_key": "usb.device_version", "value_type": "bcd_version"},
+ "DEVICE_VER": {"info_key": "usb.device_version", "value_type": "bcd_version"},
"DIODE_DIRECTION": {"info_key": "diode_direction"},
"DOUBLE_TAP_SHIFT_TURNS_ON_CAPS_WORD": {"info_key": "caps_word.double_tap_shift_turns_on", "value_type": "bool"},
"FORCE_NKRO": {"info_key": "usb.force_nkro", "value_type": "bool"},
@@ -41,7 +39,15 @@
"LED_COMPOSE_PIN": {"info_key": "indicators.compose"},
"LED_KANA_PIN": {"info_key": "indicators.kana"},
"LED_PIN_ON_STATE": {"info_key": "indicators.on_state", "value_type": "int"},
- "MANUFACTURER": {"info_key": "manufacturer"},
+ "LED_MATRIX_CENTER": {"info_key": "led_matrix.center_point", "value_type": "array.int"},
+ "LED_MATRIX_MAXIMUM_BRIGHTNESS": {"info_key": "led_matrix.max_brightness", "value_type": "int"},
+ "LED_MATRIX_SPLIT": {"info_key": "led_matrix.split_count", "value_type": "array.int"},
+ "LED_MATRIX_TIMEOUT": {"info_key": "led_matrix.timeout", "value_type": "int"},
+ "LED_MATRIX_HUE_STEP": {"info_key": "led_matrix.hue_steps", "value_type": "int"},
+ "LED_MATRIX_SAT_STEP": {"info_key": "led_matrix.sat_steps", "value_type": "int"},
+ "LED_MATRIX_VAL_STEP": {"info_key": "led_matrix.val_steps", "value_type": "int"},
+ "LED_MATRIX_SPD_STEP": {"info_key": "led_matrix.speed_steps", "value_type": "int"},
+ "MANUFACTURER": {"info_key": "manufacturer", "value_type": "str"},
"MATRIX_HAS_GHOST": {"info_key": "matrix_pins.ghost", "value_type": "bool"},
"MATRIX_IO_DELAY": {"info_key": "matrix_pins.io_delay", "value_type": "int"},
"MOUSEKEY_DELAY": {"info_key": "mousekey.delay", "value_type": "int"},
@@ -53,21 +59,13 @@
"ONESHOT_TAP_TOGGLE": {"info_key": "oneshot.tap_toggle", "value_type": "int"},
"PERMISSIVE_HOLD": {"info_key": "tapping.permissive_hold", "value_type": "bool"},
"PERMISSIVE_HOLD_PER_KEY": {"info_key": "tapping.permissive_hold_per_key", "value_type": "bool"},
+ "PS2_CLOCK_PIN": {"info_key": "ps2.clock_pin"},
+ "PS2_DATA_PIN": {"info_key": "ps2.data_pin"},
"RETRO_TAPPING": {"info_key": "tapping.retro", "value_type": "bool"},
"RETRO_TAPPING_PER_KEY": {"info_key": "tapping.retro_per_key", "value_type": "bool"},
"RGB_DI_PIN": {"info_key": "rgblight.pin"},
"RGBLED_NUM": {"info_key": "rgblight.led_count", "value_type": "int"},
"RGBLED_SPLIT": {"info_key": "rgblight.split_count", "value_type": "array.int"},
- "RGBLIGHT_EFFECT_ALTERNATING": {"info_key": "rgblight.animations.alternating", "value_type": "bool"},
- "RGBLIGHT_EFFECT_BREATHING": {"info_key": "rgblight.animations.breathing", "value_type": "bool"},
- "RGBLIGHT_EFFECT_CHRISTMAS": {"info_key": "rgblight.animations.christmas", "value_type": "bool"},
- "RGBLIGHT_EFFECT_KNIGHT": {"info_key": "rgblight.animations.knight", "value_type": "bool"},
- "RGBLIGHT_EFFECT_RAINBOW_MOOD": {"info_key": "rgblight.animations.rainbow_mood", "value_type": "bool"},
- "RGBLIGHT_EFFECT_RAINBOW_SWIRL": {"info_key": "rgblight.animations.rainbow_swirl", "value_type": "bool"},
- "RGBLIGHT_EFFECT_RGB_TEST": {"info_key": "rgblight.animations.rgb_test", "value_type": "bool"},
- "RGBLIGHT_EFFECT_SNAKE": {"info_key": "rgblight.animations.snake", "value_type": "bool"},
- "RGBLIGHT_EFFECT_STATIC_GRADIENT": {"info_key": "rgblight.animations.static_gradient", "value_type": "bool"},
- "RGBLIGHT_EFFECT_TWINKLE": {"info_key": "rgblight.animations.twinkle"},
"RGBLIGHT_LAYER_BLINK": {"info_key": "rgblight.layers.blink", "value_type": "bool"},
"RGBLIGHT_LAYERS": {"info_key": "rgblight.layers.enabled", "value_type": "bool"},
"RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF": {"info_key": "rgblight.layers.override_rgb", "value_type": "bool"},
@@ -78,8 +76,16 @@
"RGBLIGHT_VAL_STEP": {"info_key": "rgblight.brightness_steps", "value_type": "int"},
"RGBLIGHT_SLEEP": {"info_key": "rgblight.sleep", "value_type": "bool"},
"RGBLIGHT_SPLIT": {"info_key": "rgblight.split", "value_type": "bool"},
+ "RGB_MATRIX_CENTER": {"info_key": "rgb_matrix.center_point", "value_type": "array.int"},
+ "RGB_MATRIX_MAXIMUM_BRIGHTNESS": {"info_key": "rgb_matrix.max_brightness", "value_type": "int"},
+ "RGB_MATRIX_SPLIT": {"info_key": "rgb_matrix.split_count", "value_type": "array.int"},
+ "RGB_MATRIX_TIMEOUT": {"info_key": "rgb_matrix.timeout", "value_type": "int"},
+ "RGB_MATRIX_HUE_STEP": {"info_key": "rgb_matrix.hue_steps", "value_type": "int"},
+ "RGB_MATRIX_SAT_STEP": {"info_key": "rgb_matrix.sat_steps", "value_type": "int"},
+ "RGB_MATRIX_VAL_STEP": {"info_key": "rgb_matrix.val_steps", "value_type": "int"},
+ "RGB_MATRIX_SPD_STEP": {"info_key": "rgb_matrix.speed_steps", "value_type": "int"},
"RGBW": {"info_key": "rgblight.rgbw", "value_type": "bool"},
- "PRODUCT": {"info_key": "keyboard_name", "warn_duplicate": false},
+ "PRODUCT": {"info_key": "keyboard_name", "warn_duplicate": false, "value_type": "str"},
"PRODUCT_ID": {"info_key": "usb.pid", "value_type": "hex"},
"VENDOR_ID": {"info_key": "usb.vid", "value_type": "hex"},
"QMK_ESC_OUTPUT": {"info_key": "qmk_lufa_bootloader.esc_output"},
@@ -95,6 +101,8 @@
"SPLIT_USB_DETECT": {"info_key": "split.usb_detect.enabled", "value_type": "bool"},
"SPLIT_USB_TIMEOUT": {"info_key": "split.usb_detect.timeout", "value_type": "int"},
"SPLIT_USB_TIMEOUT_POLL": {"info_key": "split.usb_detect.polling_interval", "value_type": "int"},
+ "SPLIT_WATCHDOG_ENABLE": {"info_key": "split.transport.watchdog", "value_type": "bool"},
+ "SPLIT_WATCHDOG_TIMEOUT": {"info_key": "split.transport.watchdog_timeout", "value_type": "int"},
"SOFT_SERIAL_PIN": {"info_key": "split.soft_serial_pin"},
"SOFT_SERIAL_SPEED": {"info_key": "split.soft_serial_speed"},
"TAP_CODE_DELAY": {"info_key": "qmk.tap_keycode_delay", "value_type": "int"},
diff --git a/data/mappings/info_rules.json b/data/mappings/info_rules.json
index 7208d6ab94..6bf933bfb8 100644
--- a/data/mappings/info_rules.json
+++ b/data/mappings/info_rules.json
@@ -12,7 +12,7 @@
# replace_with: use with a key marked deprecated or invalid to designate a replacement
"BOARD": {"info_key": "board"},
"BOOTLOADER": {"info_key": "bootloader", "warn_duplicate": false},
- "BLUETOOTH": {"info_key": "bluetooth.driver"},
+ "BLUETOOTH_DRIVER": {"info_key": "bluetooth.driver"},
"CAPS_WORD_ENABLE": {"info_key": "caps_word.enabled", "value_type": "bool"},
"DEBOUNCE_TYPE": {"info_key": "build.debounce_type"},
"ENCODER_ENABLE": {"info_key": "encoder.enabled", "value_type": "bool"},
@@ -33,6 +33,9 @@
"WAIT_FOR_USB": {"info_key": "usb.wait_for", "value_type": "bool"},
"STENO_ENABLE": {"info_key": "stenography.enabled", "value_type": "bool"},
"STENO_PROTOCOL": {"info_key": "stenography.protocol"},
+ "PS2_ENABLE": {"info_key": "ps2.enabled", "value_type": "bool"},
+ "PS2_MOUSE_ENABLE": {"info_key": "ps2.mouse_enabled", "value_type": "bool"},
+ "PS2_DRIVER": {"info_key": "ps2.driver"},
# Items we want flagged in lint
"CTPC": {"info_key": "_deprecated.ctpc", "deprecated": true, "replace_with": "CONVERT_TO=proton_c"},
diff --git a/data/schemas/definitions.jsonschema b/data/schemas/definitions.jsonschema
index 8b68a58482..94a94157c0 100644
--- a/data/schemas/definitions.jsonschema
+++ b/data/schemas/definitions.jsonschema
@@ -68,20 +68,8 @@
"type": "number"
},
"keyboard": {
- "oneOf": [
- {
- "type": "string",
- "enum": [
- "converter/numeric_keypad_IIe",
- "emptystring/NQG",
- "maple_computing/christmas_tree/V2017"
- ]
- },
- {
- "type": "string",
- "pattern": "^[0-9a-z][0-9a-z_/]*$"
- }
- ]
+ "type": "string",
+ "pattern": "^[0-9a-z][0-9a-z_/]*$"
},
"mcu_pin_array": {
"type": "array",
diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema
index 4c785a968a..06ccccc160 100644
--- a/data/schemas/keyboard.jsonschema
+++ b/data/schemas/keyboard.jsonschema
@@ -34,15 +34,66 @@
},
"development_board": {
"type": "string",
- "enum": ["promicro", "elite_c", "proton_c", "kb2040", "promicro_rp2040", "blok", "bit_c_pro", "stemcell", "bluepill", "blackpill_f401", "blackpill_f411", "bonsai_c4"]
+ "enum": ["promicro", "elite_c", "elite_pi", "proton_c", "kb2040", "promicro_rp2040", "blok", "bit_c_pro", "stemcell", "bluepill", "blackpill_f401", "blackpill_f411", "bonsai_c4"]
},
"pin_compatible": {
"type": "string",
- "enum": ["promicro"]
+ "enum": ["promicro", "elite_c"]
},
"processor": {
"type": "string",
- "enum": ["cortex-m0", "cortex-m0plus", "cortex-m3", "cortex-m4", "MKL26Z64", "MK20DX128", "MK20DX256", "MK64FX512", "MK66FX1M0", "RP2040", "STM32F042", "STM32F072", "STM32F103", "STM32F303", "STM32F401", "STM32F405", "STM32F407", "STM32F411", "STM32F446", "STM32G431", "STM32G474", "STM32L412", "STM32L422", "STM32L432", "STM32L433", "STM32L442", "STM32L443", "GD32VF103", "WB32F3G71", "WB32FQ95", "atmega16u2", "atmega32u2", "atmega16u4", "atmega32u4", "at90usb162", "at90usb646", "at90usb647", "at90usb1286", "at90usb1287", "atmega32a", "atmega328p", "atmega328", "attiny85", "unknown"]
+ "enum": [
+ "cortex-m0",
+ "cortex-m0plus",
+ "cortex-m3",
+ "cortex-m4",
+ "cortex-m7",
+ "cortex-m23",
+ "cortex-m33",
+ "cortex-m35p",
+ "cortex-m55",
+ "cortex-m85",
+ "MKL26Z64",
+ "MK20DX128",
+ "MK20DX256",
+ "MK64FX512",
+ "MK66FX1M0",
+ "RP2040",
+ "STM32F042",
+ "STM32F072",
+ "STM32F103",
+ "STM32F303",
+ "STM32F401",
+ "STM32F405",
+ "STM32F407",
+ "STM32F411",
+ "STM32F446",
+ "STM32G431",
+ "STM32G474",
+ "STM32L412",
+ "STM32L422",
+ "STM32L432",
+ "STM32L433",
+ "STM32L442",
+ "STM32L443",
+ "GD32VF103",
+ "WB32F3G71",
+ "WB32FQ95",
+ "atmega16u2",
+ "atmega32u2",
+ "atmega16u4",
+ "atmega32u4",
+ "at90usb162",
+ "at90usb646",
+ "at90usb647",
+ "at90usb1286",
+ "at90usb1287",
+ "atmega32a",
+ "atmega328p",
+ "atmega328",
+ "attiny85",
+ "unknown"
+ ]
},
"audio": {
"type": "object",
@@ -75,8 +126,7 @@
"driver": {
"type": "string",
"enum": ["BluefruitLE", "RN42"]
- },
- "lto": {"type": "boolean"}
+ }
}
},
"board": {
@@ -89,7 +139,6 @@
"enum": [
"atmel-dfu",
"bootloadhid",
- "bootloadHID",
"caterina",
"custom",
"gd32v-dfu",
@@ -106,7 +155,6 @@
"tinyuf2",
"unknown",
"usbasploader",
- "USBasp",
"wb32-dfu"
]
},
@@ -267,7 +315,31 @@
"led_matrix": {
"type": "object",
"properties": {
+ "animations": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "boolean"
+ }
+ },
"driver": {"type": "string"},
+ "center_point": {
+ "type": "array",
+ "minItems": 2,
+ "maxItems": 2,
+ "items": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
+ },
+ "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
+ "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
+ "hue_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
+ "sat_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
+ "val_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
+ "speed_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
+ "split_count": {
+ "type": "array",
+ "minItems": 2,
+ "maxItems": 2,
+ "items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
+ },
"layout": {
"type": "array",
"items": {
@@ -294,7 +366,31 @@
"rgb_matrix": {
"type": "object",
"properties": {
+ "animations": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "boolean"
+ }
+ },
"driver": {"type": "string"},
+ "center_point": {
+ "type": "array",
+ "minItems": 2,
+ "maxItems": 2,
+ "items": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
+ },
+ "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
+ "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
+ "hue_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
+ "sat_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
+ "val_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
+ "speed_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
+ "split_count": {
+ "type": "array",
+ "minItems": 2,
+ "maxItems": 2,
+ "items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
+ },
"layout": {
"type": "array",
"items": {
@@ -393,6 +489,20 @@
}
}
},
+ "ps2": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "enabled": {"type": "boolean"},
+ "mouse_enabled": {"type": "boolean"},
+ "clock_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
+ "data_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
+ "driver": {
+ "type": "string",
+ "enum": ["busywait", "interrupt", "usart", "vendor"]
+ }
+ }
+ },
"split": {
"type": "object",
"additionalProperties": false,
@@ -449,7 +559,9 @@
"enum": ["custom", "i2c", "serial", "serial_usart"]
},
"sync_matrix_state": {"type": "boolean"},
- "sync_modifiers": {"type": "boolean"}
+ "sync_modifiers": {"type": "boolean"},
+ "watchdog": {"type": "boolean"},
+ "watchdog_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
}
},
"usb_detect": {
diff --git a/data/schemas/keymap.jsonschema b/data/schemas/keymap.jsonschema
index 0a4fb5d453..1b8d01bcc6 100644
--- a/data/schemas/keymap.jsonschema
+++ b/data/schemas/keymap.jsonschema
@@ -5,6 +5,10 @@
"type": "object",
"properties": {
"author": {"type": "string"},
+ "converter": {
+ "type": "string",
+ "enum": ["elite_pi", "proton_c", "kb2040", "promicro_rp2040", "blok", "bit_c_pro", "stemcell", "bonsai_c4"]
+ },
"host_language": {"$ref": "qmk.definitions.v1#/text_identifier"},
"keyboard": {"$ref": "qmk.definitions.v1#/text_identifier"},
"keymap": {"$ref": "qmk.definitions.v1#/text_identifier"},