Arduino fade to color change
I think line 84 that keeps the leds green instead of going black. I think line 81 is there to create some kind of shimmer effect on some of the green leds and to skew the color to a bit more green. So I removed those. To prevent the leds from going to black instead of green, I added an if statement that stops any further fading out, if the total &quot;brightness&quot; is 16 or lower. I have no idea how this will look. You might have to tweak this 16-value a bit.
That's the best I could do without a full rewrite of the code.
void SingleDrift() {
  int mini = 5;
  int maxi = 255;
  FastLED.setBrightness(maxi);
  for (int i = 0; i &lt; NUM_LEDS; i++)
  {
    if (leds[i].r &gt; 64) leds[i].r = leds[i].r - 8;
    if (leds[i].g &gt; 64) leds[i].g = leds[i].g - 8;
    if (leds[i].b &gt; 64) leds[i].b = leds[i].b - 8;

    if ( (leds[i].r + leds[i].g + leds[i].b) &gt; 16) // prevent fading to black
    {
      int rnd = random(10);
      if (rnd == 1 &amp;&amp; leds[i].r &gt;= 2) leds[i].r = leds[i].r - 1;
      if (rnd == 2 &amp;&amp; leds[i].g &gt;= 2) leds[i].g = leds[i].g - 1;
      if (rnd == 3 &amp;&amp; leds[i].b &gt;= 2) leds[i].b = leds[i].b - 1;
      if (rnd == 4) leds[i].fadeToBlackBy(2);
      //if (rnd == 5) leds[i].g++;
      //if (rnd == 6 &amp;&amp; leds[i].g &lt; 240) leds[i].g = leds[i].g + 1;
      //if (rnd == 7 &amp;&amp; leds[i].b &lt; 240) leds[i].b = leds[i].b + 1;
      //if (leds[i].g &lt; 2) leds[i].g = 2; // I think this line kept the leds green
    }
  }
  ...