When [hkdcsf] was a teenager, he made a Christmas star with an up counter driving decoder logic and using transistors to light LEDs in festive patterns. He’s revisited this project using modern techniques including a microcontroller, a DC/DC converter, and constant current LED drivers.
The project uses two AA batteries, and that’s what makes the DC/DC converter necessary. Blue LEDs have a forward voltage of just over 3V, and the LED driver chip requires about 0.6V of overhead. Two fresh AAs will run a tad above 3V, but as they discharge, or if he’s using rechargeables, there just won’t be enough potential. To make sure the star works even with whatever LEDs are chosen, the converter takes the nominal 3V from the batteries and converts it to 3.71V.
The microcontroller can operate off of the DC/DC converter voltage or directly from the batteries. The converter is important because the controller disables the DC/DC converter during sleep mode to conserve battery life. The PIC16LF1703 will run down to 1.8V and is miserly on power consumption, especially in sleep mode.
The LED driver takes SPI commands from the PIC and turns the LEDs on. The software on the PIC uses a state machine architecture to drive the animations you can see in the videos below.
The project documentation is impressive and includes a high-level overview of the software and the hardware. There’s also scope captures and information on what drove [hkdcsf’s] design decisions. The star-shaped PCB is a nice touch, too.