diff options
| author | yiancar <yiangosyiangou@cytanet.com.cy> | 2018-05-14 15:17:24 +0100 |
|---|---|---|
| committer | Jack Humbert <jack.humb@gmail.com> | 2018-05-14 10:17:24 -0400 |
| commit | a98a91cf1b923107e9f26df316c1ef2192ff14f7 (patch) | |
| tree | 112b22b9ee2f212b4a58e57d2e4b4906d1ef7636 /quantum/rgb_matrix.c | |
| parent | f42ec8aa866386ed0ab8faf7acf9c396aa482519 (diff) | |
| download | qmk_firmware-a98a91cf1b923107e9f26df316c1ef2192ff14f7.tar.gz qmk_firmware-a98a91cf1b923107e9f26df316c1ef2192ff14f7.zip | |
Rgb matrix fixes, I2C library can now retry if it has failed (#2943)
* Added Modular keyboards L,R and NUM
Created code modules for the 3 modules of the modular keyboard.
Original idea by MechboardsUK. Uses i2c implementation similar to lets
split
* Remove modular from master
This is to fix incorrect branching
* General fixes for RGB_matrix
- Complited speed support for all effects
- Fixed raindrop effects to initialized after toggle
- Fixed raindrop effects to use all available LEDs
- Fixed effect step reverse function
- Moved RGB_MATRIX_SOLID_REACTIVE under correct flag
* Documentation update for RGBmatrix
* More doc updates
* I2C library can now retry if it has failed
- Replaced the original TWIlib by LFKeyboard's modified version
- Allows for an extra argument on TWITransmitData, if blocking is set to 1 function will retry to transmit on failure. Good for noisy boards.
* RGB Matrix, use alternative I2C library
TWIlib seems to be hanging for me sometimes probably due to ISR routine. I have used i2c_master as a good alternative.
Note: this commit is for Wilba6582 to verify before merge
* Update rgb_matrix.c
* RGB matrix cleanup
- Remove TWIlib
Diffstat (limited to 'quantum/rgb_matrix.c')
| -rw-r--r-- | quantum/rgb_matrix.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/quantum/rgb_matrix.c b/quantum/rgb_matrix.c index f3d012bc3..992ce99de 100644 --- a/quantum/rgb_matrix.c +++ b/quantum/rgb_matrix.c | |||
| @@ -18,7 +18,7 @@ | |||
| 18 | 18 | ||
| 19 | #include "rgb_matrix.h" | 19 | #include "rgb_matrix.h" |
| 20 | #include <avr/io.h> | 20 | #include <avr/io.h> |
| 21 | #include "TWIlib.h" | 21 | #include "i2c_master.h" |
| 22 | #include <util/delay.h> | 22 | #include <util/delay.h> |
| 23 | #include <avr/interrupt.h> | 23 | #include <avr/interrupt.h> |
| 24 | #include "progmem.h" | 24 | #include "progmem.h" |
| @@ -722,10 +722,8 @@ void rgb_matrix_indicators_user(void) {} | |||
| 722 | // } | 722 | // } |
| 723 | 723 | ||
| 724 | void rgb_matrix_init_drivers(void) { | 724 | void rgb_matrix_init_drivers(void) { |
| 725 | //sei(); | ||
| 726 | |||
| 727 | // Initialize TWI | 725 | // Initialize TWI |
| 728 | TWIInit(); | 726 | i2c_init(); |
| 729 | IS31FL3731_init( DRIVER_ADDR_1 ); | 727 | IS31FL3731_init( DRIVER_ADDR_1 ); |
| 730 | IS31FL3731_init( DRIVER_ADDR_2 ); | 728 | IS31FL3731_init( DRIVER_ADDR_2 ); |
| 731 | 729 | ||
