EDIT: Actually those functions help me do the animation for sure but does not


Actually those functions help me do the animation for sure but does not help me in the issue that I tried to explain - but thanks for your feedback!

To clarify what I need: I need to know the current color of each LED in my strip without handling/managing a huge array.

Does that make sense?
Any suggestions?

I went through colorutils but can’t find the function I am looking to do and would like your advice on the best way to implement it.

I use a “base” color for all my LEDs HSV=168,170,30.
Randomly some LEDs change color but after I want those LEDs that changed color to fade back to the “base” color at a speed dependant on the gap between the colors- ex if the led that changed color are at HSV=160,70,70 - I want it to do a first loop at HSV=164,120,50 and on until going to the base color HSV=168,170,30.

It is sort of a fade to black but to a specific color and with a fading % dependant on the gap between the HSV values…

Does that make sense?

Thanks for your feedback - currently I am building all this from scratch but by using existing functions there might be an easier path that I don’t see currently!

Sounds like it would be pretty. I wrote something similar where I created a base colour of blue, with flashes of white that fade back to blue for starcloth style effect. I will try and have a look later to see if it could be adapted easily for your effect

Keep BLEND ing new color back to base color, there are several types of blend, try them all

// Blend
leds[i] = blend(CRGB::Red, CRGB::Blue, sin8(10,0,255));

You can also do gradients along a strand, such as:

fill_gradient(leds, startpos, CHSV(50, 255,255) , endpos, CHSV(150,255,255), SHORTEST_HUES);
fill_gradient(leds, NUM_LEDS, CHSV(50, 255,255), CHSV(100,255,255), LONGEST_HUES);

@Francois_Oudot Not exactly what you’re looking for, but here’s another example just to give you more ideas.

Thanks all for your great and fast feedback! Will take a look and post the result here