summaryrefslogtreecommitdiff
path: root/quantum/rgb_matrix_drivers.c
AgeCommit message (Collapse)Author
2021-06-22Move LED/RGB Matrix code into their own directories (#13257)Ryan
2021-06-10GMMK Pro RGB Support (#13147)Gigahawk
* Enable SPI1 for GMMK pro * Setup initial boilerplate for new LED driver * RGB matrix minimally functional * Map full LED matrix * Return keymap to default * Fix printscreen LED mapping * Reduce max brightness * Default values for AW20216 * Add documentation for AW20216 * Disable console and warnings * Run cformat * Update drivers/awinic/aw20216.h Co-authored-by: Drashna Jaelre <drashna@live.com> * make aw struct match issi struct Co-authored-by: Drashna Jaelre <drashna@live.com> * add led location defines Co-authored-by: Drashna Jaelre <drashna@live.com> * Use led pin definitions in keyboard.c * Add driver indices to led map * Fix elif typo * Run cformat * Update docs * Fix typo in docs * Document global brightness limits Co-authored-by: Drashna Jaelre <drashna@live.com>
2021-05-29run: qmk cformat --core-onlyJames Young
2021-05-21Add support for up to 4 IS31FL3733 drivers (#12342)Donald Kjer
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
2020-11-05Add support for 4 IS31FL3731 devices (#10860)X-Bows Tech
This is a simple change.Support for IS31FL3731 has been changed from 2 to 4.
2020-10-04format code according to conventions [skip ci]QMK Bot
2020-09-23Allow the use of a single IS31FL3731 LED drivercmdremily
2020-08-25Compiler warning when using WS2812 (#9955)Drashna Jaelre
Specifically, when rgb matrix is enabled and using the ws2812 driver, and rgb light is enabled at the same time, print a message about coexistance because it can cause issues, since you cannot change pins/config for the WS2812 driver.
2020-07-13Fix RGB Matrix using RGBW WS2812 LEDs (#9705)Drashna Jaelre
This should be a pointer, as that is what the function expects.
2020-06-22`qmk cformat` (#9500)Nick Brassel
2020-06-20Change `led` variable in rgb_matrix_drivers to avoid conflicts (#9412)Drashna Jaelre
* Change `led` to `led_matrix` in rgb_matrix_drivers Is a minor change that only affects the driver file. However, this will allow somebody to run rgblight along side rgb matrix using the ws2812 driver, as well. Specifically, so you can use the custom driver for rgblight to set a different pin (barring a change to the `ws2812_setleds` function). Courtesy of discord conversion: https://discordapp.com/channels/440868230475677696/568161140534935572/721555623191248906 * Change name to be super specific * Update rgb_matrix_drivers.c
2020-06-20Support IS31FL3741 and IS31FL3741A. (#9201)MelGeek
2019-12-31Use White channel on RGBW LEDs (#7678)Drashna Jaelre
* 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>
2019-11-09Unify RGB and RGBW commands (#7297)Drashna Jaelre
* Fix unicode in comments Co-Authored-By: fauxpark <fauxpark@gmail.com> * Remove separate RGBW implementation for a unified function * Set White to 0 in RGBW LEDs This is just to get this working, later, proper brightness can be handled elsewhere. * Use us instead of nanoseconds(?) since it renders correctly on web * Remove RGBW function from arm/ws2812.h * Remove RGBW function from arm/ws2812.c * Formatting changes * Add doc info
2019-10-29Reduce duplication for ARM/AVR ws2812 RGB Matrix driver (#7180)Joel Challis
* Reduce duplication for ARM/AVR ws2812 rgb_matrix driver * Reduce duplication for ARM/AVR ws2812 rgb_matrix driver - Fix setled_all use of r,g,b
2019-08-30clang-format changesskullY
2019-07-21Refactoring wilba.tech PCBs, updating Rama Works U80-A (#6272)Wilba
* Added WT65-B, WT75-B, minor fixes * Update keyboards/wilba_tech/wt65_b/config.h Co-Authored-By: Drashna Jaelre <drashna@live.com> * Update keyboards/wilba_tech/wt65_b/readme.md Co-Authored-By: fauxpark <fauxpark@gmail.com> * Update keyboards/wilba_tech/wt75_b/config.h Co-Authored-By: Drashna Jaelre <drashna@live.com> * Change DEBOUNCING_DELAY to DEBOUNCE * Change DEBOUNCING_DELAY to DEBOUNCE * Move Zeal60/Zeal65 files to keyboards/wilba_tech * Change DEBOUNCING_DELAY to DEBOUNCE * Refactoring zeal60 code to wilba_tech * Moved Rama Works PCBs to wilba_tech * Rename Rama Works files * Cleanup info.json * Cleanup readme.md * Cleanup USB device strings * U80-A RGB matrix, IS31FL3731 driver changes * Fixed #include from keyboards/zeal60
2019-05-15NK65 Addition (#5865)yiancar
* Nk65 initial commit * Minor fix for compatibility * Make everything pretty * Update keyboards/nk65/config.h Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Update keyboards/nk65/readme.md Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Chmod Dummy * Update getting_started_introduction.md * Revert "Update getting_started_introduction.md" This reverts commit daf446acf7ae4ae00488b389ce04f2cfca708d44.
2019-05-01Fixing incorrect usage of RGBLED_NUM in ws2812 driver when used with RGB ↵XScorpion2
Matrix (#5744)
2019-04-14Features/ws2812 matrix driver (#5418)XScorpion2
* WS2812 driver implementation for RGB Matrix * Added driver configuration docs
2019-04-08Adds the Planck EZ, 3737 RGB, fixes out-of-tune notes (#5532)Jack Humbert
* RGB Matrix overhaul Breakout of animations to separate files Integration of optimized int based math lib Overhaul of rgb_matrix.c and animations for performance * Updating effect function api for future extensions * Combined the keypresses || keyreleases define checks into a single define so I stop forgetting it where necessary * Moving define RGB_MATRIX_KEYREACTIVE_ENABLED earlier in the include chain * Adds the Planck EZ, 3737 RGB, fixes out-of-tune notes * fix bug in quantum/rgb_matrix_drivers.c Co-Authored-By: jackhumbert <jack.humb@gmail.com> * update command setting to the correct default * correct rgb config * remove commented-out lines * update docs for the 3737 * Update docs/feature_rgb_matrix.md Co-Authored-By: jackhumbert <jack.humb@gmail.com>
2018-09-27RGB Matrix refactoring to open up for new drivers (#3913)James Laird-Wah
* rgb_matrix: use a driver ops struct This is intended to avoid #ifdef proliferation on adding more drivers, eg. model01, which use different architectures. * rgb_matrix: document driver struct members * rgb_matrix: remove unused LED testing code * rgb_matrix: don't build into IS31x drivers unless being used * rgb_matrix: refactor make config options This ensures that the necessary files are included for any custom RGB_MATRIX_ENABLE value, without having to add entries here for specific boards. This particularly affects model01 because its controller is integrated and won't be used anywhere else, so it's preferable not to put it in common_features.mk. This now validates the value of RGB_MATRIX_ENABLE. It was necessary to fix an error in ergodox_ez rules.mk using the wrong comment separator, yielding an invalid value. * IS31x drivers: don't write the control registers all the time This is only needed when they are changed. This is done in init() and board- or keymap-specific code is free to make further changes. * rgb_matrix: move structs from chip drivers to rgb_matrix_drivers.c This approach is specific to the rgb_matrix functionality, so keep it neatly separated from the raw chip drivers.