I touched upon this subject in my late, great watsoneblog, but not since then, I believe. What I came up with back then was simple and effective. I wanted to change the abrupt turn on and turn off of the LED into the much slower turn on and turn off of an incandescent light bulb. The light bulb filament takes several tens of milliseconds to heat up and cool down, so it’s slower than the LED. If you watch the tail lights and CHMSL (center high mounted stop light) of the car in front of you, you will see the CHMSL LEDs turn on and off almost instantly, and the stop light bulbs turn on and off delayed somewhat compared to the CHMSL. Obviously this doesn’t work if all of the lights are LEDs.
I tried the easy way to get the LED to fade on and off, I put an electrolytic capacitor across it. I don’t remember what the value was, but it was well over a hundred microfarads, I believe. When there are a lot of LEDs, this capacitor can take up a lot of room and add cost to the circuit.
Another method that is more commonly used nowadays is to control the LED with a microcontroller and software. This allows the LED to be pulse width modulated, so that the current and energy wasted can be minimized. This allows the on time of succeeding LEDs to overlap the one before it, so that it can give a realistic simulation of an incandescent light bulb. Aki, the LED artist, does this with his amazing and incredible LED projects.