I was never completely confident that my 'Shitty Pixel' SAO would be fully functional with any Defcon 27 badges so I went ahead and made my own to guarantee it.
With the Pixel Badge, you can change the animation, speed, and brightness level of the SAO. You can save the adjusted settings to EEPROM so they persist. The badge consists of a handful of buttons, an another attiny85, and indicator LED, power switch and battery holder. The microcontroller is installed in a socket, so it's removable if you want to reprogram it outside the badge although there are ICSP pads as well for use with something like this.
The code for both the SAO and the Badge could stand to be improved, but are functional enough to be released into the wild. I will post the code after Defcon so anyone with a Pixel Badge or Shitty Pixel can hack on them.
As it stands this is how the badge works:
- FUNC : Changes current function (Animation Mode, Speed, Red Brightness, Green Brightness Blue Brightness)
- SAVE : Saves current setting to EEPROM for persistance
- + : increases value
- - : decrease value
When you press the FUNC button, the indicator LED on the Badge will flash n-1 times. n being the function's number on back of badge. (MODES = no flash, SPEEDS = 1 flash, RED LEVEL = 2 flashes, GREEN LEVEL = 3 flashes, BLUE LEVEL = 4 flashes.)
Saving to EEPROM gives no feedback. Just try switching it on and off again to see if it saved.
When left on overnight some of the pixels "locked up". When I reset the badge, they came back to life, not sure what happened but I've run out of time to revise the code.
Looking forward to Defcon and meeting some other #badgelife folk. See you in the Desert!