summaryrefslogtreecommitdiffstats
path: root/quantum/quantum.h
Commit message (Collapse)AuthorAgeFilesLines
* [Core] Add Repeat Key ("repeat last key") as a core feature. (#19700)Pascal Getreuer2023-05-201-0/+5
| | | | | Co-authored-by: casuanoob <96005765+casuanoob@users.noreply.github.com> Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
* Add a user callback for pre process record (#20584)Albert Y2023-05-131-0/+3
|
* Remove use of keymap.h (#20004)Joel Challis2023-03-271-1/+6
|
* Refactor Leader key feature (#19632)Ryan2023-02-131-0/+1
| | | | Co-authored-by: Drashna Jaelre <drashna@live.com>
* [Core] Tri Layer Keys (#19795)Drashna Jaelre2023-02-121-3/+4
| | | | | | | Co-authored-by: wilba <wilba@wilba.tech> Co-authored-by: Pablo Martínez <58857054+elpekenin@users.noreply.github.com> Co-authored-by: Joel Challis <git@zvecr.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
* Strip out more of config_common (#19722)Joel Challis2023-01-301-1/+1
|
* Digitizer feature improvements (#19034)Ryan2022-11-121-0/+4
|
* Remove thermal printer. (#18959)Nick Brassel2022-11-061-4/+0
|
* [Core] Add getreuer's Autocorrect feature to core (#15699)Drashna Jaelre2022-09-171-0/+4
| | | Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>
* Refactor Unicode feature (#18333)Ryan2022-09-121-0/+1
|
* implement `tap_code16_delay` (#17748)JayceFayne2022-07-231-0/+1
|
* Feature-ify Send String (#17275)Ryan2022-07-021-1/+4
|
* Removes terminal from QMK. (#17258)Nick Brassel2022-05-301-6/+0
|
* [Core] Add Caps Word feature to core (#16588)Pascal Getreuer2022-05-141-0/+5
| | | | Co-authored-by: precondition <57645186+precondition@users.noreply.github.com> Co-authored-by: Drashna Jaelre <drashna@live.com>
* [Core] Add Reboot keycode to core (#15990)Drashna Jaelre2022-05-141-0/+1
|
* Implement XAP 'secure' core requirements (#16843)Joel Challis2022-04-161-0/+5
| | | | Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
* Quantum Painter (#10174)Nick Brassel2022-04-131-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Install dependencies before executing unit tests. * Split out UTF-8 decoder. * Fixup python formatting rules. * Add documentation for QGF/QFF and the RLE format used. * Add CLI commands for converting images and fonts. * Add stub rules.mk for QP. * Add stream type. * Add base driver and comms interfaces. * Add support for SPI, SPI+D/C comms drivers. * Include <qp.h> when enabled. * Add base support for SPI+D/C+RST panels, as well as concrete implementation of ST7789. * Add support for GC9A01. * Add support for ILI9341. * Add support for ILI9163. * Add support for SSD1351. * Implement qp_setpixel, including pixdata buffer management. * Implement qp_line. * Implement qp_rect. * Implement qp_circle. * Implement qp_ellipse. * Implement palette interpolation. * Allow for streams to work with either flash or RAM. * Image loading. * Font loading. * QGF palette loading. * Progressive decoder of pixel data supporting Raw+RLE, 1-,2-,4-,8-bpp monochrome and palette-based images. * Image drawing. * Animations. * Font rendering. * Check against 256 colours, dump out the loaded palette if debugging enabled. * Fix build. * AVR is not the intended audience. * `qmk format-c` * Generation fix. * First batch of docs. * More docs and examples. * Review comments. * Public API documentation.
* Joystick feature updates (#16732)Ryan2022-03-261-0/+4
| | | | | | | * Joystick feature updates * Move new functions to joystick.h * Docs
* Align location of some host led logic (#15954)Joel Challis2022-01-221-5/+0
| | | | | | | | | | | | | * Align location of host led logic * Move more * align ifdefs * Fix up includes * Move callback defs * Convert comment to build message
* Add missing define for unicode common (#15416)Drashna Jaelre2021-12-061-0/+4
|
* New feature: `DYNAMIC_TAPPING_TERM_ENABLE` (#11036)precondition2021-11-261-0/+4
| | | | | | | | | * New feature: `DYNAMIC_TAPPING_TERM_ENABLE` 3 new quantum keys to configure the tapping term on the fly. * Replace sprintf call in tapping_term_report by get_u16_str * Replace tab with 4 spaces
* Add uint to char functions (#15244)Drashna Jaelre2021-11-231-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | * Add uint to char functions * appease the all mighty lint * Further appease Lint * Update functions * Add doxygen comment * Update quantum/quantum.c Co-authored-by: Nick Brassel <nick@tzarc.org> * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> * Add declaration for get_numeric_string * fix formatting and bug Co-authored-by: Nick Brassel <nick@tzarc.org>
* Add support for deferred executors. (#14859)Nick Brassel2021-11-151-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* Rework and expand Pointing Device support (#14343)Drashna Jaelre2021-11-141-0/+4
| | | Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
* Remove sysex API (#14723)Ryan2021-10-061-2/+0
|
* Add Support for USB programmable buttons (#12950)Thomas Weißschuh2021-09-151-0/+4
|
* Revert 14083 && 14144 (#14150)Joel Challis2021-08-251-5/+11
| | | | | | | | | * 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.
* Tidy up quantum.c now some of tmk_core has been merged (#14083)Joel Challis2021-08-241-11/+5
|
* [Core] Refactor OLED to allow easy addition of other types (#13454)Xelus222021-08-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* Merge remote-tracking branch 'origin/master' into developQMK Bot2021-08-061-1/+1
|\
| * Avoid name conflicts with usb_hid Arduino code (#13870)Joel Challis2021-08-061-1/+1
| | | | | | | | | | * Avoid name conflicts with usb_hid Arduino code * Fix tests
* | matrix_scan_x -> x_task (#13748)Joel Challis2021-07-281-4/+0
| |
* | Haptic: driver-> feature (#13713)Joel Challis2021-07-251-0/+1
| |
* | Merge remote-tracking branch 'upstream/master' into developNick Brassel2021-07-251-10/+1
|\|
| * Refactor some platform dependent logic (#13675)Joel Challis2021-07-241-10/+1
| |
* | Merge remote-tracking branch 'origin/master' into developQMK Bot2021-07-161-4/+0
|\|
| * remove `#include "rgblight.h"` when `defined(RGB_MATRIX_ENABLE)` from ↵Takeshi ISHII2021-07-161-4/+0
| | | | | | | | quantum.h (#13555)
| * 2021 May 29 Breaking Changes Update (#13034)James Young2021-05-291-46/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add Per Key functionality for AutoShift (#11536) * LED Matrix: Reactive effect buffers & advanced indicators (#12588) * [Keyboard] kint36: switch to sym_eager_pk debouncing (#12626) * [Keyboard] kint2pp: reduce input latency by ≈10ms (#12625) * LED Matrix: Split (#12633) * [CI] Format code according to conventions (#12650) * feat: infinite timeout for leader key (#6580) * feat: implement leader_no_timeout logic * docs(leader_key): infinite leader timeout docs * Format code according to conventions (#12680) * Update ADC driver for STM32F1xx, STM32F3xx, STM32F4xx (#12403) * Fix default ADC_RESOLUTION for ADCv3 (and ADCv4) Recent ChibiOS update removed ADC_CFGR1_RES_10BIT from the ADCv3 headers (that macro should not have been there, because ADCv3 has CFGR instead of CFGR1). Fix the default value for ADC_RESOLUTION to use ADC_CFGR_RES_10BITS if it is defined (that name is used for ADCv3 and ADCv4). * Update ADC docs to match the actually used resolution ADC driver for ChibiOS actually uses the 10-bit resolution by default (probably to match AVR); fix the documentation accordingly. Also add both ADC_CFGR_RES_10BITS and ADC_CFGR1_RES_10BIT constants (these names differ according to the ADC implementation in the particular MCU). * Fix pinToMux() for B12 and B13 on STM32F3xx Testing on STM32F303CCT6 revealed that the ADC mux values for B12 and B13 pins were wrong. * Add support for all possible analog pins on STM32F1xx Added ADC mux values for pins A0...A7, B0, B1, C0...C5 on STM32F1xx (they are the same at least for STM32F103x8 and larger F103 devices, and also F102, F105, F107 families). Actually tested on STM32F103C8T6 (therefore pins C0...C5 were not tested). Pins F6...F10, which are present on STM32F103x[C-G] in 144-pin packages, cannot be supported at the moment, because those pins are connected only to ADC3, but the ChibiOS ADC driver for STM32F1xx supports only ADC1. * Add support for all possible analog pins on STM32F4xx Added ADC mux values for pins A0...A7, B0, B1, C0...C5 and optionally F3...F10 (if STM32_ADC_USE_ADC3 is enabled). These mux values are apparently the same for all F4xx devices, except some smaller devices may not have ADC3. Actually tested on STM32F401CCU6, STM32F401CEU6, STM32F411CEU6 (using various WeAct “Blackpill” boards); only pins A0...A7, B0, B1 were tested. Pins F3...F10 are inside `#if STM32_ADC_USE_ADC3` because some devices which don't have ADC3 also don't have the GPIOF port, therefore the code which refers to Fx pins does not compile. * Fix STM32F3xx ADC mux table in documentation The ADC driver documentation had some errors in the mux table for STM32F3xx. Fix this table to match the datasheet and the actual code (mux settings for B12 and B13 were also tested on a real STM32F303CCT6 chip). * Add STM32F1xx ADC pins to the documentation * Add STM32F4xx ADC pins to the documentation * Add initial support for tinyuf2 bootloader (when hosted on F411 blackpill) (#12600) * Add support for jumping to tinyuf2 bootloader. Adds blackpill UF2 example. * Update flashing.md * Update chconf.h * Update config.h * Update halconf.h * Update mcuconf.h * eeprom driver: Refactor where eeprom driver initialisation (and EEPROM emulation initialisation) occurs to make it non-target-specific. (#12671) * Add support for MCU = STM32F446 (#12619) * Add support for MCU = STM32F446 * Update platforms/chibios/GENERIC_STM32_F446XE/configs/config.h * Restore mcuconf.h to the one used by RT-STM32F446RE-NUCLEO64 * stm32f446: update mcuconf.h and board.h for 16MHz operation, with USB enabled, and other peripherals disabled. * Format code according to conventions (#12682) * Format code according to conventions (#12687) * Add STM32L433 and L443 support (#12063) * initial L433 commit * change to XC * fix L433 * disable all peripherals * update system and peripheral clocks * 433 change * use its own board files * revert its own board files * l433 specific change * fix stm32l432xx define * remove duplicate #define * fix bootloader jump * move to L443xx and add i2c2, spi2, usart3 to mcuconf.h * move to L443 * move to L443 * fix sdmmc in mcuconf.h * include STM32L443 * add L443 * Include L443 in compatible microcontrollers * Include L443 in compatible microcontrollers * Update config bootloader jump description * Update ChibiOS define reasoning * Update quantum/mcu_selection.mk * fix git conflict * Updated Function96 with V2 files and removed chconf.h and halconf.h (#12613) * Fix bad PR merge for #6580. (#12721) * Change RGB/LED Matrix to use a simple define for USB suspend (#12697) * [CI] Format code according to conventions (#12731) * Fixing transport's led/rgb matrix suspend state logic (#12770) * [CI] Format code accordin