forked from mirrors/qmk_firmware
refactor: move default RGB/LED matrix #defines (#21938)
* refactor: move default RGB/LED matrix #defines Moving the fallback definitions of macros like LED_MATRIX_VAL_STEP and RGB_MATRIX_MAXIMUM_BRIGHTNESS to header files allows keyboards to leverage these defaults without requiring #ifdef guards (and often repeating said fallback definitions). * style: use if(n)def for consistency and remove redundant UINT8_MAX checks on maximum brightness Co-authored-by: Joel Challis <git@zvecr.com> * refactor: remove INDICATOR_MAX_BRIGHTNESS macro Co-authored-by: Joel Challis <git@zvecr.com> --------- Co-authored-by: Joel Challis <git@zvecr.com>
This commit is contained in:
parent
f4677c866e
commit
346b06d391
18 changed files with 103 additions and 138 deletions
|
@ -117,9 +117,6 @@ void matrix_init_kb(void) {
|
||||||
* Since K20x is stuck with a 32 byte EEPROM (see tmk_core/common/chibios/eeprom_teensy.c),
|
* Since K20x is stuck with a 32 byte EEPROM (see tmk_core/common/chibios/eeprom_teensy.c),
|
||||||
* and neither led_matrix_eeconfig.speed or .flags fit in this boundary, just force their values to default on boot.
|
* and neither led_matrix_eeconfig.speed or .flags fit in this boundary, just force their values to default on boot.
|
||||||
*/
|
*/
|
||||||
# if !defined(LED_MATRIX_DEFAULT_SPD)
|
|
||||||
# define LED_MATRIX_DEFAULT_SPD UINT8_MAX / 2
|
|
||||||
# endif
|
|
||||||
led_matrix_set_speed(LED_MATRIX_DEFAULT_SPD);
|
led_matrix_set_speed(LED_MATRIX_DEFAULT_SPD);
|
||||||
led_matrix_set_flags(LED_FLAG_ALL);
|
led_matrix_set_flags(LED_FLAG_ALL);
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -217,9 +217,6 @@ void matrix_init_kb(void) {
|
||||||
* Since K20x is stuck with a 32 byte EEPROM (see tmk_core/common/chibios/eeprom_teensy.c),
|
* Since K20x is stuck with a 32 byte EEPROM (see tmk_core/common/chibios/eeprom_teensy.c),
|
||||||
* and neither led_matrix_eeconfig.speed or .flags fit in this boundary, just force their values to default on boot.
|
* and neither led_matrix_eeconfig.speed or .flags fit in this boundary, just force their values to default on boot.
|
||||||
*/
|
*/
|
||||||
# if !defined(RGB_MATRIX_DEFAULT_SPD)
|
|
||||||
# define RGB_MATRIX_DEFAULT_SPD UINT8_MAX / 2
|
|
||||||
# endif
|
|
||||||
rgb_matrix_set_speed(RGB_MATRIX_DEFAULT_SPD),
|
rgb_matrix_set_speed(RGB_MATRIX_DEFAULT_SPD),
|
||||||
rgb_matrix_set_flags(LED_FLAG_ALL);
|
rgb_matrix_set_flags(LED_FLAG_ALL);
|
||||||
|
|
||||||
|
|
|
@ -83,9 +83,6 @@ void matrix_init_kb(void) {
|
||||||
* Since K20x is stuck with a 32 byte EEPROM (see tmk_core/common/chibios/eeprom_teensy.c),
|
* Since K20x is stuck with a 32 byte EEPROM (see tmk_core/common/chibios/eeprom_teensy.c),
|
||||||
* and neither led_matrix_eeconfig.speed or .flags fit in this boundary, just force their values to default on boot.
|
* and neither led_matrix_eeconfig.speed or .flags fit in this boundary, just force their values to default on boot.
|
||||||
*/
|
*/
|
||||||
# if !defined(LED_MATRIX_DEFAULT_SPD)
|
|
||||||
# define LED_MATRIX_DEFAULT_SPD UINT8_MAX / 2
|
|
||||||
# endif
|
|
||||||
led_matrix_set_speed(LED_MATRIX_DEFAULT_SPD),
|
led_matrix_set_speed(LED_MATRIX_DEFAULT_SPD),
|
||||||
led_matrix_set_flags(LED_FLAG_ALL);
|
led_matrix_set_flags(LED_FLAG_ALL);
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -5,7 +5,8 @@
|
||||||
"device_version": "0.0.3"
|
"device_version": "0.0.3"
|
||||||
},
|
},
|
||||||
"rgb_matrix": {
|
"rgb_matrix": {
|
||||||
"driver": "is31fl3741"
|
"driver": "is31fl3741",
|
||||||
|
"val_steps": 8
|
||||||
},
|
},
|
||||||
"matrix_pins": {
|
"matrix_pins": {
|
||||||
"cols": ["F7", "F6", "F5", "C7", "B0", "B1", "B2", "B3", "B4", "D7", "D6", "D4", "D5", "D3", "D2"],
|
"cols": ["F7", "F6", "F5", "C7", "B0", "B1", "B2", "B3", "B4", "D7", "D6", "D4", "D5", "D3", "D2"],
|
||||||
|
|
|
@ -125,16 +125,12 @@ led_config_t g_led_config = { {
|
||||||
|
|
||||||
#if defined(RGB_MATRIX_ENABLE) && defined(CAPS_LOCK_LED_INDEX)
|
#if defined(RGB_MATRIX_ENABLE) && defined(CAPS_LOCK_LED_INDEX)
|
||||||
|
|
||||||
#ifdef RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
#if !defined(CAPS_LOCK_MAX_BRIGHTNESS)
|
||||||
#define CAPS_LOCK_MAX_BRIGHTNESS RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
#define CAPS_LOCK_MAX_BRIGHTNESS RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
||||||
#else
|
|
||||||
#define CAPS_LOCK_MAX_BRIGHTNESS 0xFF
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef RGB_MATRIX_VAL_STEP
|
#if !defined(CAPS_LOCK_VAL_STEP)
|
||||||
#define CAPS_LOCK_VAL_STEP RGB_MATRIX_VAL_STEP
|
#define CAPS_LOCK_VAL_STEP RGB_MATRIX_VAL_STEP
|
||||||
#else
|
|
||||||
#define CAPS_LOCK_VAL_STEP 8
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
bool rgb_matrix_indicators_kb(void) {
|
bool rgb_matrix_indicators_kb(void) {
|
||||||
|
|
|
@ -53,11 +53,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
|
||||||
/* RGB matrix indicator code
|
/* RGB matrix indicator code
|
||||||
It reads the current matrix color, offsets the hue by 30,
|
It reads the current matrix color, offsets the hue by 30,
|
||||||
and sets val to either 255 or, if defined, RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
and sets val to RGB_MATRIX_MAXIMUM_BRIGHTNESS (by default, 255)
|
||||||
This is applied to both caps lock, and other indicator keys for layer 1 */
|
This is applied to both caps lock, and other indicator keys for layer 1 */
|
||||||
|
|
||||||
bool rgb_matrix_indicators_user(void) {
|
bool rgb_matrix_indicators_user(void) {
|
||||||
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
|
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
|
||||||
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
||||||
|
|
||||||
/* Sets Caps to different color as indicator. If RGB mode is rain, and caps indicator is off, the LED will always be off.
|
/* Sets Caps to different color as indicator. If RGB mode is rain, and caps indicator is off, the LED will always be off.
|
||||||
|
@ -70,7 +70,7 @@ bool rgb_matrix_indicators_user(void) {
|
||||||
|
|
||||||
/* Sets W, A, S, D, LGUI to a different color as layer indicator */
|
/* Sets W, A, S, D, LGUI to a different color as layer indicator */
|
||||||
if(IS_LAYER_ON(1)) {
|
if(IS_LAYER_ON(1)) {
|
||||||
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
|
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
|
||||||
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
||||||
|
|
||||||
rgb_matrix_set_color(W_LED_INDEX, rgb_ind.r, rgb_ind.g, rgb_ind.b);
|
rgb_matrix_set_color(W_LED_INDEX, rgb_ind.r, rgb_ind.g, rgb_ind.b);
|
||||||
|
|
|
@ -144,13 +144,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
|
||||||
/* RGB matrix indicator code
|
/* RGB matrix indicator code
|
||||||
It reads the current matrix color, offsets the hue by 30,
|
It reads the current matrix color, offsets the hue by 30,
|
||||||
and sets val to either 255 or, if defined, RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
and sets val to RGB_MATRIX_MAXIMUM_BRIGHTNESS (by default, 255)
|
||||||
This is applied to both caps lock, and other indicator keys for layer 1 */
|
This is applied to both caps lock, and other indicator keys for layer 1 */
|
||||||
|
|
||||||
bool rgb_matrix_indicators_user(void) {
|
bool rgb_matrix_indicators_user(void) {
|
||||||
/* Layer 2 (perf mode on this keymap) is not supposed to have LED refreshes, hence excluded */
|
/* Layer 2 (perf mode on this keymap) is not supposed to have LED refreshes, hence excluded */
|
||||||
if (!IS_LAYER_ON(2)) {
|
if (!IS_LAYER_ON(2)) {
|
||||||
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
|
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
|
||||||
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
||||||
|
|
||||||
/* Sets Caps to different color as indicator. If RGB mode is rain, and caps indicator is off, the LED will always be off.
|
/* Sets Caps to different color as indicator. If RGB mode is rain, and caps indicator is off, the LED will always be off.
|
||||||
|
@ -163,7 +163,7 @@ bool rgb_matrix_indicators_user(void) {
|
||||||
|
|
||||||
/* Sets W, A, S, D, LGUI to a different color as layer indicator */
|
/* Sets W, A, S, D, LGUI to a different color as layer indicator */
|
||||||
if(IS_LAYER_ON(1)) {
|
if(IS_LAYER_ON(1)) {
|
||||||
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
|
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
|
||||||
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
||||||
|
|
||||||
rgb_matrix_set_color(W_LED_INDEX, rgb_ind.r, rgb_ind.g, rgb_ind.b);
|
rgb_matrix_set_color(W_LED_INDEX, rgb_ind.r, rgb_ind.g, rgb_ind.b);
|
||||||
|
|
|
@ -53,11 +53,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
|
||||||
/* RGB matrix indicator code
|
/* RGB matrix indicator code
|
||||||
It reads the current matrix color, offsets the hue by 30,
|
It reads the current matrix color, offsets the hue by 30,
|
||||||
and sets val to either 255 or, if defined, RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
and sets val to RGB_MATRIX_MAXIMUM_BRIGHTNESS (by default, 255)
|
||||||
This is applied to both caps lock, and other indicator keys for layer 1 */
|
This is applied to both caps lock, and other indicator keys for layer 1 */
|
||||||
|
|
||||||
bool rgb_matrix_indicators_user(void) {
|
bool rgb_matrix_indicators_user(void) {
|
||||||
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
|
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
|
||||||
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
||||||
|
|
||||||
/* Sets Caps to different color as indicator. If RGB mode is rain, and caps indicator is off, the LED will always be off.
|
/* Sets Caps to different color as indicator. If RGB mode is rain, and caps indicator is off, the LED will always be off.
|
||||||
|
@ -70,7 +70,7 @@ bool rgb_matrix_indicators_user(void) {
|
||||||
|
|
||||||
/* Sets W, A, S, D, LGUI to a different color as layer indicator */
|
/* Sets W, A, S, D, LGUI to a different color as layer indicator */
|
||||||
if(IS_LAYER_ON(1)) {
|
if(IS_LAYER_ON(1)) {
|
||||||
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
|
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
|
||||||
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
||||||
|
|
||||||
rgb_matrix_set_color(W_LED_INDEX, rgb_ind.r, rgb_ind.g, rgb_ind.b);
|
rgb_matrix_set_color(W_LED_INDEX, rgb_ind.r, rgb_ind.g, rgb_ind.b);
|
||||||
|
|
|
@ -61,13 +61,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#define ENABLE_RGB_MATRIX_CUSTOM_SINGLE_COLOR_RAINDROPS // 0 Single color raindrops, random keys lighting up at randomized intensity
|
#define ENABLE_RGB_MATRIX_CUSTOM_SINGLE_COLOR_RAINDROPS // 0 Single color raindrops, random keys lighting up at randomized intensity
|
||||||
#define ENABLE_RGB_MATRIX_CUSTOM_STATIC_GAME_MODE // - Game mode sets the entire matrix (static) once, then stops LED refreshes
|
#define ENABLE_RGB_MATRIX_CUSTOM_STATIC_GAME_MODE // - Game mode sets the entire matrix (static) once, then stops LED refreshes
|
||||||
|
|
||||||
#define INDICATOR_MAX_BRIGHTNESS 255
|
|
||||||
#ifdef RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
|
||||||
#undef INDICATOR_MAX_BRIGHTNESS
|
|
||||||
#define INDICATOR_MAX_BRIGHTNESS RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
/* Define indicator LED indices, used for lighting effects */
|
/* Define indicator LED indices, used for lighting effects */
|
||||||
#define W_LED_INDEX 33
|
#define W_LED_INDEX 33
|
||||||
#define A_LED_INDEX 47
|
#define A_LED_INDEX 47
|
||||||
|
|
|
@ -53,11 +53,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
|
||||||
/* RGB matrix indicator code
|
/* RGB matrix indicator code
|
||||||
It reads the current matrix color, offsets the hue by 30,
|
It reads the current matrix color, offsets the hue by 30,
|
||||||
and sets val to either 255 or, if defined, RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
and sets val to RGB_MATRIX_MAXIMUM_BRIGHTNESS (by default, 255)
|
||||||
This is applied to both caps lock, and other indicator keys for layer 1 */
|
This is applied to both caps lock, and other indicator keys for layer 1 */
|
||||||
|
|
||||||
bool rgb_matrix_indicators_user(void) {
|
bool rgb_matrix_indicators_user(void) {
|
||||||
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
|
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
|
||||||
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
||||||
|
|
||||||
/* Sets Caps to different color as indicator. If RGB mode is rain, and caps indicator is off, the LED will always be off.
|
/* Sets Caps to different color as indicator. If RGB mode is rain, and caps indicator is off, the LED will always be off.
|
||||||
|
@ -70,7 +70,7 @@ bool rgb_matrix_indicators_user(void) {
|
||||||
|
|
||||||
/* Sets W, A, S, D, LGUI to a different color as layer indicator */
|
/* Sets W, A, S, D, LGUI to a different color as layer indicator */
|
||||||
if(IS_LAYER_ON(1)) {
|
if(IS_LAYER_ON(1)) {
|
||||||
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
|
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
|
||||||
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
||||||
|
|
||||||
rgb_matrix_set_color(W_LED_INDEX, rgb_ind.r, rgb_ind.g, rgb_ind.b);
|
rgb_matrix_set_color(W_LED_INDEX, rgb_ind.r, rgb_ind.g, rgb_ind.b);
|
||||||
|
|
|
@ -144,13 +144,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
|
||||||
/* RGB matrix indicator code
|
/* RGB matrix indicator code
|
||||||
It reads the current matrix color, offsets the hue by 30,
|
It reads the current matrix color, offsets the hue by 30,
|
||||||
and sets val to either 255 or, if defined, RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
and sets val to RGB_MATRIX_MAXIMUM_BRIGHTNESS (by default, 255)
|
||||||
This is applied to both caps lock, and other indicator keys for layer 1 */
|
This is applied to both caps lock, and other indicator keys for layer 1 */
|
||||||
|
|
||||||
bool rgb_matrix_indicators_user(void) {
|
bool rgb_matrix_indicators_user(void) {
|
||||||
/* Layer 2 (perf mode on this keymap) is not supposed to have LED refreshes, hence excluded */
|
/* Layer 2 (perf mode on this keymap) is not supposed to have LED refreshes, hence excluded */
|
||||||
if (!IS_LAYER_ON(2)) {
|
if (!IS_LAYER_ON(2)) {
|
||||||
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
|
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
|
||||||
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
||||||
|
|
||||||
/* Sets Caps to different color as indicator. If RGB mode is rain, and caps indicator is off, the LED will always be off.
|
/* Sets Caps to different color as indicator. If RGB mode is rain, and caps indicator is off, the LED will always be off.
|
||||||
|
@ -163,7 +163,7 @@ bool rgb_matrix_indicators_user(void) {
|
||||||
|
|
||||||
/* Sets W, A, S, D, LGUI to a different color as layer indicator */
|
/* Sets W, A, S, D, LGUI to a different color as layer indicator */
|
||||||
if(IS_LAYER_ON(1)) {
|
if(IS_LAYER_ON(1)) {
|
||||||
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
|
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
|
||||||
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
||||||
|
|
||||||
rgb_matrix_set_color(W_LED_INDEX, rgb_ind.r, rgb_ind.g, rgb_ind.b);
|
rgb_matrix_set_color(W_LED_INDEX, rgb_ind.r, rgb_ind.g, rgb_ind.b);
|
||||||
|
|
|
@ -53,11 +53,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
|
||||||
/* RGB matrix indicator code
|
/* RGB matrix indicator code
|
||||||
It reads the current matrix color, offsets the hue by 30,
|
It reads the current matrix color, offsets the hue by 30,
|
||||||
and sets val to either 255 or, if defined, RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
and sets val to RGB_MATRIX_MAXIMUM_BRIGHTNESS (by default, 255)
|
||||||
This is applied to both caps lock, and other indicator keys for layer 1 */
|
This is applied to both caps lock, and other indicator keys for layer 1 */
|
||||||
|
|
||||||
bool rgb_matrix_indicators_user(void) {
|
bool rgb_matrix_indicators_user(void) {
|
||||||
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
|
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
|
||||||
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
||||||
|
|
||||||
/* Sets Caps to different color as indicator. If RGB mode is rain, and caps indicator is off, the LED will always be off.
|
/* Sets Caps to different color as indicator. If RGB mode is rain, and caps indicator is off, the LED will always be off.
|
||||||
|
@ -70,7 +70,7 @@ bool rgb_matrix_indicators_user(void) {
|
||||||
|
|
||||||
/* Sets W, A, S, D, LGUI to a different color as layer indicator */
|
/* Sets W, A, S, D, LGUI to a different color as layer indicator */
|
||||||
if(IS_LAYER_ON(1)) {
|
if(IS_LAYER_ON(1)) {
|
||||||
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,INDICATOR_MAX_BRIGHTNESS};
|
HSV hsv_ind = {rgb_matrix_get_hue()+30,255,RGB_MATRIX_MAXIMUM_BRIGHTNESS};
|
||||||
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
RGB rgb_ind = hsv_to_rgb(hsv_ind);
|
||||||
|
|
||||||
rgb_matrix_set_color(W_LED_INDEX, rgb_ind.r, rgb_ind.g, rgb_ind.b);
|
rgb_matrix_set_color(W_LED_INDEX, rgb_ind.r, rgb_ind.g, rgb_ind.b);
|
||||||
|
|
|
@ -73,15 +73,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
// Code for Caps Locks indicator
|
// Code for Caps Locks indicator
|
||||||
#if defined(RGB_MATRIX_ENABLE) && defined(CAPS_LOCK_LED_INDEX)
|
#if defined(RGB_MATRIX_ENABLE) && defined(CAPS_LOCK_LED_INDEX)
|
||||||
|
|
||||||
#define CAPS_LOCK_MAX_BRIGHTNESS 0xFF
|
#if !defined(CAPS_LOCK_MAX_BRIGHTNESS)
|
||||||
#ifdef RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
|
||||||
#undef CAPS_LOCK_MAX_BRIGHTNESS
|
|
||||||
#define CAPS_LOCK_MAX_BRIGHTNESS RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
#define CAPS_LOCK_MAX_BRIGHTNESS RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define CAPS_LOCK_VAL_STEP 8
|
#if !defined(CAPS_LOCK_VAL_STEP)
|
||||||
#ifdef RGB_MATRIX_VAL_STEP
|
|
||||||
#undef CAPS_LOCK_VAL_STEP
|
|
||||||
#define CAPS_LOCK_VAL_STEP RGB_MATRIX_VAL_STEP
|
#define CAPS_LOCK_VAL_STEP RGB_MATRIX_VAL_STEP
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -58,35 +58,6 @@ const led_point_t k_led_matrix_center = LED_MATRIX_CENTER;
|
||||||
// -----End led effect includes macros-------
|
// -----End led effect includes macros-------
|
||||||
// ------------------------------------------
|
// ------------------------------------------
|
||||||
|
|
||||||
#ifndef LED_MATRIX_TIMEOUT
|
|
||||||
# define LED_MATRIX_TIMEOUT 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(LED_MATRIX_MAXIMUM_BRIGHTNESS) || LED_MATRIX_MAXIMUM_BRIGHTNESS > UINT8_MAX
|
|
||||||
# undef LED_MATRIX_MAXIMUM_BRIGHTNESS
|
|
||||||
# define LED_MATRIX_MAXIMUM_BRIGHTNESS UINT8_MAX
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(LED_MATRIX_VAL_STEP)
|
|
||||||
# define LED_MATRIX_VAL_STEP 8
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(LED_MATRIX_SPD_STEP)
|
|
||||||
# define LED_MATRIX_SPD_STEP 16
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(LED_MATRIX_DEFAULT_MODE)
|
|
||||||
# define LED_MATRIX_DEFAULT_MODE LED_MATRIX_SOLID
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(LED_MATRIX_DEFAULT_VAL)
|
|
||||||
# define LED_MATRIX_DEFAULT_VAL LED_MATRIX_MAXIMUM_BRIGHTNESS
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(LED_MATRIX_DEFAULT_SPD)
|
|
||||||
# define LED_MATRIX_DEFAULT_SPD UINT8_MAX / 2
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// globals
|
// globals
|
||||||
led_eeconfig_t led_matrix_eeconfig; // TODO: would like to prefix this with g_ for global consistancy, do this in another pr
|
led_eeconfig_t led_matrix_eeconfig; // TODO: would like to prefix this with g_ for global consistancy, do this in another pr
|
||||||
uint32_t g_led_timer;
|
uint32_t g_led_timer;
|
||||||
|
@ -632,7 +603,7 @@ void led_matrix_decrease_speed(void) {
|
||||||
void led_matrix_set_flags_eeprom_helper(led_flags_t flags, bool write_to_eeprom) {
|
void led_matrix_set_flags_eeprom_helper(led_flags_t flags, bool write_to_eeprom) {
|
||||||
led_matrix_eeconfig.flags = flags;
|
led_matrix_eeconfig.flags = flags;
|
||||||
eeconfig_flag_led_matrix(write_to_eeprom);
|
eeconfig_flag_led_matrix(write_to_eeprom);
|
||||||
dprintf("led matrix set speed [%s]: %u\n", (write_to_eeprom) ? "EEPROM" : "NOEEPROM", led_matrix_eeconfig.flags);
|
dprintf("led matrix set flags [%s]: %u\n", (write_to_eeprom) ? "EEPROM" : "NOEEPROM", led_matrix_eeconfig.flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
led_flags_t led_matrix_get_flags(void) {
|
led_flags_t led_matrix_get_flags(void) {
|
||||||
|
|
|
@ -43,6 +43,34 @@
|
||||||
# include "ckled2001-simple.h"
|
# include "ckled2001-simple.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef LED_MATRIX_TIMEOUT
|
||||||
|
# define LED_MATRIX_TIMEOUT 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LED_MATRIX_MAXIMUM_BRIGHTNESS
|
||||||
|
# define LED_MATRIX_MAXIMUM_BRIGHTNESS UINT8_MAX
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LED_MATRIX_VAL_STEP
|
||||||
|
# define LED_MATRIX_VAL_STEP 8
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LED_MATRIX_SPD_STEP
|
||||||
|
# define LED_MATRIX_SPD_STEP 16
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LED_MATRIX_DEFAULT_MODE
|
||||||
|
# define LED_MATRIX_DEFAULT_MODE LED_MATRIX_SOLID
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LED_MATRIX_DEFAULT_VAL
|
||||||
|
# define LED_MATRIX_DEFAULT_VAL LED_MATRIX_MAXIMUM_BRIGHTNESS
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LED_MATRIX_DEFAULT_SPD
|
||||||
|
# define LED_MATRIX_DEFAULT_SPD UINT8_MAX / 2
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef LED_MATRIX_LED_FLUSH_LIMIT
|
#ifndef LED_MATRIX_LED_FLUSH_LIMIT
|
||||||
# define LED_MATRIX_LED_FLUSH_LIMIT 16
|
# define LED_MATRIX_LED_FLUSH_LIMIT 16
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -60,56 +60,6 @@ __attribute__((weak)) RGB rgb_matrix_hsv_to_rgb(HSV hsv) {
|
||||||
// -----End rgb effect includes macros-------
|
// -----End rgb effect includes macros-------
|
||||||
// ------------------------------------------
|
// ------------------------------------------
|
||||||
|
|
||||||
#ifndef RGB_MATRIX_TIMEOUT
|
|
||||||
# define RGB_MATRIX_TIMEOUT 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(RGB_MATRIX_MAXIMUM_BRIGHTNESS) || RGB_MATRIX_MAXIMUM_BRIGHTNESS > UINT8_MAX
|
|
||||||
# undef RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
|
||||||
# define RGB_MATRIX_MAXIMUM_BRIGHTNESS UINT8_MAX
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(RGB_MATRIX_HUE_STEP)
|
|
||||||
# define RGB_MATRIX_HUE_STEP 8
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(RGB_MATRIX_SAT_STEP)
|
|
||||||
# define RGB_MATRIX_SAT_STEP 16
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(RGB_MATRIX_VAL_STEP)
|
|
||||||
# define RGB_MATRIX_VAL_STEP 16
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(RGB_MATRIX_SPD_STEP)
|
|
||||||
# define RGB_MATRIX_SPD_STEP 16
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(RGB_MATRIX_DEFAULT_MODE)
|
|
||||||
# ifdef ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
|
|
||||||
# define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_LEFT_RIGHT
|
|
||||||
# else
|
|
||||||
// fallback to solid colors if RGB_MATRIX_CYCLE_LEFT_RIGHT is disabled in userspace
|
|
||||||
# define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
|
|
||||||
# endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(RGB_MATRIX_DEFAULT_HUE)
|
|
||||||
# define RGB_MATRIX_DEFAULT_HUE 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(RGB_MATRIX_DEFAULT_SAT)
|
|
||||||
# define RGB_MATRIX_DEFAULT_SAT UINT8_MAX
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(RGB_MATRIX_DEFAULT_VAL)
|
|
||||||
# define RGB_MATRIX_DEFAULT_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if !defined(RGB_MATRIX_DEFAULT_SPD)
|
|
||||||
# define RGB_MATRIX_DEFAULT_SPD UINT8_MAX / 2
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// globals
|
// globals
|
||||||
rgb_config_t rgb_matrix_config; // TODO: would like to prefix this with g_ for global consistancy, do this in another pr
|
rgb_config_t rgb_matrix_config; // TODO: would like to prefix this with g_ for global consistancy, do this in another pr
|
||||||
uint32_t g_rgb_timer;
|
uint32_t g_rgb_timer;
|
||||||
|
@ -736,7 +686,7 @@ void rgb_matrix_decrease_speed(void) {
|
||||||
void rgb_matrix_set_flags_eeprom_helper(led_flags_t flags, bool write_to_eeprom) {
|
void rgb_matrix_set_flags_eeprom_helper(led_flags_t flags, bool write_to_eeprom) {
|
||||||
rgb_matrix_config.flags = flags;
|
rgb_matrix_config.flags = flags;
|
||||||
eeconfig_flag_rgb_matrix(write_to_eeprom);
|
eeconfig_flag_rgb_matrix(write_to_eeprom);
|
||||||
dprintf("rgb matrix set speed [%s]: %u\n", (write_to_eeprom) ? "EEPROM" : "NOEEPROM", rgb_matrix_config.flags);
|
dprintf("rgb matrix set flags [%s]: %u\n", (write_to_eeprom) ? "EEPROM" : "NOEEPROM", rgb_matrix_config.flags);
|
||||||
}
|
}
|
||||||
|
|
||||||
led_flags_t rgb_matrix_get_flags(void) {
|
led_flags_t rgb_matrix_get_flags(void) {
|
||||||
|
|
|
@ -46,6 +46,55 @@
|
||||||
# include "ws2812.h"
|
# include "ws2812.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef RGB_MATRIX_TIMEOUT
|
||||||
|
# define RGB_MATRIX_TIMEOUT 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
||||||
|
# define RGB_MATRIX_MAXIMUM_BRIGHTNESS UINT8_MAX
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef RGB_MATRIX_HUE_STEP
|
||||||
|
# define RGB_MATRIX_HUE_STEP 8
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef RGB_MATRIX_SAT_STEP
|
||||||
|
# define RGB_MATRIX_SAT_STEP 16
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef RGB_MATRIX_VAL_STEP
|
||||||
|
# define RGB_MATRIX_VAL_STEP 16
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef RGB_MATRIX_SPD_STEP
|
||||||
|
# define RGB_MATRIX_SPD_STEP 16
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef RGB_MATRIX_DEFAULT_MODE
|
||||||
|
# ifdef ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
|
||||||
|
# define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_LEFT_RIGHT
|
||||||
|
# else
|
||||||
|
// fallback to solid colors if RGB_MATRIX_CYCLE_LEFT_RIGHT is disabled in userspace
|
||||||
|
# define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef RGB_MATRIX_DEFAULT_HUE
|
||||||
|
# define RGB_MATRIX_DEFAULT_HUE 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef RGB_MATRIX_DEFAULT_SAT
|
||||||
|
# define RGB_MATRIX_DEFAULT_SAT UINT8_MAX
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef RGB_MATRIX_DEFAULT_VAL
|
||||||
|
# define RGB_MATRIX_DEFAULT_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef RGB_MATRIX_DEFAULT_SPD
|
||||||
|
# define RGB_MATRIX_DEFAULT_SPD UINT8_MAX / 2
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef RGB_MATRIX_LED_FLUSH_LIMIT
|
#ifndef RGB_MATRIX_LED_FLUSH_LIMIT
|
||||||
# define RGB_MATRIX_LED_FLUSH_LIMIT 16
|
# define RGB_MATRIX_LED_FLUSH_LIMIT 16
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -634,11 +634,6 @@ void via_qmk_rgblight_save(void) {
|
||||||
|
|
||||||
#if defined(RGB_MATRIX_ENABLE)
|
#if defined(RGB_MATRIX_ENABLE)
|
||||||
|
|
||||||
# if !defined(RGB_MATRIX_MAXIMUM_BRIGHTNESS) || RGB_MATRIX_MAXIMUM_BRIGHTNESS > UINT8_MAX
|
|
||||||
# undef RGB_MATRIX_MAXIMUM_BRIGHTNESS
|
|
||||||
# define RGB_MATRIX_MAXIMUM_BRIGHTNESS UINT8_MAX
|
|
||||||
# endif
|
|
||||||
|
|
||||||
void via_qmk_rgb_matrix_command(uint8_t *data, uint8_t length) {
|
void via_qmk_rgb_matrix_command(uint8_t *data, uint8_t length) {
|
||||||
// data = [ command_id, channel_id, value_id, value_data ]
|
// data = [ command_id, channel_id, value_id, value_data ]
|
||||||
uint8_t *command_id = &(data[0]);
|
uint8_t *command_id = &(data[0]);
|
||||||
|
@ -727,11 +722,6 @@ void via_qmk_rgb_matrix_save(void) {
|
||||||
|
|
||||||
#if defined(LED_MATRIX_ENABLE)
|
#if defined(LED_MATRIX_ENABLE)
|
||||||
|
|
||||||
# if !defined(LED_MATRIX_MAXIMUM_BRIGHTNESS) || LED_MATRIX_MAXIMUM_BRIGHTNESS > UINT8_MAX
|
|
||||||
# undef LED_MATRIX_MAXIMUM_BRIGHTNESS
|
|
||||||
# define LED_MATRIX_MAXIMUM_BRIGHTNESS UINT8_MAX
|
|
||||||
# endif
|
|
||||||
|
|
||||||
void via_qmk_led_matrix_command(uint8_t *data, uint8_t length) {
|
void via_qmk_led_matrix_command(uint8_t *data, uint8_t length) {
|
||||||
// data = [ command_id, channel_id, value_id, value_data ]
|
// data = [ command_id, channel_id, value_id, value_data ]
|
||||||
uint8_t *command_id = &(data[0]);
|
uint8_t *command_id = &(data[0]);
|
||||||
|
|
Loading…
Reference in a new issue