Lisp Programmable Star
David Johnson-Davies has designed an ATtiny3227-based PCB star that features six LEDs, programmed in uLisp.
The holiday season is here, meaning an abundance of sparkly decorations both indoors and out. While most lights are plug-and-play, if you’d like a bit more control over your blinkenlights, then the Lisp Star by David Johnson-Davies may be just the thing.
The star takes the form of a seven-pointed star-shaped PCB. Six of the points contain an LED and resistor, while the seventh, top, point has a convenient mounting/hanging hole. An ATtiny3227 microcontroller sits in the middle, with a button for user interface, and a 6-pin connection for Serial FTDI programming. A coin cell holder on the back powers everything, and you can fold down the tabs to keep the battery in place – especially useful if it’s going to be around kids.
What makes it particularly interesting interface-wise is that the device's ATtiny3227 microcontroller – with 32Kbytes of Flash, and 3Kbytes of RAM–is capable of running DJD’s Lisp interpreter, uLisp. Setting this up requires you to fist install a bootloader, then uLisp itself via the Arduino IDE. Once this is done, you can then program the device over a serial interface on its uLisp interpreter.
It’s a rather neat setup, initially inspired by the incongruity of an item of jewelry running a high-level programming language. Beyond that little bit of humor, it’s meant as a way to introduce people to programming via custom flashing LED patterns, rather than typing "hello word." Instructions, along with lots of uLisp examples, can be found in the project's write-up.