summaryrefslogtreecommitdiff
path: root/quantum
AgeCommit message (Collapse)Author
2021-11-15Require explicit enabling of RGB Matrix modes (#15018)Drashna Jaelre
2021-11-16Reimplements WPM feature to be smaller & precise (#13902)vectorstorm
* Reimplements WPM feature. - Now calculates exact WPM over the last up to three seconds of typing. - WPM_SMOOTHING removed, as it's no longer needed. - WPM_SAMPLE_SECONDS added, to specify how long a period to average WPM over, set to 5 seconds by default. - WPM_SAMPLE_PERIODS added, to specify how many sampling buffers we'll use. Each one uses one extra byte of space. Having more will lead to smoother decay of WPM values. Defaults to 50 (we're saving so many bytes of firmware space I felt like being extravagent, and this change is still a big size saving overall) - WPM_UNFILTERED option added (defaults to unset), which disables all filtering within the WPM feature. This saves some space in the firmware and also reduces latency between typing and the WPM calculation measuring it. (saves 70 bytes in my tests) - WPM_LAUNCH_CONTROL added (defaults to unset). When typing begins while the current displayed WPM value is zero, the WPM calculation only considers the time elapsed since typing began, not the whole WPM_SAMPLE_SECONDS buffer. The result of this is that the displayed WPM value much more rapidly reaches an accurate WPM value, even when results are being filtered. (costs 22 bytes in my tests) - Updates documentation to reflect changed options. Saves about 900 bytes, in my tests, compared against the previous implementation, with default settings. * Apply suggestions from code review Co-authored-by: Sergey Vlasov <sigprof@gmail.com> Co-authored-by: Trevor Powell <trevor@vectorstorm.org> Co-authored-by: Nick Brassel <nick@tzarc.org> Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2021-11-15Add support for deferred executors. (#14859)Nick Brassel
* Add support for deferred executors. * More docs. * Include from quantum.h * Cleanup. * Parameter checks * Comments. * qmk format-c * I accidentally a few words. * API name change. * Apply suggestions from code review Co-authored-by: Sergey Vlasov <sigprof@gmail.com> * Review comments. * qmk format-c * Review comments. Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2021-11-16Add needed include to pointing_device.c (#15167)Drashna Jaelre
2021-11-14Rework and expand Pointing Device support (#14343)Drashna Jaelre
Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
2021-11-13Merge remote-tracking branch 'origin/master' into developDrashna Jael're
2021-11-12add wait to unicode for win (#15061)Markus Fritsche
Co-authored-by: Markus Fritsche <fritsche.markus@gmail.com>
2021-11-03Basic keycode overhaul (#14726)Ryan
2021-11-03Remove deprecated KEYMAP alias (#15037)Joel Challis
* Remove deprecated KEYMAP alias * Remove some KEYMAP references * Remove some KEYMAP references
2021-11-02Revert to old init order for host driver (#15029)Joel Challis
* Partially revert 14888
2021-11-02Fixup LED matrix. (#15020)Nick Brassel
2021-11-02haptic: Feature to disable it when usb port is not configured or suspended. ↵Purdea Andrei
(#12692) This also add support for specifying a LED pin to indicate haptic status, and also adds support for a haptic-enable pin, which is useful to turn off the boost converter on the solenoid driver.
2021-11-02Add Pixel Rain RGB Matrix effect (#14155)Albert Y
* Add Pixel animation header file * Add Pixel animation to documentation * Add Pixel animation to core include file * Remove unintended spaces * Remove seeding of PRNG * Increase frequency of lit keys Co-authored-by: filterpaper <filterpaper@localhost>
2021-11-02Add a new led driver for Keychron's keyboards. (#14872)lalalademaxiya1
* Add a new led driver for Keychron's keyboards. * Update ckled2001.c/ckled2001.h. * Update ckled2001.c/ckled2001.h. * Update ckled2001.c/ckled2001.h. * Update ckled2001.c * Add a new led driver * Update ckled2001.c * Update ckled2001.c * Update ckled2001.c * Update ckled2001.c * Delete ckled2001.c * Create ckled2001.c * Update ckled2001.c * Update chibios-contrib Co-authored-by: keychron-dev <85598583+keychron-dev@users.noreply.github.com> Co-authored-by: lokher <lokher@gmail.com>
2021-11-02define to AUTO_SHIFT_DISABLED_AT_STARTUP (#14201)Woody
Co-authored-by: agodinhost <agodinhost@globo.com>
2021-11-02Add support for ISSI drivers on both sides of a split keyboard (#13842)Vlad K
* Gets RGB working on a split keyboard with IS31FL3733. Currently needs small tweak to re-enable WS2812 * Added helper function * Trying to integrate the function * Moved functionality into a macro * Swapped conditional for a macro everywhere * Tidying up * More code cleanup * Documentation updates * Fixed formatting via linter * Switching to a function from a macro * Fixed compile error * Fixing WS2812 behavior. UNTESTED. * Updated documentation about the driver addresses. * Fixed code for WS2812 * Trying to add in LED_MATRIX support * Updated effects for LED matrix * Updated third-party effect defines. * Ran format-c on modified files * Apply suggestions from code review Co-authored-by: Ryan <fauxpark@gmail.com> * Move to static inline. Avoids issues with gcc v8+ * Move helper function for LED_matrix to static inline to avoid issues with gcc v8+ Co-authored-by: Vlad Kvitnevskiy <vladkvit@outlook.com> Co-authored-by: Ryan <fauxpark@gmail.com>
2021-11-01Manually format develop (#15003)Joel Challis
2021-11-02Add Fractal RGB matrix effects (#12670)Albert Y
* Squashed fractal effect commit for easier rebase * Update documentation * Squashed fractal effect commit for easier rebase * Update documentation * Update doc spacing Co-authored-by: Ryan <fauxpark@gmail.com> * Update feature_rgb_matrix.md Co-authored-by: filterpaper <filterpaper@localhost> Co-authored-by: Ryan <fauxpark@gmail.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2021-11-01Fix issues with Oneshot disabling (#14934)Drashna Jaelre
2021-10-28Fix develop after recent changes (#14975)Joel Challis
* Fix sleep led issues * Fix tests
2021-10-28Relocate protocol files within tmk_core/common/ (#14972)Joel Challis
* Relocate non platform files within tmk_core/common/ * clang
2021-10-28Remove SERIAL_MOUSE (#14969)Joel Challis
2021-10-28Migrate makefile utilities to sub-directory (#14917)Joel Challis
2021-10-26Optimize matrix scanning by removing variable shifts (#14947)Chad Austin
2021-10-26Merge remote-tracking branch 'origin/master' into developQMK Bot
2021-10-26Update mcu_selection.mk with current ChibiOS path (#14909)MasterSpoon
2021-10-24Begin to carve out platform/protocol API - Migrate keyboard_* calls (#14888)Joel Challis
2021-10-20Merge remote-tracking branch 'origin/master' into developQMK Bot
2021-10-19Fix type of Tap Dance max index variable (#14887)Drashna Jaelre
2021-10-20Merge remote-tracking branch 'origin/master' into developQMK Bot
2021-10-19Make the MAGIC_TOGGLE_GUI keycode work (#14886)Sergey Vlasov
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-10-16Further tidy up of STM32 eeprom emulation (#14591)Joel Challis
2021-10-10Fix misplaced endif in led_matrix_drivers.c (#14785)Ryan
2021-10-10Clean up LED/RGB Matrix driver config (#14760)Ryan
2021-10-09Remove QWIIC_DRIVERS (#14174)Joel Challis
2021-10-08Put back eeconfig_update_ functions (#14751)Joel Challis
2021-10-07Move converter specific tmk_core protocols (#14743)Joel Challis
2021-10-07Correct the Turkish F '?' keycode (TR_QUES) (#14740)precondition
define TR_QUES S(TR_ASTR) // ? → define TR_QUES S(TR_SLSH) // ?
2021-10-07Remove SERIAL_LINK feature (#14727)Joel Challis
* Remove SERIAL_LINK * more stale paths in doxygen-todo * Fix * More refs * Update testing docs * Update doxygen-todo Co-authored-by: Ryan <fauxpark@gmail.com> Co-authored-by: Ryan <fauxpark@gmail.com>
2021-10-07Reuse of EEPROM debounce logic (#14699)Joel Challis
* reuse rgb debounce logic * Refactor led matrix * Remove log line * timeout should not be hard coded
2021-10-07Purge uGFX. (#14720)Nick Brassel
* Purge uGFX. * Remove remnants of visualizer. * Remove remnants of uGFX.
2021-10-06Remove sysex API (#14723)Ryan
2021-10-06Move Audio drivers from quantum to platform drivers folder (#14308)Drashna Jaelre
* Move Audio drivers from quantum to platform drivers folder * fix path for audio drivers Co-authored-by: Ryan <fauxpark@gmail.com> Co-authored-by: Ryan <fauxpark@gmail.com>
2021-10-06Merge remote-tracking branch 'origin/master' into developQMK Bot
2021-10-05[Bug] Fix command feature if mousekey is enabled and using 3-speed setting ↵Drashna Jaelre
(#14697)
2021-10-03Add LM() keys to the list of keys disabled by NO_HAPTIC_MOD (#14181)Purdea Andrei
2021-09-30Change `MK66F18` -> `MK66FX1M0` (#14659)Ryan
2021-09-30Added power tracking api (#12691)Purdea Andrei
* Add power tracking API to lufa and chibios targets * power.c: Pass through power state to the notify function * power: added notify_power_state_change_user too. * making it pass the PR linter * Add a POWER_STATE_NO_INIT state, that we start in before calling power_init(); * Rename *power* to *usb_power* * removing stray newline * Rename usb_power* to usb_device_state* * Update quantum/usb_device_state.h Co-authored-by: Drashna Jaelre <drashna@live.com> * Fix comment * usb_device_state.h: Don't include quantum.h, only the necessary headers. Co-authored-by: Drashna Jaelre <drashna@live.com>
2021-09-29Merge remote-tracking branch 'origin/master' into developQMK Bot