1
0

Add {rgb|led}_matrix_get_mode_name(). (#25344)

This commit is contained in:
Nick Brassel
2025-06-07 22:56:58 +10:00
committed by GitHub
parent e3c8c23d91
commit 7808f8f56b
10 changed files with 164 additions and 96 deletions

View File

@@ -107,7 +107,11 @@ void eeconfig_update_led_matrix_default(void) {
void eeconfig_debug_led_matrix(void) {
dprintf("led_matrix_eeconfig EEPROM\n");
dprintf("led_matrix_eeconfig.enable = %d\n", led_matrix_eeconfig.enable);
#ifdef LED_MATRIX_MODE_NAME_ENABLE
dprintf("led_matrix_eeconfig.mode = %d (%s)\n", led_matrix_eeconfig.mode, led_matrix_get_mode_name(led_matrix_eeconfig.mode));
#else
dprintf("led_matrix_eeconfig.mode = %d\n", led_matrix_eeconfig.mode);
#endif // LED_MATRIX_MODE_NAME_ENABLE
dprintf("led_matrix_eeconfig.val = %d\n", led_matrix_eeconfig.val);
dprintf("led_matrix_eeconfig.speed = %d\n", led_matrix_eeconfig.speed);
dprintf("led_matrix_eeconfig.flags = %d\n", led_matrix_eeconfig.flags);
@@ -525,7 +529,11 @@ void led_matrix_mode_eeprom_helper(uint8_t mode, bool write_to_eeprom) {
}
led_task_state = STARTING;
eeconfig_flag_led_matrix(write_to_eeprom);
dprintf("led matrix mode [%s]: %u\n", (write_to_eeprom) ? "EEPROM" : "NOEEPROM", led_matrix_eeconfig.mode);
#ifdef LED_MATRIX_MODE_NAME_ENABLE
dprintf("led matrix mode [%s]: %u (%s)\n", (write_to_eeprom) ? "EEPROM" : "NOEEPROM", (unsigned)led_matrix_eeconfig.mode, led_matrix_get_mode_name(led_matrix_eeconfig.mode));
#else
dprintf("led matrix mode [%s]: %u\n", (write_to_eeprom) ? "EEPROM" : "NOEEPROM", (unsigned)led_matrix_eeconfig.mode);
#endif // LED_MATRIX_MODE_NAME_ENABLE
}
void led_matrix_mode_noeeprom(uint8_t mode) {
led_matrix_mode_eeprom_helper(mode, false);
@@ -652,3 +660,48 @@ void led_matrix_set_flags(led_flags_t flags) {
void led_matrix_set_flags_noeeprom(led_flags_t flags) {
led_matrix_set_flags_eeprom_helper(flags, false);
}
// LED Matrix naming
#undef LED_MATRIX_EFFECT
#ifdef LED_MATRIX_MODE_NAME_ENABLE
const char *led_matrix_get_mode_name(uint8_t mode) {
switch (mode) {
case LED_MATRIX_NONE:
return "NONE";
# define LED_MATRIX_EFFECT(name, ...) \
case LED_MATRIX_##name: \
return #name;
# include "led_matrix_effects.inc"
# undef LED_MATRIX_EFFECT
# ifdef COMMUNITY_MODULES_ENABLE
# define LED_MATRIX_EFFECT(name, ...) \
case LED_MATRIX_COMMUNITY_MODULE_##name: \
return #name;
# include "led_matrix_community_modules.inc"
# undef LED_MATRIX_EFFECT
# endif // COMMUNITY_MODULES_ENABLE
# if defined(LED_MATRIX_CUSTOM_KB) || defined(LED_MATRIX_CUSTOM_USER)
# define LED_MATRIX_EFFECT(name, ...) \
case LED_MATRIX_CUSTOM_##name: \
return #name;
# ifdef LED_MATRIX_CUSTOM_KB
# include "led_matrix_kb.inc"
# endif // LED_MATRIX_CUSTOM_KB
# ifdef LED_MATRIX_CUSTOM_USER
# include "led_matrix_user.inc"
# endif // LED_MATRIX_CUSTOM_USER
# undef LED_MATRIX_EFFECT
# endif // LED_MATRIX_CUSTOM_KB || LED_MATRIX_CUSTOM_USER
default:
return "UNKNOWN";
}
}
# undef LED_MATRIX_EFFECT
#endif // LED_MATRIX_MODE_NAME_ENABLE

View File

@@ -184,6 +184,10 @@ led_flags_t led_matrix_get_flags(void);
void led_matrix_set_flags(led_flags_t flags);
void led_matrix_set_flags_noeeprom(led_flags_t flags);
#ifdef LED_MATRIX_MODE_NAME_ENABLE
const char *led_matrix_get_mode_name(uint8_t mode);
#endif // LED_MATRIX_MODE_NAME_ENABLE
static inline bool led_matrix_check_finished_leds(uint8_t led_idx) {
#if defined(LED_MATRIX_SPLIT)
if (is_keyboard_left()) {

View File

@@ -109,7 +109,11 @@ void eeconfig_update_rgb_matrix_default(void) {
void eeconfig_debug_rgb_matrix(void) {
dprintf("rgb_matrix_config EEPROM\n");
dprintf("rgb_matrix_config.enable = %d\n", rgb_matrix_config.enable);
#ifdef RGB_MATRIX_MODE_NAME_ENABLE
dprintf("rgb_matrix_config.mode = %d (%s)\n", rgb_matrix_config.mode, rgb_matrix_get_mode_name(rgb_matrix_config.mode));
#else
dprintf("rgb_matrix_config.mode = %d\n", rgb_matrix_config.mode);
#endif // RGB_MATRIX_MODE_NAME_ENABLE
dprintf("rgb_matrix_config.hsv.h = %d\n", rgb_matrix_config.hsv.h);
dprintf("rgb_matrix_config.hsv.s = %d\n", rgb_matrix_config.hsv.s);
dprintf("rgb_matrix_config.hsv.v = %d\n", rgb_matrix_config.hsv.v);
@@ -560,7 +564,11 @@ void rgb_matrix_mode_eeprom_helper(uint8_t mode, bool write_to_eeprom) {
}
rgb_task_state = STARTING;
eeconfig_flag_rgb_matrix(write_to_eeprom);
dprintf("rgb matrix mode [%s]: %u\n", (write_to_eeprom) ? "EEPROM" : "NOEEPROM", rgb_matrix_config.mode);
#ifdef RGB_MATRIX_MODE_NAME_ENABLE
dprintf("rgb matrix mode [%s]: %u (%s)\n", (write_to_eeprom) ? "EEPROM" : "NOEEPROM", (unsigned)rgb_matrix_config.mode, rgb_matrix_get_mode_name(rgb_matrix_config.mode));
#else
dprintf("rgb matrix mode [%s]: %u\n", (write_to_eeprom) ? "EEPROM" : "NOEEPROM", (unsigned)rgb_matrix_config.mode);
#endif // RGB_MATRIX_MODE_NAME_ENABLE
}
void rgb_matrix_mode_noeeprom(uint8_t mode) {
rgb_matrix_mode_eeprom_helper(mode, false);
@@ -738,3 +746,49 @@ void rgb_matrix_set_flags(led_flags_t flags) {
void rgb_matrix_set_flags_noeeprom(led_flags_t flags) {
rgb_matrix_set_flags_eeprom_helper(flags, false);
}
//----------------------------------------------------------
// RGB Matrix naming
#undef RGB_MATRIX_EFFECT
#ifdef RGB_MATRIX_MODE_NAME_ENABLE
const char *rgb_matrix_get_mode_name(uint8_t mode) {
switch (mode) {
case RGB_MATRIX_NONE:
return "NONE";
# define RGB_MATRIX_EFFECT(name, ...) \
case RGB_MATRIX_##name: \
return #name;
# include "rgb_matrix_effects.inc"
# undef RGB_MATRIX_EFFECT
# ifdef COMMUNITY_MODULES_ENABLE
# define RGB_MATRIX_EFFECT(name, ...) \
case RGB_MATRIX_COMMUNITY_MODULE_##name: \
return #name;
# include "rgb_matrix_community_modules.inc"
# undef RGB_MATRIX_EFFECT
# endif // COMMUNITY_MODULES_ENABLE
# if defined(RGB_MATRIX_CUSTOM_KB) || defined(RGB_MATRIX_CUSTOM_USER)
# define RGB_MATRIX_EFFECT(name, ...) \
case RGB_MATRIX_CUSTOM_##name: \
return #name;
# ifdef RGB_MATRIX_CUSTOM_KB
# include "rgb_matrix_kb.inc"
# endif // RGB_MATRIX_CUSTOM_KB
# ifdef RGB_MATRIX_CUSTOM_USER
# include "rgb_matrix_user.inc"
# endif // RGB_MATRIX_CUSTOM_USER
# undef RGB_MATRIX_EFFECT
# endif // RGB_MATRIX_CUSTOM_KB || RGB_MATRIX_CUSTOM_USER
default:
return "UNKNOWN";
}
}
# undef RGB_MATRIX_EFFECT
#endif // RGB_MATRIX_MODE_NAME_ENABLE

View File

@@ -220,6 +220,10 @@ void rgb_matrix_set_flags(led_flags_t flags);
void rgb_matrix_set_flags_noeeprom(led_flags_t flags);
void rgb_matrix_update_pwm_buffers(void);
#ifdef RGB_MATRIX_MODE_NAME_ENABLE
const char *rgb_matrix_get_mode_name(uint8_t mode);
#endif // RGB_MATRIX_MODE_NAME_ENABLE
#ifndef RGBLIGHT_ENABLE
# define eeconfig_update_rgblight_current eeconfig_force_flush_rgb_matrix
# define rgblight_reload_from_eeprom rgb_matrix_reload_from_eeprom