LED effect lamp powered by Digispark, 8 RGB LEDs and the FastLED library.
- single button control
- store settings (EEPROM)
- timeout after 4 hours
- Fire2012WithPalette (FastLED) version optimized for 8 LEDs
- Digispark (ATtiny85) running at 16 MHz with the ATTinyCore (No Bootloader)
- 8 SK6812 RGB LEDs
- button mod (details below) with debouncing in software
- normal press: cycle to next pattern:
- rainbow
- rainbow -> hold color
- rainbowWithGlitter
- rainrowWithGlitter -> hold color
- Fire2012withPalette
- double quick press: save settings to EEPROM
- long press: change brightness
Two unmodified buttons on the left. Prepped right button has two legs removed:
Slightly bend one or both legs so that they are near the GND and P0 pins. Use some glue (super glue, E6000, T-7000 etc.) on the button to fixate it during soldering (and also making the bond stronger over all). Letting the glue set for a few minutes before positioning it makes the soldering process much easier.
ISP programming setup with Atmel-ICE:
Using the 'No Bootloader' variants of ATTinyCore removes the 5 second boot delay that the Digisparks normally have and also saves some flash memory:
Sketch uses 6140 bytes (74%) of program storage space. Maximum is 8192 bytes. Global variables use 248 bytes (48%) of dynamic memory, leaving 264 bytes for local variables. Maximum is 512 bytes.
At max brightness i've seen around 0.6 and 0.7 W (120 mA and 140 mA at 5 V).