I'm playing around with designing a somewhat minimalist controller using just an ESP8266-01, a regulator, a transistor and a few passive components. My intent is to force it into a small floral tube from Amazon, requiring the ESP8266 be soldered to the PCBA. The thing that is different about this is that the pixel data is stored on the controller in the program memory of the ESP. Since there isn't enough memory in even the 4MB version of the ESP8266-01 to store raw pixel data (i.e. 3 bytes for each pixel for each update interval) for a decent number of pixels for a decent length show, I'm instead storing segment control data in the program memory, each segment data consisting a definition of a region on the string/strip, effects for all of the pixels in that segment (such as clear all pixels, set all pixels to a certain color, dim the pixels in that region, etc) as well as counter information that determines the pace of changes to that segment and the length of time that the segment would exist. At the moment I'm limiting each controller to supporting up to 250 pixels, with a fixed 25 mS (40 Hz) refresh rate. I don't think that any of the current sequencing programs support anything close to the pixel control format that I'm using, so I'll either have to do a lot of manual formatting, or write my own small sequencer program. Oh well, something to keep me busy next year.