While checking one of the open source electronics websites I came across instructions on how to make some costume goggles with individual addressable LEDs.
But just following some assembly instructions and uploading some code isn't a challenge for me. So I decided to make my own advanced version of these goggles.
Here are my goggles in the current prototyping stage. The main difference is that I don't have one LED ring per eye but two. As you can see the goggles house a 24 LED and 16 LED ring. To accomplish this I designed and 3D printed an insert that hold the LED rings neatly in place but still provide access to the soldering pads. I also designed it in such away that it prevents light leaking to the sides. So they goggles could be safely worn even when the LEDs are on.
I thought about adding Bluetooth capabilities but since I don't own a smartphone and don't want to walk around with an iPad during parties I opted for manual controls. At the moment I use three potentiometers and a button.
The code is non blocking and uses a state machine for the animations. The button uses an interrupt but it doesn't have to be. By using timed events and a state machine instead of delays it is easier to create steady frame rates, react faster to buttons and dials and future proofs it for hardware like bluetooth where we need to be able to detect incoming data.
The code is really scalable. It is just a matter of adding a new animation to the switch case.
The idea is that the finished project will be fully contained around the goggles. This will include the micro controller, manual controls and battery. The LEDs require 5V logic. Therefor I ordered something similar to an Arduino Micro for the final version of the goggles. It has a small form factor and removes the need for logic level shifting. I will be on the lookout for some cooler looking potentiometers and buttons.
It will also require designing and 3d printing an enclosure that will contain the micro processor, batteries and controls. But that will be a post for another time.
George Timmermans, Research Toolmaker, Software Engineer and Tinkerer