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.

715 lines
28 KiB

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