Hack your OHS 2024 Badge! There will be a hacking station during the summit to modify the badge code (we'll supply some programmers). If you want to add some of your own hardware to the badge, bring some tools and components to make your own SAO!
The front and back of the badge:
The badge features some amazing art by Enna Kim and was created by Cyber City Circuits.
The badge features:
- Eight RGB LEDs that light up the eyes, ring and body of the lil' guy
- Preloaded LED animations - use the push button to cycle through them all!
- Switch between battery and USB power
- SAO connector with power and two GPIO pins for badge addons!
The badge is compatible with Arduino IDE. However, there is no USB data connection so the badge has to have an external programmer to modify the code on the microcontroller. An easy programmer to use is the USBtinyISP which is affordable and open source. Here is a version of the board sold on Amazon:
You may need to install drivers on Windows: https://learn.adafruit.com/usbtinyisp/download
The board uses MiniCore with the Arduino IDE. Follow these instructions to install MiniCore: https://github.com/MCUdude/MiniCore?tab=readme-ov-file#how-to-install
Clone this repository and open OHS2024Badge.ino in the Arduino IDE.
Connect the USBtinyISP programmer to your computer.
From the Tools menu select:
- Board: -> MiniCore -> ATmega328
- Clock: -> Internal 8 MHz
- Variant: -> 328PB
- Programmer: -> USBtinyISP
NOTE: You do not need to set the port, the programmer will be seen as a USB device by the operating system.
Build the code by selecting from the menu Sketch -> Verify/Compile. If all goes well, the code should compile without any errors.
Now for the tricky part: We have to hold the programmer spring-loaded (pogo) pins directly onto the exposed ICSP pads on the back of the Badge. Make sure the pins from the programmer line up with the pads on the badge. There are often labels written directly on the PCBs that tell you which pin is which. If the badge becomes powered by the programmer, you know the connection is being made properly. The following pictures show how the 2x3 pin header is arranged and how to hold spring-loaded pins directly onto the badge PCB:
While holding the pins directly onto the badge, in the Arduino IDE click the menu item Sketch -> Upload Using Programmer and wait for the upload process to finish. The upload progress is shown in the IDE Output.
There are easier ways to hold the pins to the badge, such as a clip or a custom jig to clamp the pogo pins. Bring your own if you have one handy!
The default code already loaded on the badge is available in the example folder: examples/DefaultBadge/OHS2024BadgeDefault.ino
A simplified sample is provided in the main directory: OHS2024Badge.ino.
You can modify it to make your own custom animations!
The Simple Add-On (SAO) connector provides power and two GPIO pins for badge addons!