RGB Matrix: Reload from EEPROM (#15923)

Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
This commit is contained in:
Adam Lickel 2022-02-04 19:08:48 -08:00 committed by GitHub
parent 119cadbaae
commit eb8ace0855
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 14 additions and 0 deletions

View File

@ -709,6 +709,7 @@ Where `28` is an unused index from `eeconfig.h`.
|`rgb_matrix_decrease_speed_noeeprom()` |Decrease the speed of the animations (not written to EEPROM) | |`rgb_matrix_decrease_speed_noeeprom()` |Decrease the speed of the animations (not written to EEPROM) |
|`rgb_matrix_set_speed(speed)` |Set the speed of the animations to the given value where `speed` is between 0 and 255 | |`rgb_matrix_set_speed(speed)` |Set the speed of the animations to the given value where `speed` is between 0 and 255 |
|`rgb_matrix_set_speed_noeeprom(speed)` |Set the speed of the animations to the given value where `speed` is between 0 and 255 (not written to EEPROM) | |`rgb_matrix_set_speed_noeeprom(speed)` |Set the speed of the animations to the given value where `speed` is between 0 and 255 (not written to EEPROM) |
|`rgb_matrix_reload_from_eeprom()` |Reload the effect configuration (enabled, mode and color) from EEPROM |
### Change Color :id=change-color ### Change Color :id=change-color
|Function |Description | |Function |Description |

View File

@ -164,6 +164,16 @@ void eeconfig_debug_rgb_matrix(void) {
dprintf("rgb_matrix_config.flags = %d\n", rgb_matrix_config.flags); dprintf("rgb_matrix_config.flags = %d\n", rgb_matrix_config.flags);
} }
void rgb_matrix_reload_from_eeprom(void) {
rgb_matrix_disable_noeeprom();
/* Reset back to what we have in eeprom */
eeconfig_init_rgb_matrix();
eeconfig_debug_rgb_matrix(); // display current eeprom values
if (rgb_matrix_config.enable) {
rgb_matrix_mode_noeeprom(rgb_matrix_config.mode);
}
}
__attribute__((weak)) uint8_t rgb_matrix_map_row_column_to_led_kb(uint8_t row, uint8_t column, uint8_t *led_i) { return 0; } __attribute__((weak)) uint8_t rgb_matrix_map_row_column_to_led_kb(uint8_t row, uint8_t column, uint8_t *led_i) { return 0; }
uint8_t rgb_matrix_map_row_column_to_led(uint8_t row, uint8_t column, uint8_t *led_i) { uint8_t rgb_matrix_map_row_column_to_led(uint8_t row, uint8_t column, uint8_t *led_i) {

View File

@ -136,6 +136,8 @@ void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max);
void rgb_matrix_init(void); void rgb_matrix_init(void);
void rgb_matrix_reload_from_eeprom(void);
void rgb_matrix_set_suspend_state(bool state); void rgb_matrix_set_suspend_state(bool state);
bool rgb_matrix_get_suspend_state(void); bool rgb_matrix_get_suspend_state(void);
void rgb_matrix_toggle(void); void rgb_matrix_toggle(void);
@ -182,6 +184,7 @@ void rgb_matrix_set_flags(led_flags_t flags);
#ifndef RGBLIGHT_ENABLE #ifndef RGBLIGHT_ENABLE
# define eeconfig_update_rgblight_current eeconfig_update_rgb_matrix # define eeconfig_update_rgblight_current eeconfig_update_rgb_matrix
# define rgblight_reload_from_eeprom rgb_matrix_reload_from_eeprom
# define rgblight_toggle rgb_matrix_toggle # define rgblight_toggle rgb_matrix_toggle
# define rgblight_toggle_noeeprom rgb_matrix_toggle_noeeprom # define rgblight_toggle_noeeprom rgb_matrix_toggle_noeeprom
# define rgblight_enable rgb_matrix_enable # define rgblight_enable rgb_matrix_enable