In a recent post on tangible user interfaces, we mentioned an interest in using external controls to bypass direct interaction with the Grasshopper interface. This could allow anyone to use a Grasshopper definition without prior knowledge of the program. We’ve been looking at a few options for this and are exploring a range of possibilities.One gadget that caught our eye is the MakeyMakey, a Kickstarter campaign launched this year by a couple of MIT students. Reaching 2,272% of its original goal, the project is one of the most successful in the history of the site. And its no surprise after watching their sales pitch (you just can’t turn down the chance to play Mario with Play-Doh). To give users control over an interface is empowering, and there are other researchers out there who are itching to free us from the tyranny of the mouse and keyboard.For our purposes, arguably the most robust and flexible technique would be to create a remote control with a tablet computer, which is something we’ll be looking at in the near future. But the MaKeyMaKey has a good proposal for analog controllers. We like the idea of embedding toggles in found objects (including massing models themselves), as well as creating custom remote controls. Lately we’ve been looking at the Arduino, an open source microcontroller which enables interactive designs. As we delve further into open-sourced electronics, we’ll get the chance to create custom circuit boards. And while Fritzing is a great site for helping with this, laser cutting a circuit board in house would not only be awesome, but would also save time and money. With this in mind, we thought these remote controllers were a good opportunity to laser cut a circuit board. The image below displays the basics of how a MaKeyMaKey works:
A command is processed by completing a simple connection through an electrically conductive object. With this in mind, our first prototype is a radial remote control. By using two fingers, you can complete a circuit and therefore toggle any command in Grasshopper.
In the video above, we looked at rigging the Arduino to work like a MaKeyMaKey. The first sequence shows conductive objects (fruit in this case) plugged directly into an Arduino Uno. The source signal is connected to the reset switch of the Uno while the receiving signal is connected to an analog pin. Using the “Uno Read” component in Firefly, Grasshopper can be used to detect when the analog value matches the source value. Although it works in this demonstration, this technique was just for testing purposes. Tying the Capacitive Sensing library into Grasshopper with Firefly is the most effective technique (thanks to Andy Payne for the help).