summaryrefslogtreecommitdiffstats
path: root/quantum
Commit message (Collapse)AuthorAgeFilesLines
* format code according to conventions [skip ci]QMK Bot2020-03-102-20/+23
|
* Feature: RGBLight layers (#7768)Nathan Gray2020-03-102-0/+98
| | | | | | | | | | | | | | | | | * New feature: RGBLIGHT_LAYERS This feature allows users to define multiple independent layers of lighting that can be toggled on and off individually, making it easy to use your RGB lighting to indicate things like active keyboard layer & modifier state. * Demonstrate built in functions for layer state checking Also link the video in the docs. * Follow existing pattern for setting rgblight_status flags * Eliminate rgblight_is_static_mode since it's not needed Just check to see if the timer is enabled directly.
* Refactor rgblight_reconfig.h (#7773)Takeshi ISHII2020-03-103-44/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Moved contents of rgblight_reconfig.h to rgblight_post_config.h. In #3582, rgblight_reconfig.h had to be newly created. Now, the build system of qmk_firmware has a post_cofig feature, so that what was done in rgblight_reconfig.h can now be realized in rgblight_post_config.h. **This commit does not change the build result.** Testing script ```shell # build on master git checkout master echo master > /tmp/master_md5.txt # RGBLIGHT_ENABLE = no make HELIX=verbose helix/rev2:default:clean make HELIX=verbose helix/rev2:default md5 helix_rev2_default.hex >> /tmp/master_md5.txt # RGBLIGHT_ENABLE = yes, with animations make HELIX=verbose helix/rev2/back:default:clean make HELIX=verbose helix/rev2/back:default md5 helix_rev2_back_default.hex >> /tmp/master_md5.txt # RGBLIGHT_ENABLE = yes, without animations make HELIX=verbose,no_ani helix/rev2/back:default:clean make HELIX=verbose,no_ani helix/rev2/back:default md5 helix_rev2_back_default.hex >> /tmp/master_md5.txt # build on refactor_rgblight_reconfig.h git checkout refactor_rgblight_reconfig.h echo refactor_rgblight_reconfig.h > /tmp/branch_md5.txt # RGBLIGHT_ENABLE = no make HELIX=verbose helix/rev2:default:clean make HELIX=verbose helix/rev2:default md5 helix_rev2_default.hex >> /tmp/branch_md5.txt # RGBLIGHT_ENABLE = yes, with animations make HELIX=verbose helix/rev2/back:default:clean make HELIX=verbose helix/rev2/back:default md5 helix_rev2_back_default.hex >> /tmp/branch_md5.txt # RGBLIGHT_ENABLE = yes, without animations make HELIX=verbose,no_ani helix/rev2/back:default:clean make HELIX=verbose,no_ani helix/rev2/back:default md5 helix_rev2_back_default.hex >> /tmp/branch_md5.txt diff -u /tmp/master_md5.txt /tmp/branch_md5.txt ``` Test result: ``` --- /tmp/master_md5.txt 2020-01-03 15:42:22.000000000 +0900 +++ /tmp/branch_md5.txt 2020-01-03 15:42:42.000000000 +0900 @@ -1,4 +1,4 @@ -master +refactor_rgblight_reconfig.h MD5 (helix_rev2_default.hex) = f360032edd522448366d471d8f4f8181 MD5 (helix_rev2_back_default.hex) = 0c663acc6cccc44476b3b969ad22a48f MD5 (helix_rev2_back_default.hex) = e66b1195ff6d38e6e22c975b8ae42fd3 ``` * Expressions that are too long are difficult to read, so wrap them. * Edit the expression again * remove `defined(RGBLIGHT_ANIMATIONS)` in `tmk_core/common/*/suspend.c`, `tmk_core/protocol/*/main.c` move contents of rgblight_reconfig.h to rgblight.h. The following changes were made to rgblight.h. ```diff +#ifdef RGBLIGHT_USE_TIMER void rgblight_task(void); void rgblight_timer_init(void); void rgblight_timer_enable(void); void rgblight_timer_disable(void); void rgblight_timer_toggle(void); +#else +#define rgblight_task() +#define rgblight_timer_init() +#define rgblight_timer_enable() +#define rgblight_timer_disable() +#define rgblight_timer_toggle() +#endif ``` The following changes were made to tmk_core/common/avr/suspend.c, tmk_core/common/chibios/suspend.c, tmk_core/protocol/chibios/main.c, tmk_core/protocol/lufa/lufa.c, tmk_core/protocol/vusb/main.c. ```diff -# ifdef RGBLIGHT_ANIMATIONS rgblight_timer_enable(); -# endif ``` ```diff -#if defined(RGBLIGHT_ANIMATIONS) && defined(RGBLIGHT_ENABLE) +#if defined(RGBLIGHT_ENABLE) rgblight_task(); #endif ``` * remove 'defined(RGBLIGHT_ANIMATIONS)' in tmk_core/common/keyboard.c Co-authored-by: Joel Challis <git@zvecr.com>
* Remove NO_UART defines from config.h for V-USB boards (#8351)Ryan2020-03-091-2/+0
|
* Update Dvorak, Colemak and Workman keycode aliases (#8217)Ryan2020-03-095-225/+388
| | | | | * Update Dvorak, Colemak and Workman keycode aliases * Add missing shifted keycode aliases for Workman
* Update Norwegian keymap and add sendstring LUT (#8300)Ryan2020-03-082-34/+253
|
* Backlight - Carve out a better location for private driver functionality (#8329)Joel Challis2020-03-077-63/+64
| | | | | | | * rename backlight_soft to match rules.mk * rename backlight_soft to match rules.mk - update common_features * Carve out a better location for private driver backlight functionality
* Remove unused LED_BREATHING_TABLEzvecr2020-03-062-25/+0
|
* Refactor more backlight to a common location (#8292)Joel Challis2020-03-065-112/+78
| | | | | | | * Refactor more backlight to a common location * BACKLIGHT_PIN not defined for custom backlight * align function names
* Update Hungarian keymap and add sendstring LUT (#8220)Ryan2020-03-032-117/+271
|
* Reduce PROGMEM usage for sendstring LUT (#8109)Ted M Lin2020-03-0312-350/+419
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Reduce PROGMEM usage for keycode map Bit-pack the keycode bool array to gain back a small amount of flash space. The trade-off is an increase in runtime instructions when running macros. It does make the code a bit harder to read, as well as maintain. For configs that use send_string() et al, it saves ~100 bytes. * Switch to macro and common definition Rewrite the array declarations so both the unpacked (original) and packed LUT arrays can use the same value definitions. This is done by defining a macro that "knows what to do". This makes the code much easier to read and maintain. * Fix macro typos and improve perf Pack the bits in a more efficient order for extraction. And also fix the copy/paste error in the macro... * Switch fully to packed LUT Some minor reformatting. Compile tested all sendstring_xyz.h to make sure they were converted properly. Also checked that an unconverted version would generate a compile error. * Apply whitespace suggestions from code review Co-Authored-By: Ryan <fauxpark@gmail.com> Co-authored-by: Ryan <fauxpark@gmail.com>
* Prune out pure software pwm && custom driver && remove wrapping ↵Joel Challis2020-03-011-284/+241
| | | | BACKLIGHT_PIN (#8041)
* Fix recent clang-format breaking quantum.c (#8282)Joel Challis2020-03-011-2/+2
|
* format code according to conventions [skip ci]QMK Bot2020-03-011-1/+1
|
* Remove duplicate BRTG case (#8277)Ryan2020-03-011-5/+0
|
* 2020 February 29 Breaking Changes Update (#8064)James Young2020-02-2915-332/+812
|
* Add support for delays in send_string. (#8244)Nick Brassel2020-02-272-29/+60
|
* Split - Avoid race condition during matrix_init_quantum (#8235)Joel Challis2020-02-253-17/+19
| | | | | | * Avoid race condition during matrix_init_quantum * spelling is hard
* `send_unicode_string()`: Add support for code points > 0xFFFF (#8236)Ryan2020-02-254-25/+21
|
* A proper `send_string()` for the Unicode feature (#8155)Ryan2020-02-242-0/+50
|
* Add mouse support to SEND_STRING (#8223)Joel Challis2020-02-231-0/+36
| | | | | | * Add mouse support to SEND_STRING * add short forms
* Add Danish keymap and sendstring LUT (#8218)Ryan2020-02-212-0/+252
|
* Add Turkish keymap aliases and sendstring LUT (#7676)Ryan2020-02-214-0/+551
| | | | | | * Add Turkish keymap aliases and sendstring LUT * Split into F and Q layouts
* Add Arm Teensys to mcu_selection.mk (#8026)Ryan2020-02-211-0/+82
| | | | | | | | * Add Arm Teensys to mcu_selection.mk * Roll back halfkeyboard keymap changes * Remove extra newline
* Allow 30us matrix delay to be keyboard/user overridable (#8216)Joel Challis2020-02-213-6/+11
| | | | | | | | * Allow 30us matrix delay to be configurable via define * Move wait logic to matrix_common * Move wait logic to matrix_common - fix wait includes
* dynamic keymap sanity check (#8181)Wilba2020-02-171-4/+20
|
* Convert f072 backlight build error to message (#8177)Joel Challis2020-02-161-1/+1
|
* Fix RESET keycode on some STM32F072 keyboards (#8134)Joel Challis2020-02-131-1/+1
| | | | | | | | | | | | | | * Add f072 board files with 'enter_bootloader_mode_if_requested' support * rename default f072 board file to GENERIC_STM32_F072XB * Remove board files * Add bootloader def * Update generic f072 board paths * Revert wrong deletion
* Align split_common/matrix.c with matrix.c (#8153)Joel Challis2020-02-121-8/+11
|
* Reduce SPLIT_USB_TIMEOUT by 500ms (#7637)Joel Challis2020-02-041-4/+8
| | | | | | | | | | * Update SPLIT_USB_TIMEOUT -500ms * Align keyboard level SPLIT_USB_TIMEOUT defaults * Align keyboard level SPLIT_USB_TIMEOUT_POLL * Review fixes
* Relocate grave keycode processing (#8082)Joel Challis2020-02-044-52/+98
| | | | | | | | * Relocate grave keycode processing * Tidy up code * Refactor grave -> grave_esc
* Ensure setPinInput actually sets input high-Z (#6237)Mikkel Jeppesen2020-01-262-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | * Ensure setPinInput actually sets input high-z * Fixed _PIN_ADDRESS Macro arguments as recommended by vomindoraan * Fixed instances of setInput to use new behavour * Changed kmac matrix to use input with pullups * Update keyboards/gh60/revc/revc.h Co-Authored-By: fauxpark <fauxpark@gmail.com> * Fixed input state for unselect_rows * fixed merge conflict * Updated all instances of older uses of setPinInput() * Fixed naming mistake Co-authored-by: fauxpark <fauxpark@gmail.com>
* Update split serial code to use driver pattern (#7990)Joel Challis2020-01-242-570/+0
| | | | | | * Move avr serial code to drivers * Update src+= serial.c to driver pattern
* Add customisable EEPROM driver selection (#7274)Nick Brassel2020-01-242-4/+6
| | | | | | | | | - uprintf -> dprintf - Fix atsam "vendor" eeprom. - Bump Kinetis K20x to 64 bytes, too. - Rollback Kinetis to 32 bytes as partitioning can only be done once. Add warning about changing the value. - Change RAM-backed "fake" EEPROM implementations to match eeconfig's current usage. - Add 24LC128 by request.
* format code according to conventions [skip ci]QMK Bot2020-01-202-6/+4
|
* Add VIA support for QMK backlight, QMK RGBLight (#7911)Wilba2020-01-206-28/+260
| | | | | | * Add VIA support for QMK backlight, QMK RGBLight * clang-format changes
* Remove all references to "CUSTOM_MATRIX" as a diode direction (#7937)fauxpark2020-01-191-1/+0
|
* Run clang-format manually to fix recently changed files (#7934)Joel Challis2020-01-1911-216/+168
| | | | | | | | * Run clang-format manually to fix recently changed files * Run clang-format manually to fix recently changed files - revert template files * Run clang-format manually to fix recently changed files - format off for ascii_to_keycode_lut
* Enforce definition of `DIODE_DIRECTION` for non-custom matrix boards (#7915)fauxpark2020-01-192-4/+16
| | | | | | | | | | * Enforce definition of `DIODE_DIRECTION` for non-custom matrix boards * Define diode direction for failing boards * Matching parentheses * Put onekey diode directions in top level config
* Move rgblight and backlight task to common location (#7733)Joel Challis2020-01-191-5/+1
|
* Configuration values for starting HSV and speed (#7740)Rob Haswell2020-01-181-2/+19
| | | | | | | | | | * Define default HSV and speed for RGB matrix. * Documentation for configuration values RGB_MATRIX_STARTUP_HUE, RGB_MATRIX_STARTUP_SAT and RGB_MATRIX_STARTUP_VAL. * Document RGB_MATRIX_STARTUP_SPD. * Preserve the ordering.
* switching to you know whats up mode (#7921)Jeremy Bernhardt2020-01-172-4/+4
|
* Fix CUSTOM_MATRIX lite matrix_scan return code (#7908)Joel Challis2020-01-151-1/+1
|
* Migrate more custom matrix 'lite' code to core (#7863)Joel Challis2020-01-153-28/+52
| | | | | | | | * Migrate more custom matrix lite code to core * Align function names * fix up MATRIX_MASKED
* Relocate common backlight functionally (#7273)Joel Challis2020-01-135-76/+52
|
* RGB matrix effect - left-right gradient (#7742)Rob Haswell2020-01-072-0/+23
| | | | | | | | | | | | * Left-right gradient. * Update the comment to match the new functionality. * CPP does integer division so this round is not necessary. * The x-range is actually 224, update comment and use bit-shifting again. * Update docs with gradient left-right effect and associated "DISABLE" option.
* Move some common matrix code to a common location (#7699)Joel Challis2020-01-044-154/+94
| | | | | | | | | | * Move some common matrix code to a common location * Refactor some 'custom_matrix_helper' logic to use custom matrix lite * Fix build for kinesis/stapelberg - abuse of vpath was picking up matrix.c from core when custom matrix was enabled * Add validation for CUSTOM_MATRIX
* VIA Configurator Refactor (#7268)Wilba2020-01-035-27/+594
| | | | | | | | | | | | | | | | | | | | | | | | * VIA Refactor * Remove old code * review changes * review changes * Fix cannonkeys/satisfaction75/prototype:via build * Add via.h to quantum.h * Move backlight init to after backlight config load * Merge branch 'master' into via_refactor_pr * Update user's rules.mk to new way of enabling VIA * Added id_switch_matrix_state * Review changes
* Use White channel on RGBW LEDs (#7678)Drashna Jaelre2019-12-314-3/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Use White channel on RGBW LEDs Co-authored-by: kwerdenker <sebastian.spindler@gmail.com> * Manually apply white channel to array * Move where convert_rgb_to_rgbw is called * Fix type for rgbw led struct * Add changes to Ergodox EZ can revert if deemed necessary * Revert "Add changes to Ergodox EZ" This reverts commit aa44db198d40d758ca10470eb94615513592d1dd. * Revert "Fix type for rgbw led struct" This reverts commit c5c744cba040201cc0d124400773cf13f8a2cf22. * Revert "Move where convert_rgb_to_rgbw is called" This reverts commit cd7f17caf6dd30731c54b3be54490fe4519444f9. * Revert changes and fix up functions * Enable white channel for Ergodox EZ as well * Only run conversion of rgblight is enabled Co-authored-by: kwerdenker <sebastian.spindler@gmail.com>
* Add rules.mk defaults for f103,f072,f042 (#7704)Joel Challis2019-12-281-10/+104
| | | | | | | | | | | | | | * Add rules.mk defaults for f103,f072,f042 * Add rules.mk defaults for f103,f072,f042 - remove comment * Add rules.mk defaults for f103,f072,f042 - align USE_FPU * Reset MCU to avoid build issues * Move essential config values to top and remove ability for override * Align DFU_SUFFIX_ARGS order with DFU_ARGS