diff --git a/arduino/mqttfastledmenu/mqttfastledmenu.cpp b/arduino/mqttfastledmenu/mqttfastledmenu.cpp index 1f9e030..689bf5a 100644 --- a/arduino/mqttfastledmenu/mqttfastledmenu.cpp +++ b/arduino/mqttfastledmenu/mqttfastledmenu.cpp @@ -176,22 +176,26 @@ void ledCylon() } if ((i - 2) >= 0) { /* - * Se lit 204/256 d'intensité lumineuse - * àhttps://github.com/FastLED/FastLED/wiki/Pixel-reference#dimming-and-brightening-colors + * Se lit 128/256 d'intensité lumineuse actuelle + * https://github.com/FastLED/FastLED/wiki/Pixel-reference#dimming-and-brightening-colors */ - leds[i - 2] %= 204; + leds[i - 2].fadeLightBy(240); } - if ((i - 2) >= 1) { - leds[i - 2] %= 153; + if ((i - 1) >= 0) { + leds[i - 1].fadeLightBy(200); } leds[i] = color; if ((i + 1) <= LED_NUM) { - leds[i - 2] %= 153; + leds[i + 1] = color; + // Je suis volontairement un peu moins puissant sur l'avant + // pour donner un effet de trainée sur l'arrière + leds[i + 1].fadeLightBy(220); } if ((i + 2) <= LED_NUM) { - leds[i - 2] %= 204; + leds[i + 2] = color; + leds[i + 2].fadeLightBy(240); } FastLED.delay(1000 / speed); @@ -201,27 +205,29 @@ void ledCylon() for(int i = LED_NUM - 1; i > 0; i--) { client.loop(); - if ((i - 2) >= 0) { - /* - * Se lit 204/256 d'intensité lumineuse - * àhttps://github.com/FastLED/FastLED/wiki/Pixel-reference#dimming-and-brightening-colors - */ - leds[i - 2] %= 204; + if (ledEffect != LED_EFFECT_CYLON) { + return; } - if ((i - 2) >= 1) { - leds[i - 2] %= 153; + + if ((i - 2) >= 0) { + leds[i - 2] = color; + leds[i - 2].fadeLightBy(240); + } + if ((i - 1) >= 0) { + leds[i - 1] = color; + leds[i - 1].fadeLightBy(220); } leds[i] = color; if ((i + 1) <= LED_NUM) { - leds[i - 2] %= 153; + leds[i + 1].fadeLightBy(200); } if ((i + 2) <= LED_NUM) { - leds[i - 2] %= 204; + leds[i + 2].fadeLightBy(240); } if ((i + 3) <= LED_NUM) { - leds[i - 3] = CRGB::Black; + leds[i + 3] = CRGB::Black; } FastLED.delay(1000 / speed);