I'm really excited to be preparing for the World Maker Faire in New York this weekend. However, I was feeling a little bit silly attending without some kind of DIY geeky project to show off. I rummaged through my pile-o-parts and pulled out what I thought would make a fun and quick project that might just get a few laughs, too.
The spinning beachball, for those who are unaware, is the scourge of any mac owner. Any time your computer is "thinking," you get that stupid beachball on your screen, basically analgous to the old Windows hourglass. I have an Adafruit Neopixel LED ring and a Trinket development board on my workbench, and I realized that I all I needed to do to get the correct pattern for the beachball was make a tiny modification to the test code used to make sure all the LEDs are working.
After that, I had to fabricate a shell. Max Maxfield has been writing about a new free piece of software for design called Design Spark, so I figured I'd give that a try. I downloaded it and installed it with no problems and was modeling an enclosure within minutes.
Design Spark is quick, easy, and fairly intuitive. It seems as though it might be lacking in some more complex functions like sweep, but then again it is free and easy. It worked perfectly for what I was doing. The only issue I ran into was that I completely forgot to account for the diameter of the plastic extrusions on my 3-D prints, so I kept having to re-print things to get them sized exactly. This has nothing to do with Design Spark though.
Using a paperclip instead of the battery cover
I set out to power this thing off of two CR 2032 3V button cell batteries. I was fully aware that those two batteries weren't going to be able to drive the LEDs very long. But I thought it might work just long enough to film some humorous clips in which I toss the beachball to someone deep in thought. It ended up only lasting about 15 seconds though, so I ditched that idea and just ran a tether.
I didn't really want to spend any more time refining this, it was only supposed to be a one day project. I will, however, still release the frame piece with the built-in button cell holders just in case someone finds another use. If you want the Arduino code, you can download it here. I simply copied and pasted the part of the "strandtest" file that Adafruit distributes for testing the neopixel strips and modified it accordingly. If you plug a neopixel ring into pin No. 4 of a Trinket, this code will work for you.
The beachball itself is the lid to an old can of glow-in-the-dark spray paint I have had lying around for a couple years. I cut it in half and put some thin adhesive vinyl on the front in the shape of the swirls on a beachball. A few coats of that glow-in-the dark paint diffuses the light very well and also gives a cool effect when I walk into a dark room.
The final project works as I intended -- more or less. The longest part of the construction was just 3-D printing the frame to hold all the parts and the spray paint lid. I wasted far too much time building in button-cell battery holders, which I ended up not using.
hopefully I'll be getting lots of really great pictures and talking to some really cool people!
I am powering this off of 3xAAA batteries right now. The battery pack isn't too bad. Someone pointed out that I could have probably run this sucker for about a half hour off of those cr2032 button cells if I just skipped the on-board voltage regulator.