summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/feature_rgblight.md1
-rw-r--r--quantum/rgblight.c6
2 files changed, 6 insertions, 1 deletions
diff --git a/docs/feature_rgblight.md b/docs/feature_rgblight.md
index a2820347de..0205ebe91a 100644
--- a/docs/feature_rgblight.md
+++ b/docs/feature_rgblight.md
@@ -122,6 +122,7 @@ The following options can be used to tweak the various animations:
|`RGBLIGHT_EFFECT_KNIGHT_LED_NUM` |`RGBLED_NUM` |The number of LEDs to have the "Knight" animation travel |
|`RGBLIGHT_EFFECT_CHRISTMAS_INTERVAL`|`1000` |How long to wait between light changes for the "Christmas" animation, in milliseconds|
|`RGBLIGHT_EFFECT_CHRISTMAS_STEP` |`2` |The number of LEDs to group the red/green colors by for the "Christmas" animation |
+|`RGBLIGHT_RAINBOW_SWIRL_RANGE` |`360` |Range adjustment for the rainbow swirl effect to get different swirls |
You can also modify the speeds that the different modes animate at:
diff --git a/quantum/rgblight.c b/quantum/rgblight.c
index 94e9c0a3b2..9ce3b23092 100644
--- a/quantum/rgblight.c
+++ b/quantum/rgblight.c
@@ -679,6 +679,10 @@ void rgblight_effect_rainbow_mood(uint8_t interval) {
#endif
#ifdef RGBLIGHT_EFFECT_RAINBOW_SWIRL
+#ifndef RGBLIGHT_RAINBOW_SWIRL_RANGE
+ #define RGBLIGHT_RAINBOW_SWIRL_RANGE 360
+#endif
+
__attribute__ ((weak))
const uint8_t RGBLED_RAINBOW_SWIRL_INTERVALS[] PROGMEM = {100, 50, 20};
@@ -692,7 +696,7 @@ void rgblight_effect_rainbow_swirl(uint8_t interval) {
}
last_timer = timer_read();
for (i = 0; i < RGBLED_NUM; i++) {
- hue = (360 / RGBLED_NUM * i + current_hue) % 360;
+ hue = (RGBLIGHT_RAINBOW_SWIRL_RANGE / RGBLED_NUM * i + current_hue) % 360;
sethsv(hue, rgblight_config.sat, rgblight_config.val, (LED_TYPE *)&led[i]);
}
rgblight_set();