summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDrashna Jaelre <drashna@live.com>2020-08-25 02:08:09 -0700
committerGitHub <noreply@github.com>2020-08-25 19:08:09 +1000
commitb338a4d8867f69bd6a92ec92e306715a4ae41740 (patch)
treed81d23c6928ef771e3fad133db5f7c1ec0dd8e99
parent1fd2f2f02227e969d4bde1ae88cd4eaa2f0ab242 (diff)
Add noeeprom speed function for RGBLIGHT (#9706)0.9.57
* [Docs] Add Speed functions to RGB Light docs * Add noeeprom functions for speed * Fix wording in doc Co-authored-by: Ryan <fauxpark@gmail.com> Co-authored-by: Ryan <fauxpark@gmail.com>
-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);