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.

681 lines
26 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
  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. },
  25. "type": "object",
  26. "properties": {
  27. "keyboard_name": {"$ref": "qmk.definitions.v1#/text_identifier"},
  28. "keyboard_folder": {"$ref": "qmk.definitions.v1#/keyboard"},
  29. "maintainer": {"$ref": "qmk.definitions.v1#/text_identifier"},
  30. "manufacturer": {"$ref": "qmk.definitions.v1#/text_identifier"},
  31. "url": {
  32. "type": "string",
  33. "format": "uri"
  34. },
  35. "development_board": {
  36. "type": "string",
  37. "enum": ["promicro", "elite_c", "elite_pi", "proton_c", "kb2040", "promicro_rp2040", "blok", "bit_c_pro", "stemcell", "bluepill", "blackpill_f401", "blackpill_f411", "bonsai_c4"]
  38. },
  39. "pin_compatible": {
  40. "type": "string",
  41. "enum": ["promicro", "elite_c"]
  42. },
  43. "processor": {
  44. "type": "string",
  45. "enum": [
  46. "cortex-m0",
  47. "cortex-m0plus",
  48. "cortex-m3",
  49. "cortex-m4",
  50. "cortex-m7",
  51. "cortex-m23",
  52. "cortex-m33",
  53. "cortex-m35p",
  54. "cortex-m55",
  55. "cortex-m85",
  56. "MKL26Z64",
  57. "MK20DX128",
  58. "MK20DX256",
  59. "MK64FX512",
  60. "MK66FX1M0",
  61. "RP2040",
  62. "STM32F042",
  63. "STM32F072",
  64. "STM32F103",
  65. "STM32F303",
  66. "STM32F401",
  67. "STM32F405",
  68. "STM32F407",
  69. "STM32F411",
  70. "STM32F446",
  71. "STM32G431",
  72. "STM32G474",
  73. "STM32L412",
  74. "STM32L422",
  75. "STM32L432",
  76. "STM32L433",
  77. "STM32L442",
  78. "STM32L443",
  79. "GD32VF103",
  80. "WB32F3G71",
  81. "WB32FQ95",
  82. "atmega16u2",
  83. "atmega32u2",
  84. "atmega16u4",
  85. "atmega32u4",
  86. "at90usb162",
  87. "at90usb646",
  88. "at90usb647",
  89. "at90usb1286",
  90. "at90usb1287",
  91. "atmega32a",
  92. "atmega328p",
  93. "atmega328",
  94. "attiny85",
  95. "unknown"
  96. ]
  97. },
  98. "audio": {
  99. "type": "object",
  100. "additionalProperties": false,
  101. "properties": {
  102. "macro_beep": {"type": "boolean"},
  103. "pins": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  104. "voices": {"type": "boolean"}
  105. }
  106. },
  107. "backlight": {
  108. "type": "object",
  109. "additionalProperties": false,
  110. "properties": {
  111. "breathing": {"type": "boolean"},
  112. "breathing_period": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  113. "levels": {
  114. "type": "integer",
  115. "minimum": 1,
  116. "maximum": 31
  117. },
  118. "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  119. "pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  120. "pins": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  121. "on_state": {"$ref": "qmk.definitions.v1#/bit"}
  122. }
  123. },
  124. "bluetooth": {
  125. "type": "object",
  126. "additionalProperties": false,
  127. "properties": {
  128. "driver": {
  129. "type": "string",
  130. "enum": ["BluefruitLE", "RN42"]
  131. }
  132. }
  133. },
  134. "bootmagic":{
  135. "type": "object",
  136. "additionalProperties": false,
  137. "properties": {
  138. "enabled": {"type": "boolean"},
  139. "matrix": {
  140. "type": "array",
  141. "minItems": 2,
  142. "maxItems": 2,
  143. "items": {
  144. "type": "integer",
  145. "minimum": 0
  146. }
  147. }
  148. }
  149. },
  150. "board": {
  151. "type": "string",
  152. "minLength": 2,
  153. "pattern": "^[a-zA-Z_][0-9a-zA-Z_]*$"
  154. },
  155. "bootloader": {
  156. "type": "string",
  157. "enum": [
  158. "atmel-dfu",
  159. "bootloadhid",
  160. "caterina",
  161. "custom",
  162. "gd32v-dfu",
  163. "halfkay",
  164. "kiibohd",
  165. "lufa-dfu",
  166. "lufa-ms",
  167. "md-boot",
  168. "qmk-dfu",
  169. "qmk-hid",
  170. "rp2040",
  171. "stm32-dfu",
  172. "stm32duino",
  173. "tinyuf2",
  174. "unknown",
  175. "usbasploader",
  176. "wb32-dfu"
  177. ]
  178. },
  179. "bootloader_instructions": {
  180. "type": "string",
  181. "description": "Instructions for putting the keyboard into a mode that allows for firmware flashing."
  182. },
  183. "build": {
  184. "type": "object",
  185. "additionalProperties": false,
  186. "properties": {
  187. "debounce_type": {
  188. "type": "string",
  189. "enum": ["asym_eager_defer_pk", "custom", "sym_defer_g", "sym_defer_pk", "sym_defer_pr", "sym_eager_pk", "sym_eager_pr"]
  190. },
  191. "firmware_format": {
  192. "type": "string",
  193. "enum": ["bin", "hex", "uf2"]
  194. },
  195. "lto": {"type": "boolean"}
  196. }
  197. },
  198. "diode_direction": {
  199. "type": "string",
  200. "enum": ["COL2ROW", "ROW2COL"]
  201. },
  202. "debounce": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  203. "caps_word": {
  204. "type": "object",
  205. "additionalProperties": false,
  206. "properties": {
  207. "enabled": {"type": "boolean"},
  208. "both_shifts_turns_on": {"type": "boolean"},
  209. "double_tap_shift_turns_on": {"type": "boolean"},
  210. "idle_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  211. }
  212. },
  213. "combo": {
  214. "type": "object",
  215. "properties": {
  216. "count": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  217. "term": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  218. }
  219. },
  220. "community_layouts": {
  221. "type": "array",
  222. "items": {"$ref": "qmk.definitions.v1#/filename"}
  223. },
  224. "encoder": {
  225. "$ref": "#/definitions/encoder_config",
  226. "properties": {
  227. "enabled": {"type": "boolean"}
  228. }
  229. },
  230. "features": {"$ref": "qmk.definitions.v1#/boolean_array"},
  231. "indicators": {
  232. "type": "object",
  233. "properties": {
  234. "caps_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  235. "num_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  236. "scroll_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  237. "compose": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  238. "kana": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  239. "on_state": {"$ref": "qmk.definitions.v1#/bit"}
  240. }
  241. },
  242. "layout_aliases": {
  243. "type": "object",
  244. "additionalProperties": {"$ref": "qmk.definitions.v1#/layout_macro"}
  245. },
  246. "layouts": {
  247. "type": "object",
  248. "propertyNames": {"$ref": "qmk.definitions.v1#/layout_macro"},
  249. "additionalProperties": {
  250. "type": "object",
  251. "additionalProperties": false,
  252. "properties": {
  253. "filename": {
  254. "type": "string"
  255. },
  256. "c_macro": {
  257. "type": "boolean"
  258. },
  259. "layout": {
  260. "type": "array",
  261. "items": {
  262. "type": "object",
  263. "additionalProperties": false,
  264. "required": ["x", "y"],
  265. "properties": {
  266. "label": {
  267. "type": "string",
  268. "pattern": "^[^\\n]*$"
  269. },
  270. "matrix": {
  271. "type": "array",
  272. "minItems": 2,
  273. "maxItems": 2,
  274. "items": {
  275. "type": "integer",
  276. "minimum": 0
  277. }
  278. },
  279. "r": {"$ref": "qmk.definitions.v1#/signed_decimal"},
  280. "rx": {"$ref": "qmk.definitions.v1#/unsigned_decimal"},
  281. "ry": {"$ref": "qmk.definitions.v1#/unsigned_decimal"},
  282. "h": {"$ref": "qmk.definitions.v1#/key_unit"},
  283. "w": {"$ref": "qmk.definitions.v1#/key_unit"},
  284. "x": {"$ref": "qmk.definitions.v1#/key_unit"},
  285. "y": {"$ref": "qmk.definitions.v1#/key_unit"}
  286. }
  287. }
  288. }
  289. }
  290. }
  291. },
  292. "leader_key": {
  293. "type": "object",
  294. "properties": {
  295. "timing": {"type": "boolean"},
  296. "strict_processing": {"type": "boolean"},
  297. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  298. }
  299. },
  300. "matrix_pins": {
  301. "type": "object",
  302. "additionalProperties": false,
  303. "properties": {
  304. "custom": {"type": "boolean"},
  305. "custom_lite": {"type": "boolean"},
  306. "ghost": {"type": "boolean"},
  307. "io_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  308. "direct": {
  309. "type": "array",
  310. "items": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  311. },
  312. "cols": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  313. "rows": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  314. }
  315. },
  316. "mouse_key": {
  317. "type": "object",
  318. "properties": {
  319. "enabled": {"type": "boolean"},
  320. "delay": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  321. "interval": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  322. "max_speed": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  323. "time_to_max": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  324. "wheel_delay": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  325. }
  326. },
  327. "oneshot": {
  328. "type": "object",
  329. "properties": {
  330. "tap_toggle": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  331. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  332. }
  333. },
  334. "led_matrix": {
  335. "type": "object",
  336. "properties": {
  337. "animations": {
  338. "type": "object",
  339. "additionalProperties": {
  340. "type": "boolean"
  341. }
  342. },
  343. "driver": {"type": "string"},
  344. "center_point": {
  345. "type": "array",
  346. "minItems": 2,
  347. "maxItems": 2,
  348. "items": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  349. },
  350. "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  351. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  352. "hue_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  353. "sat_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  354. "val_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  355. "speed_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  356. "split_count": {
  357. "type": "array",
  358. "minItems": 2,
  359. "maxItems": 2,
  360. "items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  361. },
  362. "layout": {
  363. "type": "array",
  364. "items": {
  365. "type": "object",
  366. "additionalProperties": false,
  367. "properties": {
  368. "matrix": {
  369. "type": "array",
  370. "minItems": 2,
  371. "maxItems": 2,
  372. "items": {
  373. "type": "integer",
  374. "minimum": 0
  375. }
  376. },
  377. "x": {"$ref": "qmk.definitions.v1#/key_unit"},
  378. "y": {"$ref": "qmk.definitions.v1#/key_unit"},
  379. "flags": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  380. }
  381. }
  382. }
  383. }
  384. },
  385. "rgb_matrix": {
  386. "type": "object",
  387. "properties": {
  388. "animations": {
  389. "type": "object",
  390. "additionalProperties": {
  391. "type": "boolean"
  392. }
  393. },
  394. "driver": {"type": "string"},
  395. "center_point": {
  396. "type": "array",
  397. "minItems": 2,
  398. "maxItems": 2,
  399. "items": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  400. },
  401. "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  402. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  403. "hue_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  404. "sat_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  405. "val_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  406. "speed_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  407. "split_count": {
  408. "type": "array",
  409. "minItems": 2,
  410. "maxItems": 2,
  411. "items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  412. },
  413. "layout": {
  414. "type": "array",
  415. "items": {
  416. "type": "object",
  417. "additionalProperties": false,
  418. "properties": {
  419. "matrix": {
  420. "type": "array",
  421. "minItems": 2,
  422. "maxItems": 2,
  423. "items": {
  424. "type": "integer",
  425. "minimum": 0
  426. }
  427. },
  428. "x": {"$ref": "qmk.definitions.v1#/key_unit"},
  429. "y": {"$ref": "qmk.definitions.v1#/key_unit"},
  430. "flags": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  431. }
  432. }
  433. }
  434. }
  435. },
  436. "rgblight": {
  437. "type": "object",
  438. "additionalProperties": false,
  439. "properties": {
  440. "animations": {
  441. "type": "object",
  442. "additionalProperties": {
  443. "type": "boolean"
  444. }
  445. },
  446. "brightness_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  447. "hue_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  448. "layers": {
  449. "type": "object",
  450. "additionalProperties": false,
  451. "properties": {
  452. "blink": {"type": "boolean"},
  453. "enabled": {"type": "boolean"},
  454. "max": {
  455. "type": "integer",
  456. "minimum": 1,
  457. "maximum": 32
  458. },
  459. "override_rgb": {"type": "boolean"}
  460. }
  461. },
  462. "led_count": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  463. "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  464. "pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  465. "rgbw": {"type": "boolean"},
  466. "saturation_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  467. "sleep": {"type": "boolean"},
  468. "split": {"type": "boolean"},
  469. "split_count": {
  470. "type": "array",
  471. "minItems": 2,
  472. "maxItems": 2,
  473. "items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  474. }
  475. }
  476. },
  477. "secure": {
  478. "type": "object",
  479. "additionalProperties": false,
  480. "properties": {
  481. "enabled": {"type": "boolean"},
  482. "unlock_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  483. "idle_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  484. "unlock_sequence": {
  485. "type": "array",
  486. "minItems": 1,
  487. "maxItems": 5,
  488. "items": {
  489. "type": "array",
  490. "minItems": 2,
  491. "maxItems": 2,
  492. "items": {
  493. "type": "integer",
  494. "minimum": 0
  495. }
  496. }
  497. }
  498. }
  499. },
  500. "stenography": {
  501. "type": "object",
  502. "additionalProperties": false,
  503. "properties": {
  504. "enabled": {"type": "boolean"},
  505. "protocol": {
  506. "type": "string",
  507. "enum": ["all", "geminipr", "txbolt"]
  508. }
  509. }
  510. },
  511. "ps2": {
  512. "type": "object",
  513. "additionalProperties": false,
  514. "properties": {
  515. "enabled": {"type": "boolean"},
  516. "mouse_enabled": {"type": "boolean"},
  517. "clock_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  518. "data_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  519. "driver": {
  520. "type": "string",
  521. "enum": ["busywait", "interrupt", "usart", "vendor"]
  522. }
  523. }
  524. },
  525. "split": {
  526. "type": "object",
  527. "additionalProperties": false,
  528. "properties": {
  529. "enabled": {"type": "boolean"},
  530. "bootmagic":{
  531. "type": "object",
  532. "additionalProperties": false,
  533. "properties": {
  534. "matrix": {
  535. "type": "array",
  536. "minItems": 2,
  537. "maxItems": 2,
  538. "items": {
  539. "type": "integer",
  540. "minimum": 0
  541. }
  542. }
  543. }
  544. },
  545. "matrix_grid": {
  546. "type": "array",
  547. "items": {"$ref": "qmk.definitions.v1#/mcu_pin"}
  548. },
  549. "matrix_pins": {
  550. "type": "object",
  551. "additionalProperties": false,
  552. "properties": {
  553. "right": {
  554. "type": "object",
  555. "additionalProperties": false,
  556. "properties": {
  557. "direct": {
  558. "type": "array",
  559. "items": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  560. },
  561. "cols": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  562. "rows": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  563. "unused": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  564. }
  565. }
  566. }
  567. },
  568. "encoder": {
  569. "type": "object",
  570. "additionalProperties": false,
  571. "properties": {
  572. "right": {
  573. "$ref": "#/definitions/encoder_config"
  574. }
  575. }
  576. },
  577. "main": {
  578. "type": "string",
  579. "enum": ["eeprom", "left", "matrix_grid", "pin", "right"]
  580. },
  581. "soft_serial_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  582. "soft_serial_speed": {
  583. "type": "integer",
  584. "minimum": 0,
  585. "maximum": 5
  586. },
  587. "transport": {
  588. "type": "object",
  589. "additionalProperties": false,
  590. "properties": {
  591. "protocol": {
  592. "type": "string",
  593. "enum": ["custom", "i2c", "serial", "serial_usart"]
  594. },
  595. "sync_matrix_state": {"type": "boolean"},
  596. "sync_modifiers": {"type": "boolean"},
  597. "watchdog": {"type": "boolean"},
  598. "watchdog_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  599. }
  600. },
  601. "usb_detect": {
  602. "type": "object",
  603. "additionalProperties": false,
  604. "properties": {
  605. "enabled": {"type": "boolean"},
  606. "polling_interval": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  607. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  608. }
  609. }
  610. }
  611. },
  612. "tags": {
  613. "type": "array",
  614. "items": {"type": "string"}
  615. },
  616. "tapping": {
  617. "type": "object",
  618. "properties": {
  619. "force_hold": {"type": "boolean"},
  620. "force_hold_per_key": {"type": "boolean"},
  621. "ignore_mod_tap_interrupt": {"type": "boolean"},
  622. "ignore_mod_tap_interrupt_per_key": {"type": "boolean"},
  623. "hold_on_other_key_press": {"type": "boolean"},
  624. "hold_on_other_key_press_per_key": {"type": "boolean"},
  625. "permissive_hold": {"type": "boolean"},
  626. "permissive_hold_per_key": {"type": "boolean"},
  627. "retro": {"type": "boolean"},
  628. "retro_per_key": {"type": "boolean"},
  629. "term": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  630. "term_per_key": {"type": "boolean"},
  631. "toggle": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  632. }
  633. },
  634. "usb": {
  635. "type": "object",
  636. "additionalProperties": false,
  637. "properties": {
  638. "device_ver": {
  639. "$ref": "qmk.definitions.v1#/hex_number_4d",
  640. "$comment": "Deprecated: use device_version instead"
  641. },
  642. "device_version": {"$ref": "qmk.definitions.v1#/bcd_version"},
  643. "force_nkro": {"type": "boolean"},
  644. "pid": {"$ref": "qmk.definitions.v1#/hex_number_4d"},
  645. "vid": {"$ref": "qmk.definitions.v1#/hex_number_4d"},
  646. "max_power": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  647. "no_startup_check": {"type": "boolean"},
  648. "polling_interval": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  649. "shared_endpoint": {
  650. "type": "object",
  651. "additionalProperties": false,
  652. "properties": {
  653. "keyboard": {"type": "boolean"},
  654. "mouse": {"type": "boolean"}
  655. }
  656. },
  657. "suspend_wakeup_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  658. "wait_for": {"type": "boolean"}
  659. }
  660. },
  661. "qmk": {
  662. "type": "object",
  663. "additionalProperties": false,
  664. "properties": {
  665. "keys_per_scan": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  666. "tap_keycode_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  667. "tap_capslock_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  668. }
  669. },
  670. "qmk_lufa_bootloader": {
  671. "type": "object",
  672. "additionalProperties": false,
  673. "properties": {
  674. "esc_output": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  675. "esc_input": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  676. "led": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  677. "speaker": {"$ref": "qmk.definitions.v1#/mcu_pin"}
  678. }
  679. }
  680. }
  681. }