172 Commits (6b81ba1d4c20c6eb859d49a6e140f15ff190ce9d)

Author SHA1 Message Date
Ryan d18698a8e8
Remove deprecated USBasp and bootloadHID bootloader types (#18195) 3 years ago
QMK Bot ac33b7b0b3 Merge remote-tracking branch 'origin/master' into develop 3 years ago
Ryan d4a6ee1cad
Clean up schema syntax (#18192) 3 years ago
Ryan d983251c10
Switch over MANUFACTURER and PRODUCT to string literals (#18183) 3 years ago
Nick Brassel 9b5b072255
2022q3 Changelog. (#18180)
Co-authored-by: Drashna Jaelre <drashna@live.com>
3 years ago
QMK Bot 1c47bd0ddf Merge remote-tracking branch 'origin/master' into develop 3 years ago
Ryan fc0bf67f37
Add missing DD mapping for RGB_MATRIX_DRIVER (#18160) 3 years ago
Drashna Jael're 8f6b019dcc
Merge remote-tracking branch 'origin/master' into develop 3 years ago
Joel Challis d2accb48e7
RESET -> QK_BOOT keyboard readme (#18110) 3 years ago
David Hoelscher a645301c82
Add Bonsai C4 converter (#17711) 3 years ago
Joel Challis ed3b4bb606
Fix missing development_board schema entry (#18050) 3 years ago
Mega Mind fce99f3875
[Controller] Added board config for custom controller STeMCell (#16287)
Co-authored-by: Mariappan Ramasamy <947300+Mariappan@users.noreply.github.com>
Co-authored-by: Mariappan Ramasamy <maari@basis-ai.com>
Co-authored-by: Sadek Baroudi <sadekbaroudi@gmail.com>
3 years ago
JJ48 4eda139b83
Add Gentleman 65 SE Solderd PCB support (#16992) 3 years ago
Jay Greco 4eeafbebab
Add Bit-C PRO converter (#17827) 3 years ago
Nick Brassel 154d35ac14
Remove `UNUSED_PINS` (#17931) 3 years ago
QMK Bot 820371c31b Merge remote-tracking branch 'origin/master' into develop 3 years ago
Ryan 37345e2ace
Provide users with replacements for deprecated/invalid functionality where applicable (#17604) 3 years ago
Stefan Kerkmann f27b617f36
[Core] Process all changed keys in one scan loop, deprecate `QMK_KEYS_PER_SCAN` (#15292) 3 years ago
Drashna Jaelre eb417b3aaf
Add deprecated check for RGBLIGHT_ANIMATIONS (#17832) 3 years ago
Albert Y d510e80b89
Add Blok 2040 conversion (#17603) 3 years ago
Joel Challis 744af003be
Add kb2040 and sparkfun rp2040 converters (#17514) 3 years ago
Ryan ac5e6b6a3b
Tentative Teensy 3.5 support (#14420)
* Tentative Teensy 3.5 support

* Set firmware format to .hex for ARM Teensys

* Got to "device descriptor failed" by comparing with Teensy 3.6 code

* Drop down to 96MHz...

* Bump back up to 120MHz
3 years ago
Stefan Kerkmann d717396708
[Core] Add Raspberry Pi RP2040 support (#14877)
* 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>
3 years ago
precondition 7060cb7b26
Refactor steno and add `STENO_PROTOCOL = [all|txbolt|geminipr]` (#17065)
* 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
4 years ago
Joel Challis 1a400d8644
Allow encoder config from info.json (#17295) 4 years ago
Joel Challis 17ec1650fd
Additional schema fixes (#17414) 4 years ago
Yan-Fa Li 7b3ee1db8c
Minor schema fixes (#14200)
Validating using AJV
4 years ago
Joel Challis 87e1ff218d
backlight|led 'on state' for DD configuration (#17383) 4 years ago
Joel Challis 7baf9b3f35
Promote label with newlines to lint error (#17347) 4 years ago
Joel Challis a599550adb
Add support for linting deprecated and removed functionality (#17063)
* Add support for more lint warnings/errors

* Develop currently needs extra deps installed

* Lint a few more scenarios

* fix tests
4 years ago
zvecr cbc68dfd21 Update keyboard aliases 4 years ago
Joy Lee 1c7e8b9a9d
Added support for Wb32fq95 (#16871) 4 years ago
GloriousThrall 83fa6fe916
Move GMMK Pro to allow for multiple revisions (#16423)
* Added GMMK PRO Rev2 WBG7 MCU compatibility. Added GMMK 2 WBG7 MCU compatibility.

* GMMK PRO MCU Updates only (removed other kbs)

* fix problems

* Optimize the code.

* Update form develop branch

* Update

* Updater from qmk/develop

* Update

* Update config.h

* Update config.h

* Remove gmmk pro rev2

* move moults31/keymap.c

* Update

* tidy up

Co-authored-by: Joy <chang.li@westberrytech.com>
Co-authored-by: zvecr <git@zvecr.com>
4 years ago
Joel Challis 608fa5154c
Data driven `g_led_config` (#16728) 4 years ago
Pascal Getreuer 68b16bba68
[Core] Add Caps Word feature to core (#16588)
Co-authored-by: precondition <57645186+precondition@users.noreply.github.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
4 years ago
Joel Challis 6e819945ed
Remove some layout exceptions (#16957)
* LAYOUT_JP -> LAYOUT_jp

* LAYOUT_ANSI_DEFAULT -> LAYOUT

* LAYOUT_reviung34_2uL -> LAYOUT_reviung34_2u
4 years ago
Joel Challis 92a61aa0cd
Implement XAP 'secure' core requirements (#16843)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
4 years ago
Joel Challis d870716457
Add bluepill/blackpill development board presets (#16806) 4 years ago
Joel Challis 45504bb094
Add mechanism to limit available converters (#16783) 4 years ago
Joel Challis c0ac3f7372
Add frameworking for development board presets (#16637)
* 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>
4 years ago
QMK Bot d0b33593b2 Merge remote-tracking branch 'origin/master' into develop 4 years ago
Joel Challis 11db29bedb
Lint keyboard/project name (#16766) 4 years ago
QMK Bot e2ab5056f1 Merge remote-tracking branch 'origin/master' into develop 4 years ago
Joel Challis b202e59322
Update info.json (#16540) 4 years ago
Ryan 7d41639d54
Map data driven `DESCRIPTION` as string literal (#16523) 4 years ago
QMK Bot 386d19b55f Merge remote-tracking branch 'origin/master' into develop 4 years ago
Joel Challis c0185116d7
More validation of declared LAYOUT macro names (#16520) 4 years ago
Ryan ace0603f4f
Change data driven "str" type to represent a quoted string literal (#16516)
* Change data driven "str" type to represent a quoted string literal

* Update docs
4 years ago
QMK Bot 36e47cb3aa Merge remote-tracking branch 'origin/master' into develop 4 years ago
Erovia fbfd5312b9
CLI: Validate JSON keymap input (#16261)
* Fix schema validator

It should use the passed schema.

* Add required attributes to keymap schema

* Rework subcommands to validate the JSON keymaps

The 'compile', 'flash' and 'json2c' subcommands were reworked to add
JSON keymap validation so error is reported for non-JSON and
non-compliant-JSON inputs.

* Fix required fields in keymap schema

* Add tests

* Fix compiling keymaps directly from keymap directory

* Schema should not require version for now.
4 years ago
Joel Challis e4a6afa369
Rework generate-api CLI command to use .build directory (#16441) 4 years ago
Joel Challis 0d9a0d5d97
Align new-keyboard with recent schema updates (#16378) 4 years ago
Joel Challis fede569bbe
Allow NO_PIN within info.json (#16359) 4 years ago
Joel Challis b0621223bc
Various fixes for new-keyboard (#16358) 4 years ago
Drashna Jaelre afcdd7079c
Update keyboard mapping for all moved boards this cycle (#16312) 4 years ago
Joel Challis 2e279f1b88
Initial pass at data driven new-keyboard subcommand (#12795)
* Initial pass at a data driven keyboard subcommand

* format

* lint

* Handle bootloader now its mandatory
4 years ago
Joel Challis 842d20267c
Remove half implemented micronucleus bootloader support (#16252) 4 years ago
Ryan 3facf05324
Add `custom` to list of valid bootloader types in info.json (#16228) 4 years ago
peepeetee 07bb65384c
[Keyboard] move @kkatano 's keyboards to kkatano user folder (#15684) 4 years ago
peepeetee 566f6e7b76
[Keyboard] move @matthewdias 's keebs into matthewdias/ (#15991) 4 years ago
Ryan 7d685956cc
Rename `AdafruitBLE` to `BluefruitLE` (#16127) 4 years ago
Ryan 1d11ae3087
Rip out old macro and action_function system (#16025)
* Rip out old macro and action_function system

* Update quantum/action_util.c

Co-authored-by: Joel Challis <git@zvecr.com>
4 years ago
Nick Brassel 77062e9a36
Add L432, L442. (#16016) 4 years ago
Ryan c72ed7c024
CLI: Parse USB device version BCD (#14580)
* CLI: Parse USB device version BCD

* Apply suggestions
4 years ago
peepeetee 217ad5cfc0
move yd60mq to ymdk vendor folder (#15647) 4 years ago
QMK Bot 6a723c3571 Merge remote-tracking branch 'origin/master' into develop 4 years ago
Nick Brassel d02be63000
Revert "update keyboard_aliases.json (#15649)" (#15903)
This reverts commit b24603ab7d.
4 years ago
QMK Bot 069e232bab Merge remote-tracking branch 'origin/master' into develop 4 years ago
peepeetee b24603ab7d
update keyboard_aliases.json (#15649) 4 years ago
peepeetee 15290f4366
rename idobo to idobao/id75, move to vendor folder (#15661)
* rename idobo to idobao/id75, move to vendor folder

* add image, amend readme to id75

* add buying link
4 years ago
QMK Bot 02637ec350 Merge remote-tracking branch 'origin/master' into develop 4 years ago
Drashna Jaelre 7edfb4deff
[Keyboard] Fix compilation issues for mechlovin hex4b (#15885) 4 years ago
Ryan 6bc870d899
Refactor `bootloader_jump()` implementations (#15450)
* Refactor `bootloader_jump()` implementations

* Fix tests?

* Rename `atmel-samba` to `md-boot`
4 years ago
Chad Austin 25713dc222
Add sym_defer_pr debouncer type (#14948) 4 years ago
Ryan a8d440e4e0
Tidy up NKRO_ENABLE rules (#15382) 4 years ago
Ryan c12b997679
Tidy up `SLEEP_LED_ENABLE` rules (#15362) 4 years ago
Joy Lee 68838bb700
Westberrytech pr (#14422)
* Added support for WB32 MCU

* Modified eeprom_wb32.c

* Remove the eeprom_wb32-related code
4 years ago
Zach White 08ce0142ba
Macros in JSON keymaps (#14374)
* 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>
4 years ago
Joel Challis eeab6f154b
Short term bodge for PRODUCT warning (#15240) 4 years ago
QMK Bot 4b6db33a1d Merge remote-tracking branch 'origin/master' into develop 4 years ago
Mikkel Jeppesen fefd7fdc51
Refactor new-keyboard to be python3.7 compatible (#14707)
* Use copy_tree from distutils for python 3.7 support

* Bump python version in docs

* Changed new-keyboard to use printf-style format strings

* Use username for manunfacturer / maintainer

* Update lib/python/qmk/cli/new/keyboard.py

Co-authored-by: Zach White <skullydazed@drpepper.org>

Co-authored-by: Zach White <skullydazed@drpepper.org>
4 years ago
Ryan 9401836727
Map `PRODUCT` define to `keyboard_name` (#14372)
* Map `PRODUCT` define to `keyboard_name`

* Fix tests

* Fix last test
4 years ago
Stefan Kerkmann e50867d52d
[Core] Add support for RISC-V builds and GD32VF103 MCU (#12508)
* 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
4 years ago
Ryan 1a9e7b95ab
Change `MK66F18` -> `MK66FX1M0` (#14659) 4 years ago
Joel Challis 3a2a39e5ec
Initial pass of F405 support (#14584)
* Initial pass of F405 support

* remove some conf files

* docs

* clang
4 years ago
Ryan 5af1799735
Remove BLUETOOTH_ENABLE from keyboard-level rules.mk (#14379) 4 years ago
Ryan 4791cfae1a
Remove width, height and key_count from info.json (#14274) 4 years ago
Ryan d5cb7de5e4
Change USBasp and bootloadHID bootloaders to lowercase (#14354) 4 years ago
Nick Brassel 4bad375d7c
2021Q3 pre-merge `develop` changelog, keyboard aliases (#14198)
* Initial changelog.

* Data driven.

* Submodule update.

* Updated breaking changes docs.

* Aliases.

* Aliases.
4 years ago
Joel Challis 2cade3a483
Align some quantum sub-directories (#14134)
* Misc folder tidy

* Review comments

* Remove redundant entry
4 years ago
Joel Challis b229b0fba7
Fix issues with recent keymap.json changes (#14089)
* Fix issues with recent keymap.json changes

* Allow empty author string
4 years ago
Joel Challis 2e734fb6b9
Add config.h and rules.mk support for data driven keymaps (#12859)
* Add config.h and rules.mk support for data driven keymaps

* tidy up after rebase

* Rename key as it can contain more than just keyboard overrides

* tidy up after rebase

* Add validation
4 years ago
Zach White 8d9bfdc254
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>
4 years ago
thpoll83 b43c6bc176
Add support for STM32F407x MCUs. (#13718)
* 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>
4 years ago
Ryan 25f43837d2
Remove references to info.json `width` and `height` in CLI (#13728) 4 years ago
Drashna Jaelre 71e9f8fc11
Update LUFA (18-07-2021) and add QMK-HID Bootloader support (#13588)
Co-authored-by: Ryan <fauxpark@gmail.com>
4 years ago
Nick Brassel 8bb231aa1c
Adds support for STM32L412xB, STM32L422xB. (#13383)
* Adds support for STM32L412xB, STM32L422xB.

* Add to list of supported MCUs.

* Disable SPI1 by default.
5 years ago
Zach White b908275354
Optimize our jsonschema by using refs (#13271)
* 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
5 years ago
QMK Bot f106f77692 Merge remote-tracking branch 'origin/master' into develop 5 years ago
Drashna Jaelre 88e53ad9ca
Fix issue with crkbd json mapping (#13255) 5 years ago