* Add meck_tkl
* Fix configuration and pin assignment
* Rellocate A10 pin, as it is used by the USB DFU bootloader
* Add volume and media keys to the function keys layer
* Rellocate source files to the handwired keyboards folder and add documentation
* Review changes for PR
- Improve LAYOUT macro to match the keyboard layout.
- Use "kxy" as pin names on the LAYOUT macro.
- Remove unused mcuconf.h and halconf.h.
- Fix README.
* Improve layout macro naming
* Initial commit of kball
* Pretty much working
* Rename to aball
* Cleanup
* Fix typo and make instructions
* Refactor to use qmk spi
* Suggestions from ZVECR
* Update keyboards/handwired/aball/adns9800_srom_A6.h
* Update keyboards/handwired/aball/adns.c
* Update keyboards/handwired/aball/adns.c
* Update keyboards/handwired/aball/adns.c
* Added copyright and source attribution
* Update keyboards/handwired/aball/rules.mk
Include as quantum lib to help avoid timing issues with LTO
* Only send report on change, adj sensitivity, fix src include
* Fix issue causing constant reports and bad clamping
* Streamline conversion to int, add required wait before burst read
* Changes to track develop
* Update rules with new feature descriptors, add info.json
* Add stub layout
* Rework / cleanup key matrix. Add missing CS pin define for new ADNS driver
* Add stub keymap to enable compile
* Added accent.
* Added keymap for 5x6 dactyl manuform on KOY layout
* Added xd75 folder that is not in the main repo anymore?
* Added keymap for naked48 on KOY layout
* Added keymap for splitreus62 on KOY layout
* Added keymap for Dactyl Manuform 4x6 with RGB LEDs and K.O,Y layout
* Fixed error where handedness was not correctly determined because of combining vbus pins of both controllers.
* Replaced dynamic macros bith backspace and delete.
* Changed detecting handedness from detecting usb communication to checking a wired pin. This avoids problems when booting the PC, where VBUS is already high, but no communication is happening -> both halves think they are not master.
* Update keyboards/handwired/dactyl_manuform/4x6/keymaps/scheiklp/rules.mk
Co-authored-by: Drashna Jaelre <drashna@live.com>
* Update keyboards/naked48/keymaps/scheiklp/keymap.c
Co-authored-by: Drashna Jaelre <drashna@live.com>
* Update keyboards/naked48/keymaps/scheiklp/keymap.c
Co-authored-by: Drashna Jaelre <drashna@live.com>
* Update keyboards/naked48/keymaps/scheiklp/keymap.c
Co-authored-by: Drashna Jaelre <drashna@live.com>
* Update keymap.c
Added copyright
* Update config.h
* Update rules.mk
* Updated files according to PR requests.
* Update keyboards/xd75/config.h
Co-authored-by: Drashna Jaelre <drashna@live.com>
* Update keyboards/xd75/config.h
Co-authored-by: Drashna Jaelre <drashna@live.com>
* Update keyboards/xd75/keymaps/default/keymap.c
Co-authored-by: Drashna Jaelre <drashna@live.com>
* Update keyboards/xd75/config.h
Co-authored-by: Drashna Jaelre <drashna@live.com>
* Removed duplicate code. Updated copyright info.
* Restored readme
Co-authored-by: Drashna Jaelre <drashna@live.com>
* 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>
* handwired/myskeeb: update key positions in info.json
* remove unused matrix positions
L26 and R20 aren't physically present on the keyboard.
* add image to readme file
* add supported hardware and flashing example to readme
* 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
* Fix issues with user split transport code
* Improve OLED (More font stuff, improved keylogger, etc)
* Add `KEYLOCK` macro to disable USB, borrowed from command feature.
* Convert Kyria fully to proton C (no more AVR kyria)
* Add Work Louder Work Board keymap
* Align ChibiOS I2C defs with other drivers
* Update keyboards/xelus/valor_frl_tkl/config.h
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
* evyd13/atom47/rev3: best guess at fixing info.json
* evyd13/atom47: best guess at fixing info.json
* eyeohdesigns/sprh: best guess at fixing info.json
* handwired/unicomp_mini_m: best guess at fixing info.json
* lazydesigners/the60/rev2: best guess at fixing info.json
* melgeek/mj6xy: best guess at fixing info.json
* pizzakeyboards/pizza65: best guess at fixing info.json
* plx: best guess at fixing info.json
* rojectcain/vault45: best guess at fixing info.json
* sidderskb/majbritt/rev2: best guess at fixing info.json
* spacey: best guess at fixing info.json
* Fill the oleds with right mods
* Enable double mods on x32 oleds
* Disable forced NKRO
* Make oleds fancy only on good MCUs
* Overhaul oled display
* Further enhance oled, with kitty!
* Final oled form
* Not working transport
* Transport id of woring
* Add acceleration
* fix button placement for accel macro
* Fix accelartion location and behavior
* Remove OLED sync code
* Fix alignment issue
* Remove audio hack
* Fix up zima keymap
* Add matrix slave scan function and cleanup drashna.h
* Clean up user space
* Allow userspace sync to be disable-able
* Fix weird issue with audio
* Fix alignment issue with user split sync
* Disable second rgb matrix task
* Disable additional animations
* Change dynamic keymap settings
* Hacky fix for borked corne
* Add Blackpill (F411) support to tractyl manuform
* remove manual via eeprom reset
* Remove all references to rgblight twinkle
* Fix issues with config processing
* Add digitizer HID interface for setting the mouse cursor position at
absolute screen coordinates. Tested on Pro Micro, Proton C and
Blackpill.
* Update docs/feature_digitizer.md
Co-authored-by: Ryan <fauxpark@gmail.com>
* Update tmk_core/protocol/usb_descriptor.c
Co-authored-by: Ryan <fauxpark@gmail.com>
* Add missing copyrights
Add V-USB support
* Add support for digitizer dedicated endpoint for lufa and chibios.
Fix formatting issues
Move digitizer_task definition to the feature's base implementation file
* Run cformat on modified files
* Change digitizer report usage to Digitizer instead of Pen to avoid
pointer disappearing on Windows.
* Update tmk_core/protocol/vusb/vusb.c
Co-authored-by: Ryan <fauxpark@gmail.com>
* Run cformat from docker image
* Remove send_digitizer from host_driver_t and instead rely on the
declaration being the interface to the implementation in each
HW-specific usb implementation.
* Fix build : send_digitizer shouldn't be static in vusb and add
weak-linkage implementation for tests without usb implementation
* Change digitizer user interface to match pointing device's
* Update documentation with new API
Co-authored-by: a-chol <nothing@none.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
* 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>
* disambiguate Bootmagic rules in keymaps
The files edited by this commit were added at a point in time where `BOOTMAGIC_ENABLE = yes` enabled full Bootmagic.
This commit edits the files to specify that full Bootmagic is intended.
* remove BOOTMAGIC_ENABLE=full setting
* unify commented BOOTMAGIC_ENABLE rules in keyboards
Explicitly sets `BOOTMAGIC_ENABLE = no` in keyboards where the rule was commented out.
Command:
```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;#[ \t]*\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-zA-Z]\+\).*;\1 = no # Virtual DIP switch configuration;g' {} +
```
* remove commented Bootmagic rules from keymap/user level
Command:
```
find keyboards/ layouts/ users/ -type f -name 'rules.mk' -exec sed -i -e '/#.*\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*/d' {} +
```
* update keyboard BOOTMAGIC_ENABLE rule formatting
Sets the formatting of BOOTMAGIC_ENABLE rules to `BOOTMAGIC_ENABLE = [value]`, without the inline comments (which will be replaced later).
Command:
```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*;\1 = \2;g' '{}' +
```
* update keyboards' BOOTMAGIC_ENABLE settings
Updates keyboard `rules.mk` files to use `BOOTMAGIC_ENABLE = lite` where `BOOTMAGIC_ENABLE = full` was being used.
Command:
```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = \)full;\1lite;g' '{}' +
```
* update keymap/user BOOTMAGIC_ENABLE settings
Updates keymap/user `rules.mk` files to use `BOOTMAGIC_ENABLE = lite` where `BOOTMAGIC_ENABLE = full` was being used.
Commands:
```
find keyboards/ -type f -name 'rules.mk' -and -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE[ \t=]\+\)full;\1lite;g' '{}' +
find layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE[ \t=]\+\)full;\1lite;g' '{}' +
```
* remove and replace inline comments in keyboards and keymap/user files
Removes and replaces the inline comments, which have been updated to read `Enable Bootmagic Lite`.
Commands:
```
find keyboards/ -type f -name 'rules.mk' -and -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*;\1 = \2;g' '{}' +
find layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*;\1 = \2;g' '{}' +
find keyboards/ layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = lite\);\1 # Enable Bootmagic Lite;g' '{}' +
find keyboards/ layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = yes\);\1 # Enable Bootmagic Lite;g' '{}' +
find keyboards/ layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = no\);\1 # Enable Bootmagic Lite;g' '{}' +
```
* rename improperly named makefiles
Some files intended to be used as makefiles had improper names causing them to not be used as intended when building.
This commit corrects the filenames of the affected files.
* update renamed file with new rule formatting
* update QMK's template files
Updates QMK's `rules.mk` templates to use the new inline comment.
* update QMK Docs
- remove documentation of full Bootmagic
- update links to Bootmagic Lite doc
- add doc for Magic Keycodes
* rules.mk patch for coarse/ixora and coarse/vinta