Hi again,
Making a microcontroller generate 3 or more channels or PWM, as far as I'm concerned, is the easy part. We need TWO touch switches/plates, one for ON/OF/intensity and one for White/Colour cycle. Thinking about it, getting the micro to distinquish from a 'touch' and a 'hold' would be straight forward using the micro's timer.
I've been tihnking about it, and for a true 'one-chip' soluiton, I think the difficult part now would be controlling the brightness. Of course, adding a small external circuit for this shouldn't be too difficult, as the 'brightness' part, would be a single channel PWM, almost identical to the ones available on the market today, with the exception that it should run at a higher frequency than the 'colour' PWM.
In a few tests, I *could* see some flickering at frequencies below 300Hz, but only when I turned my head/eyes quickly. I don't know how some websites
suggest 'anything below 200'. But an MCU could do PWM up into the high Khz.
Now, all the above is assuming we go down the MCU route, which, as has been discussed, isn't always preferable. As for the 'non MCU' design, I believe the 'brightness' control would be exactly the same as above, we just have to worry about generating PWM for each LED die, AND cycling through colours.
A digital 'counter and compare' would require quite a few IC's, but all would be pretty damn cheap since they'd just be logic CMOS/TTL, 3 IC's per PWM (for 8-bit, 6 IC's for 8+ bits resolution). Thats 9 IC's already.
And then theres the colour cycle to think about....the obvious way would be (using the above 'logic method') to have each 8-bit PWM for each LED's start at zero....and then increment all 8-bit numbers as if it was one large 24-bit number. This is impractical...as it would include all the 'brightness levels' (0,0,0 would be a number, which is 'off' and 0,12,40 would be a faint blue), and also, the user would have to stand there for hours whilst is cycles through every available colour. Thinking about it, 32 levels of PWM (5-bit resolution) or even 16 levels (4-bit) would still provide many useful colours, again, because we have a seperate brightness control....every colour we use should have one of the LED's at its maximum (if you need a better explaination of this, I'll try). 10 bit+ in my opinion, would be over kill, this is lighting, not a high res LED TV.
I did say I'd draw up a schem at some point, but ...work as always, still, theres the weekend. I think I could cover the 'brightness dimmer touch switch', the 'LED power driver', as for the colour sequences, I have a couple of idea's, but it looks like using a micro for that part would be the quickest, simplest, and cheapest route (NOT including time/money to learn micro's!!).
The link 'Tarsil' provided was very useful indeed. the code will need slight modification, to add the 'touch switch/dimmer' for colour (and use up a timer for that matter) but it sohuldn't be too difficult. I will write up my own code based on a different PWM algorithm at some point, and test it. If it'll work for one RGB led, it'll work for thousands
sigedal,
I realise you wanted to design this yourself, but I am starting to think adding a MCU would be alot easier. It would only have to be a small 8-pin thing, I am more than willing (as are many others here

) to help you with the code, and it will just control the colour sequence, when the 'colour touch plate' is held. The dimmer part would be seperate.
I've also got a few idea's for mounting. And then theres diffusion...and how to 'drive' the LED's (series/parallel?). But, I really >DONT< want to seem like i'm taking over. Its just I spent a while messing with these great LED's a while back, but I never got the chance to share my idea's/circuits. If it seems like I'm 'going too far' just say lol
Blueteeth.