summaryrefslogtreecommitdiffstats
path: root/quantum
Commit message (Collapse)AuthorAgeFilesLines
...
* | [Core] Add support for RISC-V builds and GD32VF103 MCU (#12508)Stefan Kerkmann2021-10-181-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* | Further tidy up of STM32 eeprom emulation (#14591)Joel Challis2021-10-161-0/+5
| |
* | Fix misplaced endif in led_matrix_drivers.c (#14785)Ryan2021-10-101-4/+4
| |
* | Clean up LED/RGB Matrix driver config (#14760)Ryan2021-10-102-123/+139
| |
* | Remove QWIIC_DRIVERS (#14174)Joel Challis2021-10-091-10/+0
| |
* | Put back eeconfig_update_ functions (#14751)Joel Challis2021-10-082-0/+4
| |
* | Move converter specific tmk_core protocols (#14743)Joel Challis2021-10-071-10/+0
| |
* | Correct the Turkish F '?' keycode (TR_QUES) (#14740)precondition2021-10-071-1/+1
| | | | | | define TR_QUES S(TR_ASTR) // ? → define TR_QUES S(TR_SLSH) // ?
* | Remove SERIAL_LINK feature (#14727)Joel Challis2021-10-0725-2203/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* | Reuse of EEPROM debounce logic (#14699)Joel Challis2021-10-073-44/+46
| | | | | | | | | | | | | | | | | | * reuse rgb debounce logic * Refactor led matrix * Remove log line * timeout should not be hard coded
* | Purge uGFX. (#14720)Nick Brassel2021-10-0722-2115/+0
| | | | | | | | | | | | | | * Purge uGFX. * Remove remnants of visualizer. * Remove remnants of uGFX.
* | Remove sysex API (#14723)Ryan2021-10-066-353/+6
| |
* | Move Audio drivers from quantum to platform drivers folder (#14308)Drashna Jaelre2021-10-069-1412/+4
| | | | | | | | | | | | | | | | | | * 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>
* | Merge remote-tracking branch 'origin/master' into developQMK Bot2021-10-061-3/+3
|\|
| * [Bug] Fix command feature if mousekey is enabled and using 3-speed setting ↵Drashna Jaelre2021-10-051-3/+3
| | | | | | | | (#14697)
* | Add LM() keys to the list of keys disabled by NO_HAPTIC_MOD (#14181)Purdea Andrei2021-10-031-0/+1
| |
* | Change `MK66F18` -> `MK66FX1M0` (#14659)Ryan2021-09-301-1/+1
| |
* | Added power tracking api (#12691)Purdea Andrei2021-09-302-0/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* | Merge remote-tracking branch 'origin/master' into developQMK Bot2021-09-291-10/+0
|\|
| * [Core] Fix "6kro enable" and clarify naming (#14563)Drashna Jaelre2021-09-291-10/+0
| | | | | | | | | | | | | | | | | | | | | | * Fix USB_6KRO_ENABLE compilation errors * Add info to docs * Rename define to be more accurate * Remove unused rule * Refixe docs
* | Remove GCC version check from song list inclusion (#14600)Drashna Jaelre2021-09-251-5/+3
| |
* | Initial pass of F405 support (#14584)Joel Challis2021-09-251-0/+32
| | | | | | | | | | | | | | | | | | * Initial pass of F405 support * remove some conf files * docs * clang
* | Add ability to use numpad digits for unicode mode UC_WIN (#14496)Marcus van Houdt2021-09-211-10/+37
| | | | | | Co-authored-by: Konstantin Đorđević <vomindoraan@gmail.com>
* | Improvements to handling of disconnected split keyboards. (#14033)Joakim Tufvegren2021-09-181-16/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Use memcmp and memcpy to compare and copy slave matrix. ...and memset to initialize `matrix` and `raw_matrix`. Increased my scan rate (while connected) by ~100 (on Ergodox Infinity). Effect on AVR is unknown. Co-authored-by: Stefan Kerkmann <karlk90@pm.me> * Fix `matrix_post_scan` signalling change on every scan while disconnected. * Undo removal of initialization of `slave_matrix`. This has the effect of increasing my Ergodox Infinity firmware size by 8 bytes instead of decreasing by 8 bytes, and lowers the scan rate while connected back to the initial value before these changes, but _might_ solve some issues on AVR. Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
* | Merge remote-tracking branch 'origin/master' into developQMK Bot2021-09-151-1/+6
|\|
| * [Bug] Fix IS31fl3741 driver to accept 1 or 2 addresses (#14451)Drashna Jaelre2021-09-151-1/+6
| | | | | | Co-authored-by: Joel Challis <git@zvecr.com>
* | Add Support for USB programmable buttons (#12950)Thomas Weißschuh2021-09-159-0/+210
| |
* | Migrate STM32_EEPROM_ENABLE to use EEPROM_DRIVER (#14433)Joel Challis2021-09-152-17/+0
| |
* | fix typo in backlight code from #14439 (#14442)Drashna Jaelre2021-09-151-1/+1
| |
* | Refactor use of _STM32_ defines (#14439)Joel Challis2021-09-152-5/+9
| |
* | Merge remote-tracking branch 'origin/master' into developQMK Bot2021-09-123-6/+9
|\|
| * Apply `TAP_CODE_DELAY` to Tap Dance key sequences (#14412)Drashna Jaelre2021-09-133-6/+9
| | | | | | | | | | * Add support to tap dances * Move default tap code defines to header file
* | Merge remote-tracking branch 'origin/master' into developQMK Bot2021-09-091-2/+2
|\|
| * `ST7565_TIMEOUT 0` and `ST7565_DISABLE_TIMEOUT` should behave the same (#14315)JayceFayne2021-09-081-1/+1
| |
| * `OLED TIMEOUT 0` and `OLED_DISABLE_TIMEOUT` should behave the same (#14302)JayceFayne2021-09-081-1/+1
| |
* | Move feature suspend logic out of platform specific code (#14210)Drashna Jaelre2021-08-301-0/+96
|/
* [Bug] Fix build error when enabling NO_HAPTIC_MOD (#14178)Purdea Andrei2021-08-301-0/+1
| | | | | Without this build would fail, if a keyboard had haptic feedback enabled, TAPPING_TOGGLE was not overridden in a config.h, and if NO_HAPTIC_MOD was defined in config.h.
* Revert 14083 && 14144 (#14150)Joel Challis2021-08-258-118/+104
| | | | | | | | | * Revert "Short term bodge for firmware size bloat (#14144)" This reverts commit a8d65473461c337fb1e168d907bfb8c3ac8fdbd0. * Revert "Tidy up quantum.c now some of tmk_core has been merged (#14083)" This reverts commit c4dbf4bf0118dd785802861beb247433b5b7411d.
* Align some quantum sub-directories (#14134)Joel Challis2021-08-2413-539/+0
| | | | | | | * Misc folder tidy * Review comments * Remove redundant entry
* Short term bodge for firmware size bloat (#14144)Joel Challis2021-08-243-4/+21
|
* Tidy up quantum.c now some of tmk_core has been merged (#14083)Joel Challis2021-08-246-101/+98
|
* [Core] Refactor OLED to allow easy addition of other types (#13454)Xelus222021-08-245-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * add docs * core changes * update keyboards to new OLED * updated users to new OLED * update layouts to new OLED * fixup docs * drashna's suggestion * fix up docs * new keyboards with oled * core split changes * remaining keyboard files * Fix The Helix keyboards oled options * reflect develop Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: mtei <2170248+mtei@users.noreply.github.com>
* eeprom_stm32: implement high density wear leveling (#12567)Donald Kjer2021-08-231-1/+1
| | | | | | | | | | | | | | | * eeprom_stm32: implement wear leveling Update EECONFIG_MAGIC_NUMBER eeprom_stm32: check emulated eeprom size is large enough * eeprom_stm32: Increasing simulated EEPROM density on stm32 * Adding utility script to decode emulated eeprom * Adding unit tests * Applying qmk cformat changes * cleaned up flash mocking * Fix for stm32eeprom_parser.py checking via signature with wrong base * Fix for nk65 keyboard Co-authored-by: Ilya Zhuravlev <whatever@xyz.is> Co-authored-by: zvecr <git@zvecr.com>
* Merge remote-tracking branch 'origin/master' into developQMK Bot2021-08-232-2/+2
|\
| * Fix US_RDQU keycode (#13464)Olli Helenius2021-08-242-2/+2
| | | | | | | | `US_RDQU` and `US_LDQU` were aliased to the same keycode. `US_RDQU` should use the right bracket.
* | adding uf2 flash support for blackpill 401 (#13968)Path Nirvana2021-08-241-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | * adding uf2 flash support for blackpill 401 * forgot to add blackpill to keyboard header file * making changes requested by drashna * fixing tzarc s comments * removing the keyboard * undo the change to dactyl_manuform.h
* | Make solo half of split keyboards (more) usable. (#13523)Joakim Tufvegren2021-08-225-73/+123
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Make solo half of split keyboards (more) usable. Using only one half of a split keyboard (that's using the split_common framework to communicate) is not a great experience, since several read timeouts per scan cycle cause an unusably slow scan rate. This change blocks all split communication attempts for 500 ms (configurable) after an error occurs, causing the scan rate to become at least _more_ usable, but might need some tweaking to work fully on most keyboards. One read timeout still needs to occur after the 500 ms has passed, and if that timeout isn't low enough, some scan cycles may still be too slow. * Fix lint complaint. * Require 25 consecutive comm errors to see comms as disconnected. The number of max errors can be overridden by defining `SPLIT_MAX_CONNECTION_ERRORS`. * Add comments to new defines, and ability to disable disconnection check. Also increase `SPLIT_MAX_CONNECTION_ERRORS` to 40, since it's divisible by most relevant numbers for the description. * Make lint happy ...again * Only update `connection_check_timer` when needed. * Add new defines to split keyboard documentation. * Move connection timeout logic to transport.c, add `is_transport_connected`. * Use split_common disconnection logic in matrix.c. Instead of doing more or less the same thing twice. * Move disconnection logic to `transport_master`. Is a cleaner implementation, and causes the scan rate while disconnected to increase instead of decrease. * Lint fixes. * Lower default `SERIAL_USART_TIMEOUT` to 20 ms. The read timeout must be low enough to not cause exessively long scan cycles when using a solo split half. 10 ms was determined from testing to work fine even with the slowest defined baudrate of 19200 (5 ms was too low for that case), so 20 ms should be fine for most cases. * Remove `SERIAL_USART_TIMEOUT` from ergodox_infinity/config.h Was somewhat mistakenly included in an earlier PR. * Fix building with `USE_I2C`. * Reduce built firmware size. Not really sure why this works, the idea was taken from tzarc's work on split disconnection. * Tweak and improve opt-out for split disconnection logic. There are now two ways to opt out from this feature: * Set `SPLIT_MAX_CONNECTION_ERRORS` to 0. This will completely disable the connection status checks (also affects the slave matrix reset logic in matrix.c, though). * Set `SPLIT_CONNECTION_CHECK_TIMEOUT` to 0. This will only disable the communication throttling while disconnected. Will make the firmware smaller. * Make split disconnection logic work with custom transports. Includes a fallback implementation for keyboards using a custom split_util.c but not a custom matrix.c (currently no such keyboard seems to be merged, though). * Remove unnecessary include of timer.h Co-authored-by: Joel Challis <git@zvecr.com> Co-authored-by: Joel Challis <git@zvecr.com>
* | Fix issues with VIA EEPROM init and bring in line with eeconfig ↵Drashna Jaelre2021-08-205-37/+58
| | | | | | | | | | functionality (#13243) Co-authored-by: Ryan <fauxpark@gmail.com>
* | Fix LED Matrix suspend code (#14090)Ryan2021-08-201-1/+1
| |
* | [Bug] Fix RGB/LED Matrix Suspend code (#14084)Drashna Jaelre2021-08-202-4/+6
| |