I have started another project. This time I have decided to join the NeoPixel crowd. Though I doubt it will be ready for this Christmas.
Rather than taking what is out there or using an Arduino, I have opted to try this from scratch. In my designs I am leaving it open as to what MCU I will use for further projects but I at least want to give the ATTiny1614 a go in this version. My current understanding is that it is supposed to support 20Mhz without an external Crystal. The small number of GPIO and 2K of RAM makes this attractive for my intended use. I am just not sure if there will be any timing issues by not having a crystal while it is said that the NeoPixels protocol is timing sensitive.
An interesting outcome of starting to look at the protocol for the NeoPixel and the MCU I have chosen, programming of this little fella is different again to the others I have been exposed to. This is using what Ateml refer to as UPDI … it is basically a single wire protocol as well so the program header only needs three connections - data, V+ and GND. With this programming protocol it is supposed to also support debugging. I will be curious to see how this all comes together.
I want to keep this as compact as possible, which is another reason for going with a smaller MCU. Even so, I have broken out what few GPIO it has incase I find another use for the board as well as for testing.
The documentation for the NeoPixel says to use a 1000μF capacitor at the supply end if powering from a power adapter. In keeping with a compact design, I am going to try mount this under the board.