Turns out this project is extremely straight-forward. Not sure it even deserves a spot on hackaday. Well, at least it was mostly done in a day and the code looks like a hack.
See the gallery for the finished prototype. It has the form of a tiny development board for the ATTinyX5 family with six pins for programming and one status LED.
When programmed with the code below and connected to power, the LED will be off by default with the device powered down (current drawn 0.1 uA). Pull one of the status pins down to activate the LED.
- Pin PB0: Turn LED on
- Pin PB1: Blink LED
- Pin PB2: Flash LED
If several pins are pulled low, flashing has the highest priority followed by blinking.
See the gallery for a comparison between dumb and smart LEDs. My tiny ATTiny "development" board is also pictured. It's maybe hard to see in the pictures, but in real live, the difference between dumb and smart is huge. It's a real relieve to the eyes. Maybe I'll start to like status LEDs after all. At least smart ones.
Power consumption by the microcontroller is still a bit high. Also, if anyone has further improvement ideas for the code or the design, I'd be happy to listen.