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.

831 lines
32 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"]
  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. "breathing": {"type": "boolean"},
  140. "breathing_period": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  141. "levels": {
  142. "type": "integer",
  143. "minimum": 1,
  144. "maximum": 31
  145. },
  146. "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  147. "pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  148. "pins": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  149. "on_state": {"$ref": "qmk.definitions.v1#/bit"},
  150. "as_caps_lock": {"type": "boolean"}
  151. }
  152. },
  153. "bluetooth": {
  154. "type": "object",
  155. "additionalProperties": false,
  156. "properties": {
  157. "driver": {
  158. "type": "string",
  159. "enum": ["bluefruit_le", "custom", "rn42"]
  160. }
  161. }
  162. },
  163. "bootmagic":{
  164. "type": "object",
  165. "additionalProperties": false,
  166. "properties": {
  167. "enabled": {"type": "boolean"},
  168. "matrix": {
  169. "type": "array",
  170. "minItems": 2,
  171. "maxItems": 2,
  172. "items": {
  173. "type": "integer",
  174. "minimum": 0
  175. }
  176. }
  177. }
  178. },
  179. "board": {
  180. "type": "string",
  181. "minLength": 2,
  182. "pattern": "^[a-zA-Z_][0-9a-zA-Z_]*$"
  183. },
  184. "bootloader": {
  185. "type": "string",
  186. "enum": [
  187. "apm32-dfu",
  188. "atmel-dfu",
  189. "bootloadhid",
  190. "caterina",
  191. "custom",
  192. "gd32v-dfu",
  193. "halfkay",
  194. "kiibohd",
  195. "lufa-dfu",
  196. "lufa-ms",
  197. "md-boot",
  198. "qmk-dfu",
  199. "qmk-hid",
  200. "rp2040",
  201. "stm32-dfu",
  202. "stm32duino",
  203. "tinyuf2",
  204. "uf2boot",
  205. "unknown",
  206. "usbasploader",
  207. "wb32-dfu"
  208. ]
  209. },
  210. "bootloader_instructions": {
  211. "type": "string",
  212. "description": "Instructions for putting the keyboard into a mode that allows for firmware flashing."
  213. },
  214. "build": {
  215. "type": "object",
  216. "additionalProperties": false,
  217. "properties": {
  218. "debounce_type": {
  219. "type": "string",
  220. "enum": ["asym_eager_defer_pk", "custom", "sym_defer_g", "sym_defer_pk", "sym_defer_pr", "sym_eager_pk", "sym_eager_pr"]
  221. },
  222. "firmware_format": {
  223. "type": "string",
  224. "enum": ["bin", "hex", "uf2"]
  225. },
  226. "lto": {"type": "boolean"}
  227. }
  228. },
  229. "diode_direction": {
  230. "type": "string",
  231. "enum": ["COL2ROW", "ROW2COL"]
  232. },
  233. "debounce": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  234. "caps_word": {
  235. "type": "object",
  236. "additionalProperties": false,
  237. "properties": {
  238. "enabled": {"type": "boolean"},
  239. "both_shifts_turns_on": {"type": "boolean"},
  240. "double_tap_shift_turns_on": {"type": "boolean"},
  241. "idle_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  242. "invert_on_shift": {"type": "boolean"}
  243. }
  244. },
  245. "combo": {
  246. "type": "object",
  247. "properties": {
  248. "count": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  249. "term": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  250. }
  251. },
  252. "community_layouts": {
  253. "type": "array",
  254. "items": {"$ref": "qmk.definitions.v1#/filename"}
  255. },
  256. "dip_switch": {
  257. "$ref": "#/definitions/dip_switch_config",
  258. "properties": {
  259. "enabled": {"type": "boolean"},
  260. "matrix_grid": {
  261. "type": "array",
  262. "minItems": 1,
  263. "items": {
  264. "type": "array",
  265. "minItems": 2,
  266. "maxItems": 2,
  267. "items": {
  268. "type": "integer",
  269. "minimum": 0
  270. }
  271. }
  272. }
  273. }
  274. },
  275. "eeprom": {
  276. "properties": {
  277. "driver": {"type": "string"},
  278. "wear_leveling": {
  279. "type": "object",
  280. "additionalProperties": false,
  281. "properties": {
  282. "driver": {
  283. "type": "string",
  284. "enum": ["custom", "embedded_flash", "legacy", "rp2040_flash", "spi_flash"]
  285. },
  286. "backing_size": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  287. "logical_size": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  288. }
  289. }
  290. }
  291. },
  292. "encoder": {
  293. "$ref": "#/definitions/encoder_config",
  294. "properties": {
  295. "enabled": {"type": "boolean"}
  296. }
  297. },
  298. "features": {
  299. "$ref": "qmk.definitions.v1#/boolean_array",
  300. "propertyNames": { "$ref": "qmk.definitions.v1#/snake_case" }
  301. },
  302. "indicators": {
  303. "type": "object",
  304. "properties": {
  305. "caps_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  306. "num_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  307. "scroll_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  308. "compose": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  309. "kana": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  310. "on_state": {"$ref": "qmk.definitions.v1#/bit"}
  311. }
  312. },
  313. "keycodes": {"$ref": "qmk.definitions.v1#/keycode_decl_array"},
  314. "layout_aliases": {
  315. "type": "object",
  316. "additionalProperties": {"$ref": "qmk.definitions.v1#/layout_macro"}
  317. },
  318. "layouts": {
  319. "type": "object",
  320. "propertyNames": {"$ref": "qmk.definitions.v1#/layout_macro"},
  321. "additionalProperties": {
  322. "type": "object",
  323. "additionalProperties": false,
  324. "properties": {
  325. "filename": {
  326. "type": "string"
  327. },
  328. "c_macro": {
  329. "type": "boolean"
  330. },
  331. "json_layout": {
  332. "type": "boolean"
  333. },
  334. "layout": {
  335. "type": "array",
  336. "items": {
  337. "type": "object",
  338. "additionalProperties": false,
  339. "required": ["x", "y"],
  340. "properties": {
  341. "label": {
  342. "type": "string",
  343. "pattern": "^[^\\n]*$"
  344. },
  345. "matrix": {
  346. "type": "array",
  347. "minItems": 2,
  348. "maxItems": 2,
  349. "items": {
  350. "type": "integer",
  351. "minimum": 0
  352. }
  353. },
  354. "r": {"$ref": "qmk.definitions.v1#/signed_decimal"},
  355. "rx": {"$ref": "qmk.definitions.v1#/unsigned_decimal"},
  356. "ry": {"$ref": "qmk.definitions.v1#/unsigned_decimal"},
  357. "h": {"$ref": "qmk.definitions.v1#/key_unit"},
  358. "w": {"$ref": "qmk.definitions.v1#/key_unit"},
  359. "x": {"$ref": "qmk.definitions.v1#/key_unit"},
  360. "y": {"$ref": "qmk.definitions.v1#/key_unit"}
  361. }
  362. }
  363. }
  364. }
  365. }
  366. },
  367. "leader_key": {
  368. "type": "object",
  369. "properties": {
  370. "timing": {"type": "boolean"},
  371. "strict_processing": {"type": "boolean"},
  372. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  373. }
  374. },
  375. "matrix_pins": {
  376. "type": "object",
  377. "additionalProperties": false,
  378. "properties": {
  379. "custom": {"type": "boolean"},
  380. "custom_lite": {"type": "boolean"},
  381. "ghost": {"type": "boolean"},
  382. "input_pressed_state": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  383. "io_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  384. "direct": {
  385. "type": "array",
  386. "items": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  387. },
  388. "cols": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  389. "rows": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  390. }
  391. },
  392. "mouse_key": {
  393. "type": "object",
  394. "properties": {
  395. "enabled": {"type": "boolean"},
  396. "delay": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  397. "interval": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  398. "max_speed": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  399. "time_to_max": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  400. "wheel_delay": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  401. }
  402. },
  403. "oneshot": {
  404. "type": "object",
  405. "properties": {
  406. "tap_toggle": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  407. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  408. }
  409. },
  410. "led_matrix": {
  411. "type": "object",
  412. "properties": {
  413. "animations": {
  414. "type": "object",
  415. "propertyNames": { "$ref": "qmk.definitions.v1#/snake_case" }
  416. "additionalProperties": {
  417. "type": "boolean"
  418. }
  419. },
  420. "driver": {"type": "string"},
  421. "center_point": {
  422. "type": "array",
  423. "minItems": 2,
  424. "maxItems": 2,
  425. "items": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  426. },
  427. "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  428. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  429. "val_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  430. "speed_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  431. "led_flush_limit": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  432. "led_process_limit": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  433. "react_on_keyup": {"type": "boolean"},
  434. "sleep": {"type": "boolean"},
  435. "split_count": {
  436. "type": "array",
  437. "minItems": 2,
  438. "maxItems": 2,
  439. "items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  440. },
  441. "layout": {
  442. "type": "array",
  443. "items": {
  444. "type": "object",
  445. "additionalProperties": false,
  446. "properties": {
  447. "matrix": {
  448. "type": "array",
  449. "minItems": 2,
  450. "maxItems": 2,
  451. "items": {
  452. "type": "integer",
  453. "minimum": 0
  454. }
  455. },
  456. "x": {"$ref": "qmk.definitions.v1#/key_unit"},
  457. "y": {"$ref": "qmk.definitions.v1#/key_unit"},
  458. "flags": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  459. }
  460. }
  461. }
  462. }
  463. },
  464. "rgb_matrix": {
  465. "type": "object",
  466. "properties": {
  467. "animations": {
  468. "type": "object",
  469. "propertyNames": { "$ref": "qmk.definitions.v1#/snake_case" }
  470. "additionalProperties": {
  471. "type": "boolean"
  472. }
  473. },
  474. "driver": {"type": "string"},
  475. "center_point": {
  476. "type": "array",
  477. "minItems": 2,
  478. "maxItems": 2,
  479. "items": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  480. },
  481. "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  482. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  483. "hue_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  484. "sat_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  485. "val_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  486. "speed_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  487. "led_flush_limit": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  488. "led_process_limit": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  489. "react_on_keyup": {"type": "boolean"},
  490. "sleep": {"type": "boolean"},
  491. "split_count": {
  492. "type": "array",
  493. "minItems": 2,
  494. "maxItems": 2,
  495. "items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  496. },
  497. "layout": {
  498. "type": "array",
  499. "items": {
  500. "type": "object",
  501. "additionalProperties": false,
  502. "properties": {
  503. "matrix": {
  504. "type": "array",
  505. "minItems": 2,
  506. "maxItems": 2,
  507. "items": {
  508. "type": "integer",
  509. "minimum": 0
  510. }
  511. },
  512. "x": {"$ref": "qmk.definitions.v1#/key_unit"},
  513. "y": {"$ref": "qmk.definitions.v1#/key_unit"},
  514. "flags": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  515. }
  516. }
  517. }
  518. }
  519. },
  520. "rgblight": {
  521. "type": "object",
  522. "additionalProperties": false,
  523. "properties": {
  524. "animations": {
  525. "type": "object",
  526. "propertyNames": { "$ref": "qmk.definitions.v1#/snake_case" }
  527. "additionalProperties": {
  528. "type": "boolean"
  529. }
  530. },
  531. "brightness_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  532. "driver": {
  533. "type": "string",
  534. "enum": ["apa102", "custom", "ws2812"]
  535. },
  536. "hue_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  537. "layers": {
  538. "type": "object",
  539. "additionalProperties": false,
  540. "properties": {
  541. "blink": {"type": "boolean"},
  542. "enabled": {"type": "boolean"},
  543. "max": {
  544. "type": "integer",
  545. "minimum": 1,
  546. "maximum": 32
  547. },
  548. "override_rgb": {"type": "boolean"}
  549. }
  550. },
  551. "led_count": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  552. "led_map": {
  553. "type": "array",
  554. "minItems": 2,
  555. "items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  556. },
  557. "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  558. "pin": {
  559. "$ref": "qmk.definitions.v1#/mcu_pin",
  560. "$comment": "Deprecated: use ws2812.pin instead"
  561. },
  562. "rgbw": {"type": "boolean"},
  563. "saturation_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  564. "sleep": {"type": "boolean"},
  565. "split": {"type": "boolean"},
  566. "split_count": {
  567. "type": "array",
  568. "minItems": 2,
  569. "maxItems": 2,
  570. "items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  571. }
  572. }
  573. },
  574. "secure": {
  575. "type": "object",
  576. "additionalProperties": false,
  577. "properties": {
  578. "enabled": {"type": "boolean"},
  579. "unlock_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  580. "idle_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  581. "unlock_sequence": {
  582. "type": "array",
  583. "minItems": 1,
  584. "maxItems": 5,
  585. "items": {
  586. "type": "array",
  587. "minItems": 2,
  588. "maxItems": 2,
  589. "items": {
  590. "type": "integer",
  591. "minimum": 0
  592. }
  593. }
  594. }
  595. }
  596. },
  597. "stenography": {
  598. "type": "object",
  599. "additionalProperties": false,
  600. "properties": {
  601. "enabled": {"type": "boolean"},
  602. "protocol": {
  603. "type": "string",
  604. "enum": ["all", "geminipr", "txbolt"]
  605. }
  606. }
  607. },
  608. "ps2": {
  609. "type": "object",
  610. "additionalProperties": false,
  611. "properties": {
  612. "enabled": {"type": "boolean"},
  613. "mouse_enabled": {"type": "boolean"},
  614. "clock_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  615. "data_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  616. "driver": {
  617. "type": "string",
  618. "enum": ["busywait", "interrupt", "usart", "vendor"]
  619. }
  620. }
  621. },
  622. "split": {
  623. "type": "object",
  624. "additionalProperties": false,
  625. "properties": {
  626. "enabled": {"type": "boolean"},
  627. "bootmagic":{
  628. "type": "object",
  629. "additionalProperties": false,
  630. "properties": {
  631. "matrix": {
  632. "type": "array",
  633. "minItems": 2,
  634. "maxItems": 2,
  635. "items": {
  636. "type": "integer",
  637. "minimum": 0
  638. }
  639. }
  640. }
  641. },
  642. "matrix_grid": {
  643. "type": "array",
  644. "items": {"$ref": "qmk.definitions.v1#/mcu_pin"}
  645. },
  646. "matrix_pins": {
  647. "type": "object",
  648. "additionalProperties": false,
  649. "properties": {
  650. "right": {
  651. "type": "object",
  652. "additionalProperties": false,
  653. "properties": {
  654. "direct": {
  655. "type": "array",
  656. "items": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  657. },
  658. "cols": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  659. "rows": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  660. "unused": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  661. }
  662. }
  663. }
  664. },
  665. "dip_switch": {
  666. "type": "object",
  667. "additionalProperties": false,
  668. "properties": {
  669. "right": {
  670. "$ref": "#/definitions/dip_switch_config"
  671. }
  672. }
  673. },
  674. "encoder": {
  675. "type": "object",
  676. "additionalProperties": false,
  677. "properties": {
  678. "right": {
  679. "$ref": "#/definitions/encoder_config"
  680. }
  681. }
  682. },
  683. "soft_serial_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  684. "soft_serial_speed": {
  685. "type": "integer",
  686. "minimum": 0,
  687. "maximum": 5
  688. },
  689. "transport": {
  690. "type": "object",
  691. "additionalProperties": false,
  692. "properties": {
  693. "protocol": {
  694. "type": "string",
  695. "enum": ["custom", "i2c", "serial", "serial_usart"]
  696. },
  697. "sync": {
  698. "type": "object",
  699. "additionalProperties": false,
  700. "properties": {
  701. "activity": {"type": "boolean"},
  702. "detected_os": {"type": "boolean"},
  703. "haptic": {"type": "boolean"},
  704. "layer_state": {"type": "boolean"},
  705. "indicators": {"type": "boolean"},
  706. "matrix_state": {"type": "boolean"},
  707. "modifiers": {"type": "boolean"},
  708. "oled": {"type": "boolean"},
  709. "st7565": {"type": "boolean"},
  710. "wpm": {"type": "boolean"}
  711. }
  712. }
  713. "watchdog": {"type": "boolean"},
  714. "watchdog_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  715. "sync_matrix_state": {
  716. "type": "boolean",
  717. "$comment": "Deprecated: use sync.matrix_state instead"
  718. },
  719. "sync_modifiers": {
  720. "type": "boolean",
  721. "$comment": "Deprecated: use sync.modifiers instead"
  722. }
  723. }
  724. },
  725. "usb_detect": {
  726. "type": "object",
  727. "additionalProperties": false,
  728. "properties": {
  729. "enabled": {"type": "boolean"},
  730. "polling_interval": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  731. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  732. }
  733. },
  734. "main": {
  735. "type": "string",
  736. "enum": ["eeprom", "left", "matrix_grid", "pin", "right"],
  737. "$comment": "Deprecated: use config.h options for now"
  738. }
  739. }
  740. },
  741. "tags": {
  742. "type": "array",
  743. "items": {"type": "string"}
  744. },
  745. "tapping": {
  746. "type": "object",
  747. "properties": {
  748. "force_hold": {"type": "boolean"},
  749. "force_hold_per_key": {"type": "boolean"},
  750. "ignore_mod_tap_interrupt": {"type": "boolean"},
  751. "hold_on_other_key_press": {"type": "boolean"},
  752. "hold_on_other_key_press_per_key": {"type": "boolean"},
  753. "permissive_hold": {"type": "boolean"},
  754. "permissive_hold_per_key": {"type": "boolean"},
  755. "retro": {"type": "boolean"},
  756. "retro_per_key": {"type": "boolean"},
  757. "term": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  758. "term_per_key": {"type": "boolean"},
  759. "toggle": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  760. }
  761. },
  762. "usb": {
  763. "type": "object",
  764. "additionalProperties": false,
  765. "properties": {
  766. "device_ver": {
  767. "$ref": "qmk.definitions.v1#/hex_number_4d",
  768. "$comment": "Deprecated: use device_version instead"
  769. },
  770. "device_version": {"$ref": "qmk.definitions.v1#/bcd_version"},
  771. "force_nkro": {"type": "boolean"},
  772. "pid": {"$ref": "qmk.definitions.v1#/hex_number_4d"},
  773. "vid": {"$ref": "qmk.definitions.v1#/hex_number_4d"},
  774. "max_power": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  775. "no_startup_check": {"type": "boolean"},
  776. "polling_interval": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  777. "shared_endpoint": {
  778. "type": "object",
  779. "additionalProperties": false,
  780. "properties": {
  781. "keyboard": {"type": "boolean"},
  782. "mouse": {"type": "boolean"}
  783. }
  784. },
  785. "suspend_wakeup_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  786. "wait_for": {"type": "boolean"}
  787. }
  788. },
  789. "qmk": {
  790. "type": "object",
  791. "additionalProperties": false,
  792. "properties": {
  793. "keys_per_scan": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  794. "tap_keycode_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  795. "tap_capslock_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  796. "locking": {
  797. "type": "object",
  798. "additionalProperties": false,
  799. "properties": {
  800. "enabled": {"type": "boolean"},
  801. "resync": {"type": "boolean"}
  802. }
  803. }
  804. }
  805. },
  806. "qmk_lufa_bootloader": {
  807. "type": "object",
  808. "additionalProperties": false,
  809. "properties": {
  810. "esc_output": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  811. "esc_input": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  812. "led": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  813. "speaker": {"$ref": "qmk.definitions.v1#/mcu_pin"}
  814. }
  815. },
  816. "ws2812": {
  817. "type": "object",
  818. "additionalProperties": false,
  819. "properties": {
  820. "driver": {
  821. "type": "string",
  822. "enum": ["bitbang", "custom", "i2c", "pwm", "spi", "vendor"]
  823. },
  824. "pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  825. "i2c_address": {"$ref": "qmk.definitions.v1#/hex_number_2d"},
  826. "i2c_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  827. }
  828. }
  829. }
  830. }