Light Saber Controller
Last week we went to the Hasbro Hackathon, it was a ton of fun. Brass Monkey formed a team and our main entry was a cool multi-player music timing game. The more interesting part though was having access to a bunch of 3D printers and making a cool prototype using them.
TL;DR. Jump To The Video.
The neat thing about this hackathon was that we had access to every tool imaginable, including 3D printer. More interestingly we also had access to piles of their products that we were allowed to disassemble and reuse in any way we saw fit. We competed to build the coolest hardware/software mashup over a two day period. We barely slept for those two days. It was so much fun and we learned a lot.
MakerBot had an evangelist there and they had a few of their latest 3D printers. The evangelist was helping everyone with their 3D printing questions. We wanted to come up with a cool 3D printing idea. We always thought it'd be cool to create peripherals that mixed with Brass Monkey's phones as controllers tech. The first idea that came to mind based on products around us, was this Light Saber one.
The first problem we had was trying to figure out how to create a mold that would make it so that we could easily attach and detach our iPhone to the light saber. It turned out that we were able to reuse a design we found on Thingiverse. The design was originally for attaching your phone to bike handlebars so people could use their phone as a GPS and hands free radio. We only had to modify the radius of the attachment that would wrap the light saber's handle. Once we did that it was pretty easy going. We were able to print out the design in about an hour. It fit first try! Next up was getting the software side of things working.
The software side ended up also being easy. This was thanks to leveraging the Brass Monkey Controller SDK and reusing our HTML5 Accelerometer SDK Example. To try out the example, install the Brass Monkey app and open the accelerometer example page. The demo displays a virtual device that matches the orientation of your phone as you move it. We just changed the geometry of the on screen device to be shaped more like a light saber. We then added the ability for the virtual light saber to flash red when the phone's screen was touched.
That was it, all told this prototype probably took about two and half hours to develop.
The almost final results
In our sleep deprived state we didn't record the final version, but here's an earlier video we made. We hadn't yet fixed the virtual light saber to properly pivot around it's bottom. Here it was rotating around it's center, that is why the on screen light saber doesn't quite match the real one in this video.
It's hard to tell from this video, but the virtual light saber would flash red when the real world one flashed red.
This experiment definitely proved our thesis. Mobile phones/components are going to create or at least finally mainstream many unique input methods due to constantly dropping cost of components, better prototyping tools, and new markets larger than any gaming console in history.
Brass Monkey's SDK is perfectly geared towards creating/prototyping these new forms of input. Check it out sometime. It only takes minutes to get a basic controller going.