For those who are interested in dithering and smooth (long tail) fades. I continued with my quest on getting the smooth fades like I can get with FadeCandy. FastLED dithering is brilliant but works on master brightness not on individual pixels.
In the HexaWS2811 code Richard applied a dithering method by walking through arrays. Due the inner working of FastLED pixel values of 1 are also 0 (so not visible). The dithering first didn’t work good (pixels started to light up at a value around 30). Now there is a flag in the script to render the table for FastLED (or use the table in my example below).
For the purists we actually don’t want a gamma correction curve but a luminance correction curve. Check: http://ledshield.wordpress.com/2012/11/13/led-brightness-to-your-eye-gamma-correction-no/
Peter pointed me to the right code. I’ve made a little script to render a lookup table with this curve: https://gist.github.com/kasperkamperman/3c3f72208366ed885f2f
Raplin implemented this curve now also in his Python script to render the dither tables: https://github.com/raplin/HexaWS2811/blob/master/gamma.py
This curve is a bit brighter at the lower and the higher end. In the end the name doesn’t matter of course. I think the luminance curve looks a bit better for my design, but in some situations the gamma curve could work better as well.
In order for the dithering to work without too much flickering you have to update fast. I’m updating now every 1724us (580Hz, same as APA102 PWM) with a 4 bit table (Teensy 3.0). If you work with slower speeds I think it’s better to render a 3 bit table (on ARM probably 1 or 2 bit).
Also make sure that your timing is fixed. Doing things that take longer messes up the dither frequency.
With the introduction of parallel processing (and octoWS2811 support) in FastLED 3.1 this dither method also becomes possible with the WS2812b (using short strings). If you design for that I think you could use the FadeCandy design principle of 64 leds on one output.
Arduino/FastLED code example:
https://gist.github.com/kasperkamperman/4461a70dd0841f80ddf4
