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
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. "input_pressed_state": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  308. "io_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  309. "direct": {
  310. "type": "array",
  311. "items": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  312. },
  313. "cols": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  314. "rows": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  315. }
  316. },
  317. "mouse_key": {
  318. "type": "object",
  319. "properties": {
  320. "enabled": {"type": "boolean"},
  321. "delay": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  322. "interval": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  323. "max_speed": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  324. "time_to_max": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  325. "wheel_delay": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  326. }
  327. },
  328. "oneshot": {
  329. "type": "object",
  330. "properties": {
  331. "tap_toggle": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  332. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  333. }
  334. },
  335. "led_matrix": {
  336. "type": "object",
  337. "properties": {
  338. "animations": {
  339. "type": "object",
  340. "additionalProperties": {
  341. "type": "boolean"
  342. }
  343. },
  344. "driver": {"type": "string"},
  345. "center_point": {
  346. "type": "array",
  347. "minItems": 2,
  348. "maxItems": 2,
  349. "items": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  350. },
  351. "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  352. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  353. "hue_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  354. "sat_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  355. "val_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  356. "speed_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  357. "split_count": {
  358. "type": "array",
  359. "minItems": 2,
  360. "maxItems": 2,
  361. "items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  362. },
  363. "layout": {
  364. "type": "array",
  365. "items": {
  366. "type": "object",
  367. "additionalProperties": false,
  368. "properties": {
  369. "matrix": {
  370. "type": "array",
  371. "minItems": 2,
  372. "maxItems": 2,
  373. "items": {
  374. "type": "integer",
  375. "minimum": 0
  376. }
  377. },
  378. "x": {"$ref": "qmk.definitions.v1#/key_unit"},
  379. "y": {"$ref": "qmk.definitions.v1#/key_unit"},
  380. "flags": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  381. }
  382. }
  383. }
  384. }
  385. },
  386. "rgb_matrix": {
  387. "type": "object",
  388. "properties": {
  389. "animations": {
  390. "type": "object",
  391. "additionalProperties": {
  392. "type": "boolean"
  393. }
  394. },
  395. "driver": {"type": "string"},
  396. "center_point": {
  397. "type": "array",
  398. "minItems": 2,
  399. "maxItems": 2,
  400. "items": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  401. },
  402. "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  403. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  404. "hue_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  405. "sat_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  406. "val_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  407. "speed_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  408. "split_count": {
  409. "type": "array",
  410. "minItems": 2,
  411. "maxItems": 2,
  412. "items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  413. },
  414. "layout": {
  415. "type": "array",
  416. "items": {
  417. "type": "object",
  418. "additionalProperties": false,
  419. "properties": {
  420. "matrix": {
  421. "type": "array",
  422. "minItems": 2,
  423. "maxItems": 2,
  424. "items": {
  425. "type": "integer",
  426. "minimum": 0
  427. }
  428. },
  429. "x": {"$ref": "qmk.definitions.v1#/key_unit"},
  430. "y": {"$ref": "qmk.definitions.v1#/key_unit"},
  431. "flags": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  432. }
  433. }
  434. }
  435. }
  436. },
  437. "rgblight": {
  438. "type": "object",
  439. "additionalProperties": false,
  440. "properties": {
  441. "animations": {
  442. "type": "object",
  443. "additionalProperties": {
  444. "type": "boolean"
  445. }
  446. },
  447. "brightness_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  448. "hue_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  449. "layers": {
  450. "type": "object",
  451. "additionalProperties": false,
  452. "properties": {
  453. "blink": {"type": "boolean"},
  454. "enabled": {"type": "boolean"},
  455. "max": {
  456. "type": "integer",
  457. "minimum": 1,
  458. "maximum": 32
  459. },
  460. "override_rgb": {"type": "boolean"}
  461. }
  462. },
  463. "led_count": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  464. "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  465. "pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  466. "rgbw": {"type": "boolean"},
  467. "saturation_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  468. "sleep": {"type": "boolean"},
  469. "split": {"type": "boolean"},
  470. "split_count": {
  471. "type": "array",
  472. "minItems": 2,
  473. "maxItems": 2,
  474. "items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  475. }
  476. }
  477. },
  478. "secure": {
  479. "type": "object",
  480. "additionalProperties": false,
  481. "properties": {
  482. "enabled": {"type": "boolean"},
  483. "unlock_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  484. "idle_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  485. "unlock_sequence": {
  486. "type": "array",
  487. "minItems": 1,
  488. "maxItems": 5,
  489. "items": {
  490. "type": "array",
  491. "minItems": 2,
  492. "maxItems": 2,
  493. "items": {
  494. "type": "integer",
  495. "minimum": 0
  496. }
  497. }
  498. }
  499. }
  500. },
  501. "stenography": {
  502. "type": "object",
  503. "additionalProperties": false,
  504. "properties": {
  505. "enabled": {"type": "boolean"},
  506. "protocol": {
  507. "type": "string",
  508. "enum": ["all", "geminipr", "txbolt"]
  509. }
  510. }
  511. },
  512. "ps2": {
  513. "type": "object",
  514. "additionalProperties": false,
  515. "properties": {
  516. "enabled": {"type": "boolean"},
  517. "mouse_enabled": {"type": "boolean"},
  518. "clock_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  519. "data_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  520. "driver": {
  521. "type": "string",
  522. "enum": ["busywait", "interrupt", "usart", "vendor"]
  523. }
  524. }
  525. },
  526. "split": {
  527. "type": "object",
  528. "additionalProperties": false,
  529. "properties": {
  530. "enabled": {"type": "boolean"},
  531. "bootmagic":{
  532. "type": "object",
  533. "additionalProperties": false,
  534. "properties": {
  535. "matrix": {
  536. "type": "array",
  537. "minItems": 2,
  538. "maxItems": 2,
  539. "items": {
  540. "type": "integer",
  541. "minimum": 0
  542. }
  543. }
  544. }
  545. },
  546. "matrix_grid": {
  547. "type": "array",
  548. "items": {"$ref": "qmk.definitions.v1#/mcu_pin"}
  549. },
  550. "matrix_pins": {
  551. "type": "object",
  552. "additionalProperties": false,
  553. "properties": {
  554. "right": {
  555. "type": "object",
  556. "additionalProperties": false,
  557. "properties": {
  558. "direct": {
  559. "type": "array",
  560. "items": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  561. },
  562. "cols": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  563. "rows": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  564. "unused": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  565. }
  566. }
  567. }
  568. },
  569. "encoder": {
  570. "type": "object",
  571. "additionalProperties": false,
  572. "properties": {
  573. "right": {
  574. "$ref": "#/definitions/encoder_config"
  575. }
  576. }
  577. },
  578. "main": {
  579. "type": "string",
  580. "enum": ["eeprom", "left", "matrix_grid", "pin", "right"]
  581. },
  582. "soft_serial_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  583. "soft_serial_speed": {
  584. "type": "integer",
  585. "minimum": 0,
  586. "maximum": 5
  587. },
  588. "transport": {
  589. "type": "object",
  590. "additionalProperties": false,
  591. "properties": {
  592. "protocol": {
  593. "type": "string",
  594. "enum": ["custom", "i2c", "serial", "serial_usart"]
  595. },
  596. "sync_matrix_state": {"type": "boolean"},
  597. "sync_modifiers": {"type": "boolean"},
  598. "watchdog": {"type": "boolean"},
  599. "watchdog_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  600. }
  601. },
  602. "usb_detect": {
  603. "type": "object",
  604. "additionalProperties": false,
  605. "properties": {
  606. "enabled": {"type": "boolean"},
  607. "polling_interval": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  608. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  609. }
  610. }
  611. }
  612. },
  613. "tags": {
  614. "type": "array",
  615. "items": {"type": "string"}
  616. },
  617. "tapping": {
  618. "type": "object",
  619. "properties": {
  620. "force_hold": {"type": "boolean"},
  621. "force_hold_per_key": {"type": "boolean"},
  622. "ignore_mod_tap_interrupt": {"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. }