Commit graph

10 commits

Author SHA1 Message Date
Jack Humbert
fa4052c26e Adds the Planck EZ, 3737 RGB, fixes out-of-tune notes (#5532)
* 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>
2019-04-08 16:57:43 -07:00
skullY
1a680c1d6a cleanup 2019-02-10 15:37:12 -08:00
skullY
6b74dd6de5 led_matrix works now 2019-02-10 15:37:12 -08:00
skullY
bf2670601d compiles, but long delay on startup and problems 2019-02-10 15:37:12 -08:00
skullY
fd698c43d7 The beginning of a simple led matrix driver for is31fl3731 2019-02-10 15:37:12 -08:00
yiancar
2bfac351ed Final HS60v2 changes. (#4790)
* initial commit, this now mostly works

- RGB controls work
- Dynamic keymap still broken due to eeprom
- Via works

* STM32 eeprom update

- Update EEPROM emulation library to handle 8bit data like AVR.
- This library also allows for multiple page pairs resulting in greater EEPROM size flexibility

* hs60 changes

* HS60 hhkb added

* Update keyboards/hs60/v2/config.h

Co-Authored-By: yiancar <yiangosyiangou@cytanet.com.cy>
2019-01-06 17:22:19 -08:00
Wilba6582
66ef1e3d67 RAMA M6-B and IS31FL3218 driver (#4021)
* Initial RAMA M6-B commit.

* Moved IS31FL3218 driver, minor cleanups

* Refactor, added dynamic keymap.

* Added dynamic keymaps to RAMA M6-A

* Refactor M6-A and M6-B to use common code.

* Formatting

* Cleanup

* Cleanup

* Changes from review
2018-09-30 11:35:10 -04:00
Wilba6582
13e166d9c4 RAMA U80-A, wilba.tech WT60-A, WT65-A, WT80-A, IS31FL3736 driver (#3925)
* Initial commit of RAMA U80-A

* Initial commit of RAMA U80-A

* Moved IS31FL3736 driver, minor cleanups

* Superficial stuff

* Review changes

* Refactored to use common code.
2018-09-27 10:40:44 -04:00
James Laird-Wah
f70f45ee67 RGB Matrix refactoring to open up for new drivers (#3913)
* 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.
2018-09-27 10:40:18 -04:00
yiancar
fdd0f91527 ISSI31FL3733 driver (#3679)
* ISSI31FL3733 driver

- Addapted IS31 driver for the above driver

* fix my branch

* ISSI31FL3733 driver

- Inclusion of above ISSI led driver

* IS31fl3733 driver

- Added correct function for control registers

* Finalized support for ISSI31fl3733 led driver

- Finalized and tested driver.
- Modified i2c_master for arm due to declaration mistake.
- Fixed spaces/tabs in quantum.h file.
- Fixed spaces/tabs in common_features.mk file.
- Removed unnecessary includes from rgb_matrix.c file.
- Added local definitions for MIN and MAX macros in rgb_matrix.c file.
- Adjusted chevron effect.
- Added necessary define (RGB_3733_MATRIX_ENABLE) for makefile.
- Added necessary C define (ISSI3733) to aid with inclusion of the correct header file.
- Added documentation for the new driver.

* Driver structure update

- Changed rule includes to be more condensed (RGB_MATRIX_ENABLE = IS31FL3731) and (RGB_MATRIX_ENABLE = IS31FL3733)
- Updated documentation
- Reverted to the use of differently named functions for each driver and selecting the needed ones within rgb_matrix.c

* ISSI Drivers refractoring

- Moved issi drivers in a dedicated folder
- Updated documentation

* I2C library fix

I released the special pins incorrectly before. It is now fixed.
2018-08-28 09:03:11 -04:00