You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

888 lines
35 KiB

Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
Add a lot more data to info.json (#13366) * add some split data to info.json * add tags * add half of config_options.md to info.json * add support for designating master split * sort out split transport and primary * fix bad data in UNUSED_PINS * fixup custom transport * wip * allow for setting split right half keyboard matrix * add SPLIT_USB_DETECT * minor cleanup * fix an erroneous message * rework split.usb_detect * adding missing rgblight vars to info.json * add mouse_key to info.json * add all remaining options from docs/config_options.md * fix audio voices * qmk info: Change text output to use dotted notation * tweak layout output * resolve alias names * break out some functions to make flake8 happy * add a field for bootloader instructions * qmk generate-info-json: add a write-to-file argument Adds an argument that instructs qmk generate-info-json to write the output to a file instead of just to the terminal. * -arg_only, +action Because it was never my intention that one would have to specify a value for the argument that enables writing the file. * Bring qmk generate-info-json inline with other generate commands * pytest fixup * fix esca/getawayvan * fix data driven errors for bpiphany converters * features.force_nkro -> usb.force_nkro * split.primary->split.main * fix esca/getawayvan_f042 * fix the bpiphany converters for real * fix bpiphany/tiger_lily * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * fix generate-api errors * fix matrix pin extraction for split boards * fix ploopyco/trackball_nano/rev1_001 Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2 years ago
  1. {
  2. "$schema": "https://json-schema.org/draft/2020-12/schema#",
  3. "$id": "qmk.keyboard.v1",
  4. "title": "Keyboard Information",
  5. "definitions": {
  6. "encoder_config": {
  7. "type": "object",
  8. "properties": {
  9. "rotary": {
  10. "type": "array",
  11. "items": {
  12. "type": "object",
  13. "additionalProperties": false,
  14. "required": ["pin_a", "pin_b"],
  15. "properties": {
  16. "pin_a": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  17. "pin_b": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  18. "resolution": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  19. }
  20. }
  21. }
  22. }
  23. },
  24. "dip_switch_config": {
  25. "type": "object",
  26. "properties": {
  27. "pins": {
  28. "$ref": "qmk.definitions.v1#/mcu_pin_array"
  29. }
  30. }
  31. },
  32. },
  33. "type": "object",
  34. "not": { "required": [ "vendorId", "productId" ] }, // reject via keys...
  35. "properties": {
  36. "keyboard_name": {"$ref": "qmk.definitions.v1#/text_identifier"},
  37. "keyboard_folder": {"$ref": "qmk.definitions.v1#/keyboard"},
  38. "maintainer": {"$ref": "qmk.definitions.v1#/text_identifier"},
  39. "manufacturer": {"$ref": "qmk.definitions.v1#/text_identifier"},
  40. "url": {
  41. "type": "string",
  42. "format": "uri"
  43. },
  44. "development_board": {
  45. "type": "string",
  46. "enum": ["promicro", "elite_c", "elite_pi", "proton_c", "kb2040", "promicro_rp2040", "blok", "michi", "bit_c_pro", "stemcell", "bluepill", "blackpill_f401", "blackpill_f411", "bonsai_c4", "helios", "liatris", "imera"]
  47. },
  48. "pin_compatible": {
  49. "type": "string",
  50. "enum": ["promicro", "elite_c"]
  51. },
  52. "processor": {
  53. "type": "string",
  54. "enum": [
  55. "cortex-m0",
  56. "cortex-m0plus",
  57. "cortex-m3",
  58. "cortex-m4",
  59. "cortex-m7",
  60. "cortex-m23",
  61. "cortex-m33",
  62. "cortex-m35p",
  63. "cortex-m55",
  64. "cortex-m85",
  65. "MKL26Z64",
  66. "MK20DX128",
  67. "MK20DX256",
  68. "MK64FX512",
  69. "MK66FX1M0",
  70. "RP2040",
  71. "STM32F042",
  72. "STM32F072",
  73. "STM32F103",
  74. "STM32F303",
  75. "STM32F401",
  76. "STM32F405",
  77. "STM32F407",
  78. "STM32F411",
  79. "STM32F446",
  80. "STM32G431",
  81. "STM32G474",
  82. "STM32H723",
  83. "STM32H733",
  84. "STM32L412",
  85. "STM32L422",
  86. "STM32L432",
  87. "STM32L433",
  88. "STM32L442",
  89. "STM32L443",
  90. "GD32VF103",
  91. "WB32F3G71",
  92. "WB32FQ95",
  93. "atmega16u2",
  94. "atmega32u2",
  95. "atmega16u4",
  96. "atmega32u4",
  97. "at90usb162",
  98. "at90usb646",
  99. "at90usb647",
  100. "at90usb1286",
  101. "at90usb1287",
  102. "atmega32a",
  103. "atmega328p",
  104. "atmega328",
  105. "attiny85",
  106. "unknown"
  107. ]
  108. },
  109. "apa102": {
  110. "type": "object",
  111. "additionalProperties": false,
  112. "properties": {
  113. "data_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  114. "clock_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  115. "default_brightness": {
  116. "type": "integer",
  117. "minimum": 0,
  118. "maximum": 31
  119. }
  120. }
  121. },
  122. "audio": {
  123. "type": "object",
  124. "additionalProperties": false,
  125. "properties": {
  126. "macro_beep": {"type": "boolean"},
  127. "pins": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  128. "voices": {"type": "boolean"}
  129. }
  130. },
  131. "backlight": {
  132. "type": "object",
  133. "additionalProperties": false,
  134. "properties": {
  135. "driver": {
  136. "type": "string",
  137. "enum": ["pwm", "software", "timer", "custom"]
  138. },
  139. "default": {
  140. "type": "object",
  141. "additionalProperties": false,
  142. "properties": {
  143. "on": {"type": "boolean"},
  144. "breathing": {"type": "boolean"},
  145. "brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  146. }
  147. },
  148. "breathing": {"type": "boolean"},
  149. "breathing_period": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  150. "levels": {
  151. "type": "integer",
  152. "minimum": 1,
  153. "maximum": 31
  154. },
  155. "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  156. "pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  157. "pins": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  158. "on_state": {"$ref": "qmk.definitions.v1#/bit"},
  159. "as_caps_lock": {"type": "boolean"}
  160. }
  161. },
  162. "bluetooth": {
  163. "type": "object",
  164. "additionalProperties": false,
  165. "properties": {
  166. "driver": {
  167. "type": "string",
  168. "enum": ["bluefruit_le", "custom", "rn42"]
  169. }
  170. }
  171. },
  172. "bootmagic":{
  173. "type": "object",
  174. "additionalProperties": false,
  175. "properties": {
  176. "enabled": {"type": "boolean"},
  177. "matrix": {
  178. "type": "array",
  179. "minItems": 2,
  180. "maxItems": 2,
  181. "items": {
  182. "type": "integer",
  183. "minimum": 0
  184. }
  185. }
  186. }
  187. },
  188. "board": {
  189. "type": "string",
  190. "minLength": 2,
  191. "pattern": "^[a-zA-Z_][0-9a-zA-Z_]*$"
  192. },
  193. "bootloader": {
  194. "type": "string",
  195. "enum": [
  196. "apm32-dfu",
  197. "atmel-dfu",
  198. "bootloadhid",
  199. "caterina",
  200. "custom",
  201. "gd32v-dfu",
  202. "halfkay",
  203. "kiibohd",
  204. "lufa-dfu",
  205. "lufa-ms",
  206. "md-boot",
  207. "qmk-dfu",
  208. "qmk-hid",
  209. "rp2040",
  210. "stm32-dfu",
  211. "stm32duino",
  212. "tinyuf2",
  213. "uf2boot",
  214. "unknown",
  215. "usbasploader",
  216. "wb32-dfu"
  217. ]
  218. },
  219. "bootloader_instructions": {
  220. "type": "string",
  221. "description": "Instructions for putting the keyboard into a mode that allows for firmware flashing."
  222. },
  223. "build": {
  224. "type": "object",
  225. "additionalProperties": false,
  226. "properties": {
  227. "debounce_type": {
  228. "type": "string",
  229. "enum": ["asym_eager_defer_pk", "custom", "sym_defer_g", "sym_defer_pk", "sym_defer_pr", "sym_eager_pk", "sym_eager_pr"]
  230. },
  231. "firmware_format": {
  232. "type": "string",
  233. "enum": ["bin", "hex", "uf2"]
  234. },
  235. "lto": {"type": "boolean"}
  236. }
  237. },
  238. "diode_direction": {
  239. "type": "string",
  240. "enum": ["COL2ROW", "ROW2COL"]
  241. },
  242. "debounce": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  243. "caps_word": {
  244. "type": "object",
  245. "additionalProperties": false,
  246. "properties": {
  247. "enabled": {"type": "boolean"},
  248. "both_shifts_turns_on": {"type": "boolean"},
  249. "double_tap_shift_turns_on": {"type": "boolean"},
  250. "idle_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  251. "invert_on_shift": {"type": "boolean"}
  252. }
  253. },
  254. "combo": {
  255. "type": "object",
  256. "properties": {
  257. "count": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  258. "term": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  259. }
  260. },
  261. "community_layouts": {
  262. "type": "array",
  263. "items": {"$ref": "qmk.definitions.v1#/filename"}
  264. },
  265. "dip_switch": {
  266. "$ref": "#/definitions/dip_switch_config",
  267. "properties": {
  268. "enabled": {"type": "boolean"},
  269. "matrix_grid": {
  270. "type": "array",
  271. "minItems": 1,
  272. "items": {
  273. "type": "array",
  274. "minItems": 2,
  275. "maxItems": 2,
  276. "items": {
  277. "type": "integer",
  278. "minimum": 0
  279. }
  280. }
  281. }
  282. }
  283. },
  284. "eeprom": {
  285. "properties": {
  286. "driver": {"type": "string"},
  287. "wear_leveling": {
  288. "type": "object",
  289. "additionalProperties": false,
  290. "properties": {
  291. "driver": {
  292. "type": "string",
  293. "enum": ["custom", "embedded_flash", "legacy", "rp2040_flash", "spi_flash"]
  294. },
  295. "backing_size": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  296. "logical_size": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  297. }
  298. }
  299. }
  300. },
  301. "encoder": {
  302. "$ref": "#/definitions/encoder_config",
  303. "properties": {
  304. "enabled": {"type": "boolean"}
  305. }
  306. },
  307. "features": {
  308. "$ref": "qmk.definitions.v1#/boolean_array",
  309. "propertyNames": { "$ref": "qmk.definitions.v1#/snake_case" }
  310. },
  311. "indicators": {
  312. "type": "object",
  313. "properties": {
  314. "caps_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  315. "num_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  316. "scroll_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  317. "compose": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  318. "kana": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  319. "on_state": {"$ref": "qmk.definitions.v1#/bit"}
  320. }
  321. },
  322. "keycodes": {"$ref": "qmk.definitions.v1#/keycode_decl_array"},
  323. "layout_aliases": {
  324. "type": "object",
  325. "additionalProperties": {"$ref": "qmk.definitions.v1#/layout_macro"}
  326. },
  327. "layouts": {
  328. "type": "object",
  329. "propertyNames": {"$ref": "qmk.definitions.v1#/layout_macro"},
  330. "additionalProperties": {
  331. "type": "object",
  332. "additionalProperties": false,
  333. "properties": {
  334. "filename": {
  335. "type": "string"
  336. },
  337. "c_macro": {
  338. "type": "boolean"
  339. },
  340. "json_layout": {
  341. "type": "boolean"
  342. },
  343. "layout": {
  344. "type": "array",
  345. "items": {
  346. "type": "object",
  347. "additionalProperties": false,
  348. "required": ["x", "y"],
  349. "properties": {
  350. "encoder": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  351. "label": {
  352. "type": "string",
  353. "pattern": "^[^\\n]*$"
  354. },
  355. "matrix": {
  356. "type": "array",
  357. "minItems": 2,
  358. "maxItems": 2,
  359. "items": {
  360. "type": "integer",
  361. "minimum": 0
  362. }
  363. },
  364. "r": {"$ref": "qmk.definitions.v1#/signed_decimal"},
  365. "rx": {"$ref": "qmk.definitions.v1#/unsigned_decimal"},
  366. "ry": {"$ref": "qmk.definitions.v1#/unsigned_decimal"},
  367. "h": {"$ref": "qmk.definitions.v1#/key_unit"},
  368. "w": {"$ref": "qmk.definitions.v1#/key_unit"},
  369. "x": {"$ref": "qmk.definitions.v1#/key_unit"},
  370. "y": {"$ref": "qmk.definitions.v1#/key_unit"}
  371. }
  372. }
  373. }
  374. }
  375. }
  376. },
  377. "leader_key": {
  378. "type": "object",
  379. "properties": {
  380. "timing": {"type": "boolean"},
  381. "strict_processing": {"type": "boolean"},
  382. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  383. }
  384. },
  385. "matrix_pins": {
  386. "type": "object",
  387. "additionalProperties": false,
  388. "properties": {
  389. "custom": {"type": "boolean"},
  390. "custom_lite": {"type": "boolean"},
  391. "ghost": {"type": "boolean"},
  392. "input_pressed_state": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  393. "io_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  394. "direct": {
  395. "type": "array",
  396. "items": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  397. },
  398. "cols": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  399. "rows": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  400. }
  401. },
  402. "mouse_key": {
  403. "type": "object",
  404. "properties": {
  405. "enabled": {"type": "boolean"},
  406. "delay": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  407. "interval": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  408. "max_speed": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  409. "time_to_max": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  410. "wheel_delay": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  411. }
  412. },
  413. "oneshot": {
  414. "type": "object",
  415. "properties": {
  416. "tap_toggle": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  417. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  418. }
  419. },
  420. "led_matrix": {
  421. "type": "object",
  422. "properties": {
  423. "animations": {
  424. "type": "object",
  425. "propertyNames": { "$ref": "qmk.definitions.v1#/snake_case" }
  426. "additionalProperties": {
  427. "type": "boolean"
  428. }
  429. },
  430. "default": {
  431. "type": "object",
  432. "additionalProperties": false,
  433. "properties": {
  434. "on": {"type": "boolean"},
  435. "animation": {"type": "string"},
  436. "val": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  437. "speed": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  438. }
  439. },
  440. "driver": {"type": "string"},
  441. "center_point": {
  442. "type": "array",
  443. "minItems": 2,
  444. "maxItems": 2,
  445. "items": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  446. },
  447. "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  448. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  449. "val_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  450. "speed_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  451. "led_flush_limit": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  452. "led_process_limit": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  453. "react_on_keyup": {"type": "boolean"},
  454. "sleep": {"type": "boolean"},
  455. "split_count": {
  456. "type": "array",
  457. "minItems": 2,
  458. "maxItems": 2,
  459. "items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  460. },
  461. "layout": {
  462. "type": "array",
  463. "items": {
  464. "type": "object",
  465. "additionalProperties": false,
  466. "properties": {
  467. "matrix": {
  468. "type": "array",
  469. "minItems": 2,
  470. "maxItems": 2,
  471. "items": {
  472. "type": "integer",
  473. "minimum": 0
  474. }
  475. },
  476. "x": {"$ref": "qmk.definitions.v1#/key_unit"},
  477. "y": {"$ref": "qmk.definitions.v1#/key_unit"},
  478. "flags": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  479. }
  480. }
  481. }
  482. }
  483. },
  484. "rgb_matrix": {
  485. "type": "object",
  486. "properties": {
  487. "animations": {
  488. "type": "object",
  489. "propertyNames": { "$ref": "qmk.definitions.v1#/snake_case" }
  490. "additionalProperties": {
  491. "type": "boolean"
  492. }
  493. },
  494. "default": {
  495. "type": "object",
  496. "additionalProperties": false,
  497. "properties": {
  498. "on": {"type": "boolean"},
  499. "animation": {"type": "string"},
  500. "hue": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  501. "sat": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  502. "val": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  503. "speed": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  504. }
  505. },
  506. "driver": {"type": "string"},
  507. "center_point": {
  508. "type": "array",
  509. "minItems": 2,
  510. "maxItems": 2,
  511. "items": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  512. },
  513. "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  514. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  515. "hue_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  516. "sat_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  517. "val_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  518. "speed_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  519. "led_flush_limit": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  520. "led_process_limit": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  521. "react_on_keyup": {"type": "boolean"},
  522. "sleep": {"type": "boolean"},
  523. "split_count": {
  524. "type": "array",
  525. "minItems": 2,
  526. "maxItems": 2,
  527. "items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  528. },
  529. "layout": {
  530. "type": "array",
  531. "items": {
  532. "type": "object",
  533. "additionalProperties": false,
  534. "properties": {
  535. "matrix": {
  536. "type": "array",
  537. "minItems": 2,
  538. "maxItems": 2,
  539. "items": {
  540. "type": "integer",
  541. "minimum": 0
  542. }
  543. },
  544. "x": {"$ref": "qmk.definitions.v1#/key_unit"},
  545. "y": {"$ref": "qmk.definitions.v1#/key_unit"},
  546. "flags": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  547. }
  548. }
  549. }
  550. }
  551. },
  552. "rgblight": {
  553. "type": "object",
  554. "additionalProperties": false,
  555. "properties": {
  556. "animations": {
  557. "type": "object",
  558. "propertyNames": { "$ref": "qmk.definitions.v1#/snake_case" }
  559. "additionalProperties": {
  560. "type": "boolean"
  561. }
  562. },
  563. "brightness_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  564. "default": {
  565. "type": "object",
  566. "additionalProperties": false,
  567. "properties": {
  568. "on": {"type": "boolean"},
  569. "animation": {"type": "string"},
  570. "hue": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  571. "sat": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  572. "val": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  573. "speed": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  574. }
  575. },
  576. "driver": {
  577. "type": "string",
  578. "enum": ["apa102", "custom", "ws2812"]
  579. },
  580. "hue_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  581. "layers": {
  582. "type": "object",
  583. "additionalProperties": false,
  584. "properties": {
  585. "blink": {"type": "boolean"},
  586. "enabled": {"type": "boolean"},
  587. "max": {
  588. "type": "integer",
  589. "minimum": 1,
  590. "maximum": 32
  591. },
  592. "override_rgb": {"type": "boolean"}
  593. }
  594. },
  595. "led_count": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  596. "led_map": {
  597. "type": "array",
  598. "minItems": 2,
  599. "items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  600. },
  601. "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  602. "pin": {
  603. "$ref": "qmk.definitions.v1#/mcu_pin",
  604. "$comment": "Deprecated: use ws2812.pin instead"
  605. },
  606. "rgbw": {"type": "boolean"},
  607. "saturation_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  608. "sleep": {"type": "boolean"},
  609. "split": {"type": "boolean"},
  610. "split_count": {
  611. "type": "array",
  612. "minItems": 2,
  613. "maxItems": 2,
  614. "items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  615. }
  616. }
  617. },
  618. "secure": {
  619. "type": "object",
  620. "additionalProperties": false,
  621. "properties": {
  622. "enabled": {"type": "boolean"},
  623. "unlock_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  624. "idle_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  625. "unlock_sequence": {
  626. "type": "array",
  627. "minItems": 1,
  628. "maxItems": 5,
  629. "items": {
  630. "type": "array",
  631. "minItems": 2,
  632. "maxItems": 2,
  633. "items": {
  634. "type": "integer",
  635. "minimum": 0
  636. }
  637. }
  638. }
  639. }
  640. },
  641. "stenography": {
  642. "type": "object",
  643. "additionalProperties": false,
  644. "properties": {
  645. "enabled": {"type": "boolean"},
  646. "protocol": {
  647. "type": "string",
  648. "enum": ["all", "geminipr", "txbolt"]
  649. }
  650. }
  651. },
  652. "ps2": {
  653. "type": "object",
  654. "additionalProperties": false,
  655. "properties": {
  656. "enabled": {"type": "boolean"},
  657. "mouse_enabled": {"type": "boolean"},
  658. "clock_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  659. "data_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  660. "driver": {
  661. "type": "string",
  662. "enum": ["busywait", "interrupt", "usart", "vendor"]
  663. }
  664. }
  665. },
  666. "split": {
  667. "type": "object",
  668. "additionalProperties": false,
  669. "properties": {
  670. "enabled": {"type": "boolean"},
  671. "bootmagic":{
  672. "type": "object",
  673. "additionalProperties": false,
  674. "properties": {
  675. "matrix": {
  676. "type": "array",
  677. "minItems": 2,
  678. "maxItems": 2,
  679. "items": {
  680. "type": "integer",
  681. "minimum": 0
  682. }
  683. }
  684. }
  685. },
  686. "matrix_pins": {
  687. "type": "object",
  688. "additionalProperties": false,
  689. "properties": {
  690. "right": {
  691. "type": "object",
  692. "additionalProperties": false,
  693. "properties": {
  694. "direct": {
  695. "type": "array",
  696. "items": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  697. },
  698. "cols": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  699. "rows": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  700. "unused": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  701. }
  702. }
  703. }
  704. },
  705. "dip_switch": {
  706. "type": "object",
  707. "additionalProperties": false,
  708. "properties": {
  709. "right": {
  710. "$ref": "#/definitions/dip_switch_config"
  711. }
  712. }
  713. },
  714. "encoder": {
  715. "type": "object",
  716. "additionalProperties": false,
  717. "properties": {
  718. "right": {
  719. "$ref": "#/definitions/encoder_config"
  720. }
  721. }
  722. },
  723. "handedness": {
  724. "type": "object",
  725. "additionalProperties": false,
  726. "properties": {
  727. "pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  728. "matrix_grid": {
  729. "$ref": "qmk.definitions.v1#/mcu_pin_array",
  730. "minItems": 2,
  731. "maxItems": 2
  732. }
  733. }
  734. },
  735. "soft_serial_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  736. "soft_serial_speed": {
  737. "type": "integer",
  738. "minimum": 0,
  739. "maximum": 5
  740. },
  741. "transport": {
  742. "type": "object",
  743. "additionalProperties": false,
  744. "properties": {
  745. "protocol": {
  746. "type": "string",
  747. "enum": ["custom", "i2c", "serial", "serial_usart"]
  748. },
  749. "sync": {
  750. "type": "object",
  751. "additionalProperties": false,
  752. "properties": {
  753. "activity": {"type": "boolean"},
  754. "detected_os": {"type": "boolean"},
  755. "haptic": {"type": "boolean"},
  756. "layer_state": {"type": "boolean"},
  757. "indicators": {"type": "boolean"},
  758. "matrix_state": {"type": "boolean"},
  759. "modifiers": {"type": "boolean"},
  760. "oled": {"type": "boolean"},
  761. "st7565": {"type": "boolean"},
  762. "wpm": {"type": "boolean"}
  763. }
  764. }
  765. "watchdog": {"type": "boolean"},
  766. "watchdog_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  767. "sync_matrix_state": {
  768. "type": "boolean",
  769. "$comment": "Deprecated: use sync.matrix_state instead"
  770. },
  771. "sync_modifiers": {
  772. "type": "boolean",
  773. "$comment": "Deprecated: use sync.modifiers instead"
  774. }
  775. }
  776. },
  777. "usb_detect": {
  778. "type": "object",
  779. "additionalProperties": false,
  780. "properties": {
  781. "enabled": {"type": "boolean"},
  782. "polling_interval": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  783. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  784. }
  785. },
  786. "main": {
  787. "type": "string",
  788. "enum": ["eeprom", "left", "matrix_grid", "pin", "right"],
  789. "$comment": "Deprecated: use config.h options for now"
  790. },
  791. "matrix_grid": {
  792. "type": "array",
  793. "items": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  794. "$comment": "Deprecated: use split.handedness.matrix_grid instead"
  795. }
  796. }
  797. },
  798. "tags": {
  799. "type": "array",
  800. "items": {"type": "string"}
  801. },
  802. "tapping": {
  803. "type": "object",
  804. "properties": {
  805. "force_hold": {"type": "boolean"},
  806. "force_hold_per_key": {"type": "boolean"},
  807. "ignore_mod_tap_interrupt": {"type": "boolean"},
  808. "hold_on_other_key_press": {"type": "boolean"},
  809. "hold_on_other_key_press_per_key": {"type": "boolean"},
  810. "permissive_hold": {"type": "boolean"},
  811. "permissive_hold_per_key": {"type": "boolean"},
  812. "retro": {"type": "boolean"},
  813. "retro_per_key": {"type": "boolean"},
  814. "term": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  815. "term_per_key": {"type": "boolean"},
  816. "toggle": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  817. }
  818. },
  819. "usb": {
  820. "type": "object",
  821. "additionalProperties": false,
  822. "properties": {
  823. "device_ver": {
  824. "$ref": "qmk.definitions.v1#/hex_number_4d",
  825. "$comment": "Deprecated: use device_version instead"
  826. },
  827. "device_version": {"$ref": "qmk.definitions.v1#/bcd_version"},
  828. "force_nkro": {"type": "boolean"},
  829. "pid": {"$ref": "qmk.definitions.v1#/hex_number_4d"},
  830. "vid": {"$ref": "qmk.definitions.v1#/hex_number_4d"},
  831. "max_power": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  832. "no_startup_check": {"type": "boolean"},
  833. "polling_interval": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  834. "shared_endpoint": {
  835. "type": "object",
  836. "additionalProperties": false,
  837. "properties": {
  838. "keyboard": {"type": "boolean"},
  839. "mouse": {"type": "boolean"}
  840. }
  841. },
  842. "suspend_wakeup_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  843. "wait_for": {"type": "boolean"}
  844. }
  845. },
  846. "qmk": {
  847. "type": "object",
  848. "additionalProperties": false,
  849. "properties": {
  850. "keys_per_scan": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  851. "tap_keycode_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  852. "tap_capslock_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  853. "locking": {
  854. "type": "object",
  855. "additionalProperties": false,
  856. "properties": {
  857. "enabled": {"type": "boolean"},
  858. "resync": {"type": "boolean"}
  859. }
  860. }
  861. }
  862. },
  863. "qmk_lufa_bootloader": {
  864. "type": "object",
  865. "additionalProperties": false,
  866. "properties": {
  867. "esc_output": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  868. "esc_input": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  869. "led": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  870. "speaker": {"$ref": "qmk.definitions.v1#/mcu_pin"}
  871. }
  872. },
  873. "ws2812": {
  874. "type": "object",
  875. "additionalProperties": false,
  876. "properties": {
  877. "driver": {
  878. "type": "string",
  879. "enum": ["bitbang", "custom", "i2c", "pwm", "spi", "vendor"]
  880. },
  881. "pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  882. "i2c_address": {"$ref": "qmk.definitions.v1#/hex_number_2d"},
  883. "i2c_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  884. }
  885. }
  886. }
  887. }