summaryrefslogtreecommitdiff
path: root/data/schemas/keyboard.jsonschema
AgeCommit message (Collapse)Author
2022-06-30[Core] Add Raspberry Pi RP2040 support (#14877)Stefan Kerkmann
* Disable RESET keycode because of naming conflicts * Add Pico SDK as submodule * Add RP2040 build support to QMK * Adjust USB endpoint structs for RP2040 * Add RP2040 bootloader and double-tap reset routine * Add generic and pro micro RP2040 boards * Add RP2040 onekey keyboard * Add WS2812 PIO DMA enabled driver and documentation Supports regular and open-drain output configuration. RP2040 GPIOs are sadly not 5V tolerant, so this is a bit use-less or needs extra hardware or you take the risk to fry your hardware. * Adjust SIO Driver for RP2040 * Adjust I2C Driver for RP2040 * Adjust SPI Driver for RP2040 * Add PIO serial driver and documentation * Add general RP2040 documentation * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> Co-authored-by: Nick Brassel <nick@tzarc.org>
2022-06-23Refactor steno and add `STENO_PROTOCOL = [all|txbolt|geminipr]` (#17065)precondition
* Refactor steno into STENO_ENABLE_[ALL|GEMINI|BOLT] * Update stenography documentation * STENO_ENABLE_TXBOLT → STENO_ENABLE_BOLT TXBOLT is a better name but BOLT is more consistent with the pre-existing TX Bolt related constants, which all drop the "TX " prefix * Comments * STENO_ENABLE_[GEMINI|BOLT|ALL] → STENO_PROTOCOL = [geminipr|txbolt|all] * Add note on lacking V-USB support * Clear chord at the end of the switch(mode){send_steno_chord} block * Return true if NOEVENT * update_chord_xxx → add_xxx_key_to_chord * Enable the defines for all the protocols if STENO_PROTOCOL = all * Mention how to use `steno_set_mode` * Set the default steno protocol to "all" This is done so that existing keymaps invoking `steno_set_mode` don't all suddenly break * Add data driver equivalents for stenography feature * Document format of serial steno packets (Thanks dnaq) * Add missing comma
2022-06-20Allow encoder config from info.json (#17295)Joel Challis
2022-06-18Additional schema fixes (#17414)Joel Challis
2022-06-18Minor schema fixes (#14200)Yan-Fa Li
Validating using AJV
2022-06-14backlight|led 'on state' for DD configuration (#17383)Joel Challis
2022-06-10Promote label with newlines to lint error (#17347)Joel Challis
2022-05-23Added support for Wb32fq95 (#16871)Joy Lee
2022-05-16Data driven `g_led_config` (#16728)Joel Challis
2022-05-14[Core] Add Caps Word feature to core (#16588)Pascal Getreuer
Co-authored-by: precondition <57645186+precondition@users.noreply.github.com> Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-04-16Implement XAP 'secure' core requirements (#16843)Joel Challis
Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2022-04-06Add bluepill/blackpill development board presets (#16806)Joel Challis
2022-04-06Add mechanism to limit available converters (#16783)Joel Challis
2022-04-03Add frameworking for development board presets (#16637)Joel Challis
* Add frameworking for development board presets * Update lib/python/qmk/info.py Co-authored-by: Nick Brassel <nick@tzarc.org> Co-authored-by: Nick Brassel <nick@tzarc.org>
2022-04-01Lint keyboard/project name (#16766)Joel Challis
2022-03-04More validation of declared LAYOUT macro names (#16520)Joel Challis
2022-02-06Remove half implemented micronucleus bootloader support (#16252)Joel Challis
2022-02-05Add `custom` to list of valid bootloader types in info.json (#16228)Ryan
2022-01-30Rename `AdafruitBLE` to `BluefruitLE` (#16127)Ryan
2022-01-24Add L432, L442. (#16016)Nick Brassel
2022-01-17CLI: Parse USB device version BCD (#14580)Ryan
* CLI: Parse USB device version BCD * Apply suggestions
2021-12-27Refactor `bootloader_jump()` implementations (#15450)Ryan
* Refactor `bootloader_jump()` implementations * Fix tests? * Rename `atmel-samba` to `md-boot`
2021-12-27Add sym_defer_pr debouncer type (#14948)Chad Austin
2021-11-27Westberrytech pr (#14422)Joy Lee
* Added support for WB32 MCU * Modified eeprom_wb32.c * Remove the eeprom_wb32-related code
2021-11-22Macros in JSON keymaps (#14374)Zach White
* macros in json keymaps * add advanced macro support to json * add a note about escaping macro strings * add simple examples * format json * add support for language specific keymap extras * switch to dictionaries instead of inline text for macros * use SS_TAP on the innermost tap keycode * add the new macro format to the schema * document the macro limit * add the json keyword for syntax highlighting * fix format that vscode screwed up * Update feature_macros.md * add tests for macros * change ding to beep * add json support for SENDSTRING_BELL * update doc based on feedback from sigprof * document host_layout * remove unused var * improve carriage return handling * support tab characters as well * Update docs/feature_macros.md Co-authored-by: Nick Brassel <nick@tzarc.org> * escape backslash characters * format * flake8 * Update quantum/quantum_keycodes.h Co-authored-by: Nick Brassel <nick@tzarc.org>
2021-10-18[Core] Add support for RISC-V builds and GD32VF103 MCU (#12508)Stefan Kerkmann
* Add support for RISC-V builds and GD32VF103 MCU * Add toolchain selection in chibios.mk based on the mcu selected in mcu_selection.mk * Reorder and added comments to chibios.mk to have a streamlined makefile * Add GD32VF103 mcu to possible targets for QMK. * Add STM32 compatibility for GD32VF103 MCU, this is hacky but more efficent then rewriting every driver. * Add GigaDevice DFU bootloader as flash target, please note that dfu-util of at least version 0.10 is needed. * Add analog driver compatibility * Add apa102 bitbang driver compatibility * Add ws2812 bitbang driver compatibility * Add eeprom in flash emulation compatibility * Allow faster re-builds with ccache * Add SiPeed Longan Nano to platform files * Add SiPeed Longan Nano Onekeys * Make quine compatible with other bootloaders * Support builds with picolibc * Add risc-v toolchain to arch and debian/ubuntu scripts
2021-09-30Change `MK66F18` -> `MK66FX1M0` (#14659)Ryan
2021-09-25Initial pass of F405 support (#14584)Joel Challis
* Initial pass of F405 support * remove some conf files * docs * clang
2021-09-12Remove width, height and key_count from info.json (#14274)Ryan
2021-09-10Change USBasp and bootloadHID bootloaders to lowercase (#14354)Ryan
2021-08-16Add a lot more data to info.json (#13366)Zach White
* 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>
2021-08-09Add support for STM32F407x MCUs. (#13718)thpoll83
* Add support for STM32F407x MCUs. * Removing STMF407 MCU variation * Update quantum/mcu_selection.mk Remove options for dfu flashing Co-authored-by: Ryan <fauxpark@gmail.com> * DISABLE STM32_USB_USE_OTG1 * Update platforms/chibios/GENERIC_STM32_F407XE/configs/mcuconf.h Co-authored-by: Drashna Jaelre <drashna@live.com> * Update platforms/chibios/GENERIC_STM32_F407XE/configs/mcuconf.h Co-authored-by: thomas.pollak <thomas.pollak@dynatrace.com> Co-authored-by: Ryan <fauxpark@gmail.com> Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2021-07-29Remove references to info.json `width` and `height` in CLI (#13728)Ryan
2021-07-24Update LUFA (18-07-2021) and add QMK-HID Bootloader support (#13588)Drashna Jaelre
Co-authored-by: Ryan <fauxpark@gmail.com>
2021-06-30Adds support for STM32L412xB, STM32L422xB. (#13383)Nick Brassel
* Adds support for STM32L412xB, STM32L422xB. * Add to list of supported MCUs. * Disable SPI1 by default.
2021-06-24Optimize our jsonschema by using refs (#13271)Zach White
* fix some broken info.json files * optimize our jsonschema using refs * fix formatting after vscode broke it * make flake8 happy * cleanup * make our schema validation more compact and flexible
2021-06-19allow LINE_PINxx for Teensy 4.x pins (#13247)Michael Stapelberg
fixes https://github.com/qmk/qmk_firmware/issues/13052
2021-04-26Add STM32L433 and L443 support (#12063)Xelus22
* initial L433 commit * change to XC * fix L433 * disable all peripherals * update system and peripheral clocks * 433 change * use its own board files * revert its own board files * l433 specific change * fix stm32l432xx define * remove duplicate #define * fix bootloader jump * move to L443xx and add i2c2, spi2, usart3 to mcuconf.h * move to L443 * move to L443 * fix sdmmc in mcuconf.h * include STM32L443 * add L443 * Include L443 in compatible microcontrollers Co-authored-by: Nick Brassel <nick@tzarc.org> * Include L443 in compatible microcontrollers Co-authored-by: Nick Brassel <nick@tzarc.org> * Update config bootloader jump description Co-authored-by: Nick Brassel <nick@tzarc.org> * Update ChibiOS define reasoning Co-authored-by: Nick Brassel <nick@tzarc.org> * Update quantum/mcu_selection.mk Co-authored-by: Nick Brassel <nick@tzarc.org> * fix git conflict Co-authored-by: Nick Brassel <nick@tzarc.org>
2021-04-25Add support for MCU = STM32F446 (#12619)Purdea Andrei
* Add support for MCU = STM32F446 * Update platforms/chibios/GENERIC_STM32_F446XE/configs/config.h Co-authored-by: Nick Brassel <nick@tzarc.org> * Restore mcuconf.h to the one used by RT-STM32F446RE-NUCLEO64 * stm32f446: update mcuconf.h and board.h for 16MHz operation, with USB enabled, and other peripherals disabled. Co-authored-by: Nick Brassel <nick@tzarc.org>
2021-04-25Add initial support for tinyuf2 bootloader (when hosted on F411 blackpill) ↵Nick Brassel
(#12600) * Add support for jumping to tinyuf2 bootloader. Adds blackpill UF2 example. * Update flashing.md * Update chconf.h * Update config.h * Update halconf.h * Update mcuconf.h
2021-03-17core: add support for MK66F18 (Teensy 3.6) micro controller (#12258)Michael Stapelberg
This is in preparation for https://github.com/qmk/qmk_firmware/pull/10171
2021-02-28Migrate make_dfu_header to CLI (#12061)Joel Challis
* Migrate make_dfu_header to CLI * lint fixes * Update lib/python/qmk/cli/generate/dfu_header.py Co-authored-by: Ryan <fauxpark@gmail.com> * Rename object Co-authored-by: Ryan <fauxpark@gmail.com>
2021-02-27Fix compile errors (#12048)Zach White
* fix compile errors * fix broken json files
2021-02-27Fix develop (#12039)Zach White
Fixes file encoding errors on Windows, and layouts not correctly merging into info.json. * force utf8 encoding * correctly merge layouts and layout aliases * show what aliases point to
2021-02-06Add STM32G431 and STM32G474 board definitions. (#11793)Nick Brassel
* Add STM32G431 and STM32G474 board definitions. * Add docs.
2021-01-29Adds AT90USB162 support (#11570)Dasky
* at90usb162 support * fix missing bracket * Apply suggestions from code review Co-authored-by: Ryan <fauxpark@gmail.com> Co-authored-by: Ryan <fauxpark@gmail.com>
2021-01-25Update list of MCUs in keyboard.jsonschema to mirror qmk.constants.py (#11688)Nick Brassel
2021-01-09Add support for specifying BOARD in info.json (#11492)Zach White
* add support for specifying BOARD in info.json * move BOARD from rules.mk to info.json for clueboard * fix keyboards that do not require board * remove out of compliance values
2021-01-09Use the schema to eliminate custom code (#11108)Zach White
* use the schema to eliminate custom code * Update docs/reference_info_json.md Co-authored-by: Ryan <fauxpark@gmail.com> * make flake8 happy * bugfix * do not overwrite make vars from json Co-authored-by: Ryan <fauxpark@gmail.com>
2021-01-08fix bugs triggered by certain boardsZach White