summaryrefslogtreecommitdiff
path: root/quantum/rgb_matrix
AgeCommit message (Collapse)Author
2022-09-23Change `DRIVER_LED_COUNT` to `{LED,RGB}_MATRIX_LED_COUNT` (#18399)Ryan
2022-09-19Merge remote-tracking branch 'origin/master' into developQMK Bot
2022-09-19Fix int8_t overflow in RGB heatmap effect (#18410)Marius Renner
2022-08-30Use a macro to compute the size of arrays at compile time (#18044)Jeff Epler
* Add ARRAY_SIZE and CEILING utility macros * Apply a coccinelle patch to use ARRAY_SIZE * fix up some straggling items * Fix 'make test:secure' * Enhance ARRAY_SIZE macro to reject acting on pointers The previous definition would not produce a diagnostic for ``` int *p; size_t num_elem = ARRAY_SIZE(p) ``` but the new one will. * explicitly get definition of ARRAY_SIZE * Convert to ARRAY_SIZE when const is involved The following spatch finds additional instances where the array is const and the division is by the size of the type, not the size of the first element: ``` @ rule5a using "empty.iso" @ type T; const T[] E; @@ - (sizeof(E)/sizeof(T)) + ARRAY_SIZE(E) @ rule6a using "empty.iso" @ type T; const T[] E; @@ - sizeof(E)/sizeof(T) + ARRAY_SIZE(E) ``` * New instances of ARRAY_SIZE added since initial spatch run * Use `ARRAY_SIZE` in docs (found by grep) * Manually use ARRAY_SIZE hs_set is expected to be the same size as uint16_t, though it's made of two 8-bit integers * Just like char, sizeof(uint8_t) is guaranteed to be 1 This is at least true on any plausible system where qmk is actually used. Per my understanding it's universally true, assuming that uint8_t exists: https://stackoverflow.com/questions/48655310/can-i-assume-that-sizeofuint8-t-1 * Run qmk-format on core C files touched in this branch Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2022-08-11Refactor Pixel Fractal effect (#17602)Albert Y
* Refactor effect with smaller array * Add RGB_MATRIX_USE_LIMITS call * Remove spaces Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-07-14Add LED limit call (#17679)Albert Y
2022-07-14Fix the use of LED limits (#17678)Albert Y
2022-07-14[Code] Add solid reactive gradient mode (#17228)Albert Y
2022-07-12Update LED/RGB Matrix flag function behavior (#17651)Drashna Jaelre
2022-06-29RGB Matrix Heatmap - Skip positions with NO_LED (#17488)Dasky
2022-06-21Fix RGB heatmap to use XY positions and use correct led limits (#17184)Dasky
* Fix RGB heatmap to use XY positions * lower effect area limit and make configurable * tidy up macro * Fix triggering in both directions. * add docs * fix bug when decreasing value * performance tweak
2022-04-19Fixes #16705 : digital rain follows val (#16716)KoenGoe
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-04-16Heatmap incorrect matrix effect workaround (#16315)Albert Y
2022-02-12Format code according to conventions (#16322)QMK Bot
2022-02-11Fix right side ws2812 leds having two indices (#15985)Dasky
* Fix right side leds having two indices * remove redundant left check
2022-02-06Add RGB matrix & LED Matrix support for IS31FL3742A, IS31FL3743A, ↵MasterSpoon
IS31FL3745, IS31FL3746A (#14989) Co-authored-by: Xelus22 <17491233+Xelus22@users.noreply.github.com>
2022-02-04RGB Matrix: Reload from EEPROM (#15923)Adam Lickel
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2022-02-04Format code according to conventions (#16211)QMK Bot
2022-02-05[Core] Add Pixel Flow RGB matrix effect (#15829)Albert Y
* Initial PIXEL FLOW matrix effect commit * Commit suggested use of rgb_matrix_check_finished_leds Co-authored-by: Sergey Vlasov <sigprof@gmail.com> * Code change support for split RGB Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2022-02-04Merge remote-tracking branch 'origin/master' into developQMK Bot
2022-02-05Revert "[Core] Add Pixel Flow RGB matrix effect (#15829)" (#16209)Nick Brassel
This reverts commit e8fa329073d8752cad9b11b90287fd20f130ac6f.
2022-02-04Merge remote-tracking branch 'origin/master' into developQMK Bot
2022-02-05[Core] Add Pixel Flow RGB matrix effect (#15829)Albert Y
* Initial PIXEL FLOW matrix effect commit * Commit suggested use of rgb_matrix_check_finished_leds Co-authored-by: Sergey Vlasov <sigprof@gmail.com> * Code change support for split RGB Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2022-01-17Add init function to clear previous effect (#15815)Albert Y
2021-12-27fix RGB_DISABLE_TIMEOUT flicker on split keyboards (#14954)Erik Berthold
2021-11-17Format code according to conventions (#15195)QMK Bot
2021-11-16Rename RGB fractal (#15174)Albert Y
Co-authored-by: filterpaper <filterpaper@localhost>
2021-11-15Require explicit enabling of RGB Matrix modes (#15018)Drashna Jaelre
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-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-10-10Clean up LED/RGB Matrix driver config (#14760)Ryan
2021-10-08Put back eeconfig_update_ functions (#14751)Joel Challis
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-09-15[Bug] Fix IS31fl3741 driver to accept 1 or 2 addresses (#14451)Drashna Jaelre
Co-authored-by: Joel Challis <git@zvecr.com>
2021-08-20[Bug] Fix RGB/LED Matrix Suspend code (#14084)Drashna Jaelre
2021-08-18Rgb matrix/enable modes explicitly (#13758)Drashna Jaelre
* Change animations to require explicet activation * Add support for legacy config * Make default for now * Add LED Matrix support * change LED Matrix docs
2021-07-27Align AW20216 driver (#13712)Joel Challis
* Align AW20216 driver * Update drivers/awinic/aw20216.h Co-authored-by: Ryan <fauxpark@gmail.com> * Review comments * formatting fixes * stop if start failed? * review comments Co-authored-by: Ryan <fauxpark@gmail.com>
2021-07-17Revert "Add rgblight to RGB Matrix VPATH" (#13559)Ryan
2021-07-16Fix LED Hit Counter for LED/RGB Matrix (#12674)Johannes Choo
2021-07-15Dual RGB Matrix IS31FL3737 driver support to address #13442 (#13457)Chris Cullin
* initial commit * removed changes to write_pwm_buffer * backward compatbility added * fixed issue with backward compatibility * documentation update * removed unneccessary comment. branched from master * updated per comments #13457 * removed blank line * cformat on diff files
2021-06-23Merge remote-tracking branch 'origin/master' into developQMK Bot
2021-06-22Move LED/RGB Matrix code into their own directories (#13257)Ryan