summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/feature_rgblight.md11
-rw-r--r--quantum/rgblight.c19
-rw-r--r--quantum/rgblight.h2
3 files changed, 28 insertions, 4 deletions
diff --git a/docs/feature_rgblight.md b/docs/feature_rgblight.md
index a81b50e828..26e01da501 100644
--- a/docs/feature_rgblight.md
+++ b/docs/feature_rgblight.md
@@ -377,6 +377,17 @@ rgblight_sethsv(HSV_GREEN, 2); // led 2
|`rgblight_sethsv(h, s, v)` |Set effect range LEDs to the given HSV value where `h`/`s`/`v` are between 0 and 255 |
|`rgblight_sethsv_noeeprom(h, s, v)` |Set effect range LEDs to the given HSV value where `h`/`s`/`v` are between 0 and 255 (not written to EEPROM) |
+#### Speed functions
+|Function |Description |
+|--------------------------------------------|-------------|
+|`rgblight_increase_speed()` |Increases the animation speed |
+|`rgblight_increase_speed_noeeprom()` |Increases the animation speed (not written to EEPROM) |
+|`rgblight_decrease_speed()` |Decreases the animation speed |
+|`rgblight_decrease_speed_noeeprom()` |Decreases the animation speed (not written to EEPROM) |
+|`rgblight_set_speed()` |Sets the speed. Value is between 0 and 255 |
+|`rgblight_set_speed_noeeprom()` |Sets the speed. Value is between 0 and 255 (not written to EEPROM) |
+
+
#### layer functions
|Function |Description |
|--------------------------------------------|-------------|
diff --git a/quantum/rgblight.c b/quantum/rgblight.c
index d33484ccfd..f9e9da1679 100644
--- a/quantum/rgblight.c
+++ b/quantum/rgblight.c
@@ -406,17 +406,28 @@ void rgblight_decrease_val_helper(bool write_to_eeprom) {
}
void rgblight_decrease_val_noeeprom(void) { rgblight_decrease_val_helper(false); }
void rgblight_decrease_val(void) { rgblight_decrease_val_helper(true); }
-void rgblight_increase_speed(void) {
+
+
+void rgblight_increase_speed_helper(bool write_to_eeprom) {
if (rgblight_config.speed < 3) rgblight_config.speed++;
// RGBLIGHT_SPLIT_SET_CHANGE_HSVS; // NEED?
- eeconfig_update_rgblight(rgblight_config.raw); // EECONFIG needs to be increased to support this
+ if (write_to_eeprom) {
+ eeconfig_update_rgblight(rgblight_config.raw); // EECONFIG needs to be increased to support this
+ }
}
+void rgblight_increase_speed(void) { rgblight_increase_speed_helper(true); }
+void rgblight_increase_speed_noeeprom(void) { rgblight_increase_speed_helper(false); }
-void rgblight_decrease_speed(void) {
+void rgblight_decrease_speed_helper(bool write_to_eeprom) {
if (rgblight_config.speed > 0) rgblight_config.speed--;
// RGBLIGHT_SPLIT_SET_CHANGE_HSVS; // NEED??
- eeconfig_update_rgblight(rgblight_config.raw); // EECONFIG needs to be increased to support this
+ if (write_to_eeprom) {
+ eeconfig_update_rgblight(rgblight_config.raw); // EECONFIG needs to be increased to support this
+ }
}
+void rgblight_decrease_speed(void) { rgblight_decrease_speed_helper(true); }
+void rgblight_decrease_speed_noeeprom(void) { rgblight_decrease_speed_helper(false); }
+
void rgblight_sethsv_noeeprom_old(uint8_t hue, uint8_t sat, uint8_t val) {
if (rgblight_config.enable) {
diff --git a/quantum/rgblight.h b/quantum/rgblight.h
index c36b328a35..7b26962947 100644
--- a/quantum/rgblight.h
+++ b/quantum/rgblight.h
@@ -336,7 +336,9 @@ void rgblight_increase_val_noeeprom(void);
void rgblight_decrease_val(void);
void rgblight_decrease_val_noeeprom(void);
void rgblight_increase_speed(void);
+void rgblight_increase_speed_noeeprom(void);
void rgblight_decrease_speed(void);
+void rgblight_decrease_speed_noeeprom(void);
void rgblight_sethsv(uint8_t hue, uint8_t sat, uint8_t val);
void rgblight_sethsv_noeeprom(uint8_t hue, uint8_t sat, uint8_t val);