Can't thank you all enough for your help so far.

Can’t thank you all enough for your help so far. I’ll release what I have after this final hurdle.

How do you select all LEDs on the strip of the same color and dim them each time a FastLED.show() happens? For the record I have red, yellow, green and (sometimes?) blue but I just want to dim ALL green leds, leaving the others intact.

So, I have dealt with something similar. Mark K pointed me in the right direction, but it takes a bit of work. The easiest way to do this is create a CHSV array instead of a CRGB array. Then, populate it similar to how you would a CRGB. To dim just the green, you need to iterate the CHSV array looking for H=Green, and adjust V down to 0. When you get to zero, it should be dark. To brighten, just do the same, but increment V to whatever bright value you want. See below for some sample code.

CHSV strip[NUM_LEDS];
CRGB leds[NUM_LEDS];

FastLED.addLeds<>(leds, NUM_LEDS);

for (int i = 0; i < NUM_LEDS; i++) {
if (strip[i].h == HUE_GREEN) {
strip[i].v -= 2; // Do whatever you want to dim here
}
}
hsv2rgb_rainbow(leds, strip, NUM_LEDS);
FastLED.show();

I’m doing this to great effect now, and it works just fine. Hope that helps.

Will let you know tomorrow! :slight_smile: