diff options
author | Nick Brassel <[email protected]> | 2024-02-28 21:47:37 +1100 |
---|---|---|
committer | Nick Brassel <[email protected]> | 2024-02-28 21:47:37 +1100 |
commit | 4e369d405af6bba1adce6337b2e1b1ea1788566c (patch) | |
tree | b0f020feff1809e37c9e7795d344929ff0bb290a /docs/feature_rgb_matrix.md | |
parent | 4e04da397ef643f8fcf4afbe1d19f63aee1fc561 (diff) | |
parent | dd1706e468bb18dd7f7ae143de735a5d3be1bfb8 (diff) | |
download | qmk_firmware-4e369d405af6bba1adce6337b2e1b1ea1788566c.tar.gz qmk_firmware-4e369d405af6bba1adce6337b2e1b1ea1788566c.zip |
Merge branch 'develop'0.24.0
Diffstat (limited to 'docs/feature_rgb_matrix.md')
-rw-r--r-- | docs/feature_rgb_matrix.md | 63 |
1 files changed, 32 insertions, 31 deletions
diff --git a/docs/feature_rgb_matrix.md b/docs/feature_rgb_matrix.md index 824ff50648..d05d768ceb 100644 --- a/docs/feature_rgb_matrix.md +++ b/docs/feature_rgb_matrix.md @@ -55,7 +55,7 @@ For split keyboards using `RGB_MATRIX_SPLIT` with an LED driver, you can either Define these arrays listing all the LEDs in your `<keyboard>.c`: ```c -const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = { +const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = { /* Refer to IS31 manual for these locations * driver * | R location @@ -139,19 +139,19 @@ Currently only 4 drivers are supported, but it would be trivial to support all 8 Define these arrays listing all the LEDs in your `<keyboard>.c`: ```c -const is31fl3733_led_t PROGMEM g_is31fl3733_leds[RGB_MATRIX_LED_COUNT] = { +const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = { /* Refer to IS31 manual for these locations * driver * | R location - * | | G location - * | | | B location - * | | | | */ - {0, B_1, A_1, C_1}, + * | | G location + * | | | B location + * | | | | */ + {0, SW1_CS1, SW1_CS2, SW1_CS3}, .... } ``` -Where `X_Y` is the location of the LED in the matrix defined by [the datasheet](https://www.issi.com/WW/pdf/31FL3733.pdf) and the header file `drivers/led/issi/is31fl3733.h`. The `driver` is the index of the driver you defined in your `config.h` (`0`, `1`, `2`, or `3` for now). +Where `SWx_CSy` is the location of the LED in the matrix defined by [the datasheet](https://www.issi.com/WW/pdf/31FL3733.pdf) and the header file `drivers/led/issi/is31fl3733.h`. The `driver` is the index of the driver you defined in your `config.h` (`0`, `1`, `2`, or `3` for now). --- ### IS31FL3736 :id=is31fl3736 @@ -218,14 +218,14 @@ Here is an example using 2 drivers. Define these arrays listing all the LEDs in your `<keyboard>.c`: ```c -const is31fl3736_led_t PROGMEM g_is31fl3736_leds[RGB_MATRIX_LED_COUNT] = { +const is31fl3736_led_t PROGMEM g_is31fl3736_leds[IS31FL3736_LED_COUNT] = { /* Refer to IS31 manual for these locations * driver * | R location - * | | G location - * | | | B location - * | | | | */ - {0, B_1, A_1, C_1}, + * | | G location + * | | | B location + * | | | | */ + {0, SW1_CS1, SW1_CS2, SW1_CS3}, .... } ``` @@ -292,19 +292,19 @@ Here is an example using 2 drivers. Define these arrays listing all the LEDs in your `<keyboard>.c`: ```c -const is31fl3737_led_t PROGMEM g_is31fl3737_leds[RGB_MATRIX_LED_COUNT] = { +const is31fl3737_led_t PROGMEM g_is31fl3737_leds[IS31FL3737_LED_COUNT] = { /* Refer to IS31 manual for these locations * driver * | R location - * | | G location - * | | | B location - * | | | | */ - {0, B_1, A_1, C_1}, + * | | G location + * | | | B location + * | | | | */ + {0, SW1_CS1, SW1_CS2, SW1_CS3}, .... } ``` -Where `X_Y` is the location of the LED in the matrix defined by [the datasheet](https://www.issi.com/WW/pdf/31FL3737.pdf) and the header file `drivers/led/issi/is31fl3737.h`. The `driver` is the index of the driver you defined in your `config.h` (Only `0`, `1`, `2`, or `3` for now). +Where `SWx_CSy` is the location of the LED in the matrix defined by [the datasheet](https://www.issi.com/WW/pdf/31FL3737.pdf) and the header file `drivers/led/issi/is31fl3737.h`. The `driver` is the index of the driver you defined in your `config.h` (Only `0`, `1`, `2`, or `3` for now). --- ### IS31FLCOMMON :id=is31flcommon @@ -386,7 +386,7 @@ const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = { * | | G location * | | | B location * | | | | */ - {0, CS1_SW1, CS2_SW1, CS3_SW1}, + {0, SW1_CS1, SW1_CS2, SW1_CS3}, .... } ``` @@ -501,7 +501,7 @@ Here is an example using 2 drivers. Define these arrays listing all the LEDs in your `<keyboard>.c`: ```c -const aw20216s_led_t PROGMEM g_aw20216s_leds[RGB_MATRIX_LED_COUNT] = { +const aw20216s_led_t PROGMEM g_aw20216s_leds[AW20216S_LED_COUNT] = { /* Each AW20216S channel is controlled by a register at some offset between 0x00 * and 0xD7 inclusive. * See drivers/led/aw20216s.h for the mapping between register offsets and @@ -511,16 +511,16 @@ const aw20216s_led_t PROGMEM g_aw20216s_leds[RGB_MATRIX_LED_COUNT] = { * | | G location * | | | B location * | | | | */ - { 0, CS1_SW1, CS2_SW1, CS3_SW1 }, - { 0, CS4_SW1, CS5_SW1, CS6_SW1 }, - { 0, CS7_SW1, CS8_SW1, CS9_SW1 }, - { 0, CS10_SW1, CS11_SW1, CS12_SW1 }, - { 0, CS13_SW1, CS14_SW1, CS15_SW1 }, + { 0, SW1_CS1, SW1_CS2, SW1_CS3 }, + { 0, SW1_CS4, SW1_CS5, SW1_CS6 }, + { 0, SW1_CS7, SW1_CS8, SW1_CS9 }, + { 0, SW1_CS10, SW1_CS11, SW1_CS12 }, + { 0, SW1_CS13, SW1_CS14, SW1_CS15 }, ... - { 1, CS1_SW1, CS2_SW1, CS3_SW1 }, - { 1, CS13_SW1, CS14_SW1, CS15_SW1 }, - { 1, CS16_SW1, CS17_SW1, CS18_SW1 }, - { 1, CS4_SW2, CS5_SW2, CS6_SW2 }, + { 1, SW1_CS1, SW1_CS2, SW1_CS3 }, + { 1, SW1_CS13, SW1_CS14, SW1_CS15 }, + { 1, SW1_CS16, SW1_CS17, SW1_CS18 }, + { 1, SW2_CS4, SW2_CS5, SW2_CS6 }, ... }; ``` @@ -869,16 +869,17 @@ These are defined in [`color.h`](https://github.com/qmk/qmk_firmware/blob/master ```c #define RGB_MATRIX_KEYRELEASES // reactive effects respond to keyreleases (instead of keypresses) #define RGB_MATRIX_TIMEOUT 0 // number of milliseconds to wait until rgb automatically turns off -#define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended +#define RGB_MATRIX_SLEEP // turn off effects when suspended #define RGB_MATRIX_LED_PROCESS_LIMIT (RGB_MATRIX_LED_COUNT + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness) #define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness) #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255 +#define RGB_MATRIX_DEFAULT_ON true // Sets the default enabled state, if none has been set #define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_LEFT_RIGHT // Sets the default mode, if none has been set #define RGB_MATRIX_DEFAULT_HUE 0 // Sets the default hue value, if none has been set #define RGB_MATRIX_DEFAULT_SAT 255 // Sets the default saturation value, if none has been set -#define RGB_MATRIX_DEFAULT_ON true // Sets the default enabled state, if none has been set #define RGB_MATRIX_DEFAULT_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS // Sets the default brightness value, if none has been set #define RGB_MATRIX_DEFAULT_SPD 127 // Sets the default animation speed, if none has been set +#define RGB_MATRIX_DEFAULT_FLAGS LED_FLAG_ALL // Sets the default LED flags, if none has been set #define RGB_MATRIX_DISABLE_KEYCODES // disables control of rgb matrix by keycodes (must use code functions to control the feature) #define RGB_MATRIX_SPLIT { X, Y } // (Optional) For split keyboards, the number of LEDs connected on each half. X = left, Y = Right. // If reactive effects are enabled, you also will want to enable SPLIT_TRANSPORT_MIRROR |