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.

647 lines
25 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
  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. "pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  119. "on_state": {"$ref": "qmk.definitions.v1#/bit"}
  120. }
  121. },
  122. "bluetooth": {
  123. "type": "object",
  124. "additionalProperties": false,
  125. "properties": {
  126. "driver": {
  127. "type": "string",
  128. "enum": ["BluefruitLE", "RN42"]
  129. }
  130. }
  131. },
  132. "board": {
  133. "type": "string",
  134. "minLength": 2,
  135. "pattern": "^[a-zA-Z_][0-9a-zA-Z_]*$"
  136. },
  137. "bootloader": {
  138. "type": "string",
  139. "enum": [
  140. "atmel-dfu",
  141. "bootloadhid",
  142. "caterina",
  143. "custom",
  144. "gd32v-dfu",
  145. "halfkay",
  146. "kiibohd",
  147. "lufa-dfu",
  148. "lufa-ms",
  149. "md-boot",
  150. "qmk-dfu",
  151. "qmk-hid",
  152. "rp2040",
  153. "stm32-dfu",
  154. "stm32duino",
  155. "tinyuf2",
  156. "unknown",
  157. "usbasploader",
  158. "wb32-dfu"
  159. ]
  160. },
  161. "bootloader_instructions": {
  162. "type": "string",
  163. "description": "Instructions for putting the keyboard into a mode that allows for firmware flashing."
  164. },
  165. "build": {
  166. "type": "object",
  167. "additionalProperties": false,
  168. "properties": {
  169. "debounce_type": {
  170. "type": "string",
  171. "enum": ["asym_eager_defer_pk", "custom", "sym_defer_g", "sym_defer_pk", "sym_defer_pr", "sym_eager_pk", "sym_eager_pr"]
  172. },
  173. "firmware_format": {
  174. "type": "string",
  175. "enum": ["bin", "hex", "uf2"]
  176. },
  177. "lto": {"type": "boolean"}
  178. }
  179. },
  180. "diode_direction": {
  181. "type": "string",
  182. "enum": ["COL2ROW", "ROW2COL"]
  183. },
  184. "debounce": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  185. "caps_word": {
  186. "type": "object",
  187. "additionalProperties": false,
  188. "properties": {
  189. "enabled": {"type": "boolean"},
  190. "both_shifts_turns_on": {"type": "boolean"},
  191. "double_tap_shift_turns_on": {"type": "boolean"},
  192. "idle_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  193. }
  194. },
  195. "combo": {
  196. "type": "object",
  197. "properties": {
  198. "count": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  199. "term": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  200. }
  201. },
  202. "community_layouts": {
  203. "type": "array",
  204. "items": {"$ref": "qmk.definitions.v1#/filename"}
  205. },
  206. "encoder": {
  207. "$ref": "#/definitions/encoder_config",
  208. "properties": {
  209. "enabled": {"type": "boolean"}
  210. }
  211. },
  212. "features": {"$ref": "qmk.definitions.v1#/boolean_array"},
  213. "indicators": {
  214. "type": "object",
  215. "properties": {
  216. "caps_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  217. "num_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  218. "scroll_lock": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  219. "compose": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  220. "kana": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  221. "on_state": {"$ref": "qmk.definitions.v1#/bit"}
  222. }
  223. },
  224. "layout_aliases": {
  225. "type": "object",
  226. "additionalProperties": {"$ref": "qmk.definitions.v1#/layout_macro"}
  227. },
  228. "layouts": {
  229. "type": "object",
  230. "propertyNames": {"$ref": "qmk.definitions.v1#/layout_macro"},
  231. "additionalProperties": {
  232. "type": "object",
  233. "additionalProperties": false,
  234. "properties": {
  235. "filename": {
  236. "type": "string"
  237. },
  238. "c_macro": {
  239. "type": "boolean"
  240. },
  241. "layout": {
  242. "type": "array",
  243. "items": {
  244. "type": "object",
  245. "additionalProperties": false,
  246. "properties": {
  247. "label": {
  248. "type": "string",
  249. "pattern": "^[^\\n]*$"
  250. },
  251. "matrix": {
  252. "type": "array",
  253. "minItems": 2,
  254. "maxItems": 2,
  255. "items": {
  256. "type": "integer",
  257. "minimum": 0
  258. }
  259. },
  260. "r": {"$ref": "qmk.definitions.v1#/signed_decimal"},
  261. "rx": {"$ref": "qmk.definitions.v1#/unsigned_decimal"},
  262. "ry": {"$ref": "qmk.definitions.v1#/unsigned_decimal"},
  263. "h": {"$ref": "qmk.definitions.v1#/key_unit"},
  264. "w": {"$ref": "qmk.definitions.v1#/key_unit"},
  265. "x": {"$ref": "qmk.definitions.v1#/key_unit"},
  266. "y": {"$ref": "qmk.definitions.v1#/key_unit"}
  267. }
  268. }
  269. }
  270. }
  271. }
  272. },
  273. "leader_key": {
  274. "type": "object",
  275. "properties": {
  276. "timing": {"type": "boolean"},
  277. "strict_processing": {"type": "boolean"},
  278. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  279. }
  280. },
  281. "matrix_pins": {
  282. "type": "object",
  283. "additionalProperties": false,
  284. "properties": {
  285. "custom": {"type": "boolean"},
  286. "custom_lite": {"type": "boolean"},
  287. "ghost": {"type": "boolean"},
  288. "io_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  289. "direct": {
  290. "type": "array",
  291. "items": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  292. },
  293. "cols": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  294. "rows": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  295. }
  296. },
  297. "mouse_key": {
  298. "type": "object",
  299. "properties": {
  300. "enabled": {"type": "boolean"},
  301. "delay": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  302. "interval": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  303. "max_speed": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  304. "time_to_max": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  305. "wheel_delay": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  306. }
  307. },
  308. "oneshot": {
  309. "type": "object",
  310. "properties": {
  311. "tap_toggle": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  312. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  313. }
  314. },
  315. "led_matrix": {
  316. "type": "object",
  317. "properties": {
  318. "animations": {
  319. "type": "object",
  320. "additionalProperties": {
  321. "type": "boolean"
  322. }
  323. },
  324. "driver": {"type": "string"},
  325. "center_point": {
  326. "type": "array",
  327. "minItems": 2,
  328. "maxItems": 2,
  329. "items": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  330. },
  331. "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  332. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  333. "hue_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  334. "sat_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  335. "val_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  336. "speed_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  337. "split_count": {
  338. "type": "array",
  339. "minItems": 2,
  340. "maxItems": 2,
  341. "items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  342. },
  343. "layout": {
  344. "type": "array",
  345. "items": {
  346. "type": "object",
  347. "additionalProperties": false,
  348. "properties": {
  349. "matrix": {
  350. "type": "array",
  351. "minItems": 2,
  352. "maxItems": 2,
  353. "items": {
  354. "type": "integer",
  355. "minimum": 0
  356. }
  357. },
  358. "x": {"$ref": "qmk.definitions.v1#/key_unit"},
  359. "y": {"$ref": "qmk.definitions.v1#/key_unit"},
  360. "flags": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  361. }
  362. }
  363. }
  364. }
  365. },
  366. "rgb_matrix": {
  367. "type": "object",
  368. "properties": {
  369. "animations": {
  370. "type": "object",
  371. "additionalProperties": {
  372. "type": "boolean"
  373. }
  374. },
  375. "driver": {"type": "string"},
  376. "center_point": {
  377. "type": "array",
  378. "minItems": 2,
  379. "maxItems": 2,
  380. "items": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  381. },
  382. "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  383. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  384. "hue_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  385. "sat_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  386. "val_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  387. "speed_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  388. "split_count": {
  389. "type": "array",
  390. "minItems": 2,
  391. "maxItems": 2,
  392. "items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  393. },
  394. "layout": {
  395. "type": "array",
  396. "items": {
  397. "type": "object",
  398. "additionalProperties": false,
  399. "properties": {
  400. "matrix": {
  401. "type": "array",
  402. "minItems": 2,
  403. "maxItems": 2,
  404. "items": {
  405. "type": "integer",
  406. "minimum": 0
  407. }
  408. },
  409. "x": {"$ref": "qmk.definitions.v1#/key_unit"},
  410. "y": {"$ref": "qmk.definitions.v1#/key_unit"},
  411. "flags": {"$ref": "qmk.definitions.v1#/unsigned_int_8"}
  412. }
  413. }
  414. }
  415. }
  416. },
  417. "rgblight": {
  418. "type": "object",
  419. "additionalProperties": false,
  420. "properties": {
  421. "animations": {
  422. "type": "object",
  423. "additionalProperties": {
  424. "type": "boolean"
  425. }
  426. },
  427. "brightness_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  428. "hue_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  429. "layers": {
  430. "type": "object",
  431. "additionalProperties": false,
  432. "properties": {
  433. "blink": {"type": "boolean"},
  434. "enabled": {"type": "boolean"},
  435. "max": {
  436. "type": "integer",
  437. "minimum": 1,
  438. "maximum": 32
  439. },
  440. "override_rgb": {"type": "boolean"}
  441. }
  442. },
  443. "led_count": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  444. "max_brightness": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  445. "pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  446. "rgbw": {"type": "boolean"},
  447. "saturation_steps": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  448. "sleep": {"type": "boolean"},
  449. "split": {"type": "boolean"},
  450. "split_count": {
  451. "type": "array",
  452. "minItems": 2,
  453. "maxItems": 2,
  454. "items": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  455. }
  456. }
  457. },
  458. "secure": {
  459. "type": "object",
  460. "additionalProperties": false,
  461. "properties": {
  462. "enabled": {"type": "boolean"},
  463. "unlock_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  464. "idle_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  465. "unlock_sequence": {
  466. "type": "array",
  467. "minItems": 1,
  468. "maxItems": 5,
  469. "items": {
  470. "type": "array",
  471. "minItems": 2,
  472. "maxItems": 2,
  473. "items": {
  474. "type": "integer",
  475. "minimum": 0
  476. }
  477. }
  478. }
  479. }
  480. },
  481. "stenography": {
  482. "type": "object",
  483. "additionalProperties": false,
  484. "properties": {
  485. "enabled": {"type": "boolean"},
  486. "protocol": {
  487. "type": "string",
  488. "enum": ["all", "geminipr", "txbolt"]
  489. }
  490. }
  491. },
  492. "ps2": {
  493. "type": "object",
  494. "additionalProperties": false,
  495. "properties": {
  496. "enabled": {"type": "boolean"},
  497. "mouse_enabled": {"type": "boolean"},
  498. "clock_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  499. "data_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  500. "driver": {
  501. "type": "string",
  502. "enum": ["busywait", "interrupt", "usart", "vendor"]
  503. }
  504. }
  505. },
  506. "split": {
  507. "type": "object",
  508. "additionalProperties": false,
  509. "properties": {
  510. "enabled": {"type": "boolean"},
  511. "matrix_grid": {
  512. "type": "array",
  513. "items": {"$ref": "qmk.definitions.v1#/mcu_pin"}
  514. },
  515. "matrix_pins": {
  516. "type": "object",
  517. "additionalProperties": false,
  518. "properties": {
  519. "right": {
  520. "type": "object",
  521. "additionalProperties": false,
  522. "properties": {
  523. "direct": {
  524. "type": "array",
  525. "items": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  526. },
  527. "cols": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  528. "rows": {"$ref": "qmk.definitions.v1#/mcu_pin_array"},
  529. "unused": {"$ref": "qmk.definitions.v1#/mcu_pin_array"}
  530. }
  531. }
  532. }
  533. },
  534. "encoder": {
  535. "type": "object",
  536. "additionalProperties": false,
  537. "properties": {
  538. "right": {
  539. "$ref": "#/definitions/encoder_config"
  540. }
  541. }
  542. },
  543. "main": {
  544. "type": "string",
  545. "enum": ["eeprom", "left", "matrix_grid", "pin", "right"]
  546. },
  547. "soft_serial_pin": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  548. "soft_serial_speed": {
  549. "type": "integer",
  550. "minimum": 0,
  551. "maximum": 5
  552. },
  553. "transport": {
  554. "type": "object",
  555. "additionalProperties": false,
  556. "properties": {
  557. "protocol": {
  558. "type": "string",
  559. "enum": ["custom", "i2c", "serial", "serial_usart"]
  560. },
  561. "sync_matrix_state": {"type": "boolean"},
  562. "sync_modifiers": {"type": "boolean"},
  563. "watchdog": {"type": "boolean"},
  564. "watchdog_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  565. }
  566. },
  567. "usb_detect": {
  568. "type": "object",
  569. "additionalProperties": false,
  570. "properties": {
  571. "enabled": {"type": "boolean"},
  572. "polling_interval": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  573. "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  574. }
  575. }
  576. }
  577. },
  578. "tags": {
  579. "type": "array",
  580. "items": {"type": "string"}
  581. },
  582. "tapping": {
  583. "type": "object",
  584. "properties": {
  585. "force_hold": {"type": "boolean"},
  586. "force_hold_per_key": {"type": "boolean"},
  587. "ignore_mod_tap_interrupt": {"type": "boolean"},
  588. "ignore_mod_tap_interrupt_per_key": {"type": "boolean"},
  589. "hold_on_other_key_press": {"type": "boolean"},
  590. "hold_on_other_key_press_per_key": {"type": "boolean"},
  591. "permissive_hold": {"type": "boolean"},
  592. "permissive_hold_per_key": {"type": "boolean"},
  593. "retro": {"type": "boolean"},
  594. "retro_per_key": {"type": "boolean"},
  595. "term": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  596. "term_per_key": {"type": "boolean"},
  597. "toggle": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  598. }
  599. },
  600. "usb": {
  601. "type": "object",
  602. "additionalProperties": false,
  603. "properties": {
  604. "device_ver": {
  605. "$ref": "qmk.definitions.v1#/hex_number_4d",
  606. "$comment": "Deprecated: use device_version instead"
  607. },
  608. "device_version": {"$ref": "qmk.definitions.v1#/bcd_version"},
  609. "force_nkro": {"type": "boolean"},
  610. "pid": {"$ref": "qmk.definitions.v1#/hex_number_4d"},
  611. "vid": {"$ref": "qmk.definitions.v1#/hex_number_4d"},
  612. "max_power": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  613. "no_startup_check": {"type": "boolean"},
  614. "polling_interval": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  615. "shared_endpoint": {
  616. "type": "object",
  617. "additionalProperties": false,
  618. "properties": {
  619. "keyboard": {"type": "boolean"},
  620. "mouse": {"type": "boolean"}
  621. }
  622. },
  623. "suspend_wakeup_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  624. "wait_for": {"type": "boolean"}
  625. }
  626. },
  627. "qmk": {
  628. "type": "object",
  629. "additionalProperties": false,
  630. "properties": {
  631. "keys_per_scan": {"$ref": "qmk.definitions.v1#/unsigned_int_8"},
  632. "tap_keycode_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"},
  633. "tap_capslock_delay": {"$ref": "qmk.definitions.v1#/unsigned_int"}
  634. }
  635. },
  636. "qmk_lufa_bootloader": {
  637. "type": "object",
  638. "additionalProperties": false,
  639. "properties": {
  640. "esc_output": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  641. "esc_input": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  642. "led": {"$ref": "qmk.definitions.v1#/mcu_pin"},
  643. "speaker": {"$ref": "qmk.definitions.v1#/mcu_pin"}
  644. }
  645. }
  646. }
  647. }