~ruther/qmk_firmware

b338a4d8867f69bd6a92ec92e306715a4ae41740 — Drashna Jaelre 5 years ago 1fd2f2f
Add noeeprom speed function for RGBLIGHT (#9706)

* [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>
3 files changed, 28 insertions(+), 4 deletions(-)

M docs/feature_rgblight.md
M quantum/rgblight.c
M quantum/rgblight.h
M docs/feature_rgblight.md => docs/feature_rgblight.md +11 -0
@@ 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  |
|--------------------------------------------|-------------|

M quantum/rgblight.c => quantum/rgblight.c +15 -4
@@ 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) {

M quantum/rgblight.h => quantum/rgblight.h +2 -0
@@ 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);