[Keyboard] Change Corne RGB Matrix split handling (#7117)
* [Keyboard] Change Corne RGB Matrix split handling This uses the "is_master" detection to set the led matrix, rather than a define at compile time. This means that the same hex can be used for both halves, not just one or the other. The caveat is that this costs ~240 bytes to do. However, I feel that this is a good trade-off, not just lazy. * Update documentation for RGB Matrix on the Corne
This commit is contained in:
parent
a096453259
commit
947e61eaeb
2 changed files with 39 additions and 41 deletions
|
@ -81,13 +81,4 @@ And in your `config.h` file, add the following:
|
||||||
#endif
|
#endif
|
||||||
```
|
```
|
||||||
|
|
||||||
However, to properly handle the LED matrix, two LED maps had to be used. One for the left half, and one for the right half. For the left, you don't need to do anything. That's the default setup. But for the right side, you need to add `RGB_MATRIX_SPLIT_RIGHT=yes` needs to be added to the command.
|
|
||||||
|
|
||||||
First, compile and flash the left half. Then when that's done, recompile with the setting above. It should look something like:
|
|
||||||
|
|
||||||
```sh
|
|
||||||
make crkbd:default RGB_MATRIX_SPLIT_RIGHT=yes
|
|
||||||
```
|
|
||||||
And then flash this new firmware image.
|
|
||||||
|
|
||||||
After this is done, you should be able to use the normal RGB keycodes, but you'll see the RGB Matrix effects in use, giving a much better experience.
|
After this is done, you should be able to use the normal RGB keycodes, but you'll see the RGB Matrix effects in use, giving a much better experience.
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
#include "crkbd.h"
|
#include "crkbd.h"
|
||||||
|
|
||||||
|
|
||||||
#ifdef RGB_MATRIX_ENABLE
|
#ifdef RGB_MATRIX_ENABLE
|
||||||
|
|
||||||
// Logical Layout
|
// Logical Layout
|
||||||
|
@ -39,37 +38,6 @@
|
||||||
// 05 06 06 05
|
// 05 06 06 05
|
||||||
// 15 14 07 07 14 15 3
|
// 15 14 07 07 14 15 3
|
||||||
|
|
||||||
|
|
||||||
#ifdef RGB_MATRIX_SPLIT_RIGHT
|
|
||||||
led_config_t g_led_config = { {
|
|
||||||
{ 51, 50, 45, 44, 37, 36 },
|
|
||||||
{ 52, 49, 46, 43, 38, 35 },
|
|
||||||
{ 53, 48, 47, 42, 39, 34 },
|
|
||||||
{ NO_LED, NO_LED, NO_LED, 41, 40, 33 },
|
|
||||||
{ 24, 23, 18, 17, 10, 9 },
|
|
||||||
{ 25, 22, 19, 16, 11, 8 },
|
|
||||||
{ 26, 21, 20, 15, 12, 7 },
|
|
||||||
{ NO_LED, NO_LED, NO_LED, 14, 13, 6 }
|
|
||||||
}, {
|
|
||||||
{ 139, 16 }, { 174, 13 }, { 208, 20 }, { 208, 38 }, { 174, 48 }, { 139, 52 }, { 129, 63 },
|
|
||||||
{ 139, 39 }, { 139, 21 }, { 139, 4 }, { 156, 2 }, { 156, 19 }, { 156, 37 }, { 144, 58 },
|
|
||||||
{ 164, 55 }, { 174, 35 }, { 174, 13 }, { 174, 0 }, { 191, 3 }, { 191, 20 }, { 191, 37 },
|
|
||||||
{ 208, 42 }, { 208, 24 }, { 208, 7 }, { 224, 7 }, { 224, 24 }, { 224, 41 }, { 85, 16 },
|
|
||||||
{ 50, 13 }, { 16, 20 }, { 16, 38 }, { 50, 48 }, { 85, 52 }, { 95, 63 }, { 85, 39 },
|
|
||||||
{ 85, 21 }, { 85, 4 }, { 68, 2 }, { 68, 19 }, { 68, 37 }, { 80, 58 }, { 60, 55 },
|
|
||||||
{ 50, 35 }, { 50, 13 }, { 50, 0 }, { 33, 3 }, { 33, 20 }, { 33, 37 }, { 16, 42 },
|
|
||||||
{ 16, 24 }, { 16, 7 }, { 0, 7 }, { 0, 24 }, { 0, 41 }
|
|
||||||
}, {
|
|
||||||
2, 2, 2, 2, 2, 2, 1,
|
|
||||||
4, 4, 4, 4, 4, 4, 1,
|
|
||||||
1, 4, 4, 4, 4, 4, 4,
|
|
||||||
4, 4, 4, 1, 1, 1, 2,
|
|
||||||
2, 2, 2, 2, 2, 1, 4,
|
|
||||||
4, 4, 4, 4, 4, 1, 1,
|
|
||||||
4, 4, 4, 4, 4, 4, 4,
|
|
||||||
4, 4, 1, 1, 1
|
|
||||||
} };
|
|
||||||
#else
|
|
||||||
led_config_t g_led_config = { {
|
led_config_t g_led_config = { {
|
||||||
{ 24, 23, 18, 17, 10, 9 },
|
{ 24, 23, 18, 17, 10, 9 },
|
||||||
{ 25, 22, 19, 16, 11, 8 },
|
{ 25, 22, 19, 16, 11, 8 },
|
||||||
|
@ -99,4 +67,43 @@ led_config_t g_led_config = { {
|
||||||
4, 4, 1, 1, 1
|
4, 4, 1, 1, 1
|
||||||
} };
|
} };
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
__attribute__((weak))
|
||||||
|
void matrix_init_user(void) {}
|
||||||
|
|
||||||
|
void matrix_init_kb(void) {
|
||||||
|
|
||||||
|
#ifdef RGB_MATRIX_ENABLE
|
||||||
|
if (!isLeftHand) {
|
||||||
|
g_led_config = (led_config_t){ {
|
||||||
|
{ 51, 50, 45, 44, 37, 36 },
|
||||||
|
{ 52, 49, 46, 43, 38, 35 },
|
||||||
|
{ 53, 48, 47, 42, 39, 34 },
|
||||||
|
{ NO_LED, NO_LED, NO_LED, 41, 40, 33 },
|
||||||
|
{ 24, 23, 18, 17, 10, 9 },
|
||||||
|
{ 25, 22, 19, 16, 11, 8 },
|
||||||
|
{ 26, 21, 20, 15, 12, 7 },
|
||||||
|
{ NO_LED, NO_LED, NO_LED, 14, 13, 6 }
|
||||||
|
}, {
|
||||||
|
{ 139, 16 }, { 174, 13 }, { 208, 20 }, { 208, 38 }, { 174, 48 }, { 139, 52 }, { 129, 63 },
|
||||||
|
{ 139, 39 }, { 139, 21 }, { 139, 4 }, { 156, 2 }, { 156, 19 }, { 156, 37 }, { 144, 58 },
|
||||||
|
{ 164, 55 }, { 174, 35 }, { 174, 13 }, { 174, 0 }, { 191, 3 }, { 191, 20 }, { 191, 37 },
|
||||||
|
{ 208, 42 }, { 208, 24 }, { 208, 7 }, { 224, 7 }, { 224, 24 }, { 224, 41 }, { 85, 16 },
|
||||||
|
{ 50, 13 }, { 16, 20 }, { 16, 38 }, { 50, 48 }, { 85, 52 }, { 95, 63 }, { 85, 39 },
|
||||||
|
{ 85, 21 }, { 85, 4 }, { 68, 2 }, { 68, 19 }, { 68, 37 }, { 80, 58 }, { 60, 55 },
|
||||||
|
{ 50, 35 }, { 50, 13 }, { 50, 0 }, { 33, 3 }, { 33, 20 }, { 33, 37 }, { 16, 42 },
|
||||||
|
{ 16, 24 }, { 16, 7 }, { 0, 7 }, { 0, 24 }, { 0, 41 }
|
||||||
|
}, {
|
||||||
|
2, 2, 2, 2, 2, 2, 1,
|
||||||
|
4, 4, 4, 4, 4, 4, 1,
|
||||||
|
1, 4, 4, 4, 4, 4, 4,
|
||||||
|
4, 4, 4, 1, 1, 1, 2,
|
||||||
|
2, 2, 2, 2, 2, 1, 4,
|
||||||
|
4, 4, 4, 4, 4, 1, 1,
|
||||||
|
4, 4, 4, 4, 4, 4, 4,
|
||||||
|
4, 4, 1, 1, 1
|
||||||
|
} };
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
matrix_init_user();
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue