Category Archives // serious play

We recently completed a prototype that called for expressive LED lighting.  The team wanted the device to have a personality; simply turning LEDs on or off wasn’t enough. We wanted LED’s to “wake up” slowly,  gently turn off, and “breathe” (continually fade brightness up and down) with variable rhythm. More importantly, these LED animations needed happen at the same time. This requires the LED software to “multitask.” I used Arduino because it reduces complexity and development time.

There is no native support for multitasking in Arduino, so I developed a custom solution. Each LED output would be updated in sequence every time around the “loop.”  For example, if there are three LEDs, LED1 updates, then LED2, then LED3. The software loops and the LEDs are updated again. Each time an LED is updated, the Arduino software calculates the LED output brightness based on the desired animation behavior.

A software LED description (C++ class) of LED behaviors and LED attributes called LEDController was created. Each real LED is represented in Arduino software as an LEDController software object. Every time an LED is updated, its LEDController object calculates its brightness, then sends the brightness value to the Arduino (PWM) output that drives the LED.

Not much later, a project came along requiring simultaneous animation of 36 LEDs. There aren’t 36 PWM outputs readily available on Arduino, so I used two LED driver ICs (LTC3220), each capable of driving 18 LEDs. An I2C interface was added to the LEDController class so instead of controlling an Arduino PWM output, the brightness value for each LED is sent on the I2C bus to its LED driver IC.

The multitasking approach developed for LEDs can be adapted for other kinds of output devices.  For example, the LEDController PWM output could be converted to a reference signal for motor position or velocity control. Imagine controlling a set of motors, or a combination of motors and LEDs. Any project needing to control multiple analog outputs could benefit from this class or adaptations of it.  IDEO’er Dave Vondle has verified this class works with the Arduino Mini shield he created.  This would be useful if you have a project that requires rechargeable batteries or high power outputs.

I expect to continue to use and adapt LEDController, and I hope you find a use for it as well.  If you do, please post it in the comments and show off what you made!

(more…)

lion1

I taught a workshop with Anijo Mathew in October at the Illinois Institute of Technology on prototyping in electronics or “sketching in hardware.”  The class was a variation on a concept created by IDEO’s Haiyan Zhang called “Game On!”  The idea is to demonstrate how fast the participants can move from concept to interactive prototype.  It’s incredible what people with little to no previous experience can achieve in the span of a few hours.  We constrain the workshop to the creation of a game because it allows people to be silly, excited and not over complicate the challenge.

Sketching in Hardware

Sketching is a tool for conveying and capturing the right level of information as quickly as possible. When designing for interactive systems there is often value to bringing sketching off of the notepad and realizing the interaction in technology. In this workshop you will be introduced to a set of tools (in this case, Arduino + Flash/Actionscript) and will break into teams to create a game that incorporates a variety of physical interactions.

In the workshop, we had a bunch of electronic sensors that were plugged into a prototyping board called Arduino.  The Arduino was plugged into the computer with a USB cable that allows the sensors to control a game on the screen.  We started the day getting Arduino working with Adobe Flash on everyone’s computer.  After everyone got it working we split into groups and started brainstorming ideas for games.  The teams spent the last 4 hours cutting, gluing, wiring, drawing, learning and coding to end the day with working, playable games.  Check out the games they made and some technical details after the jump.

(more…)

As a going-away present for our intern Alex, an avid photographer, we decided to hack a toy camera.  Alex has an awesome signature hair cut, so we thought it would be funny to make a camera that prints his hair on all the portraits he takes.  The final design is super simple and only takes a little trial and error to get right.  We used a Diana, the plastic camera from the 60’s with a cult following.  It would also work with the newer Holga camera.

(more…)

Thanks to the good folks at WATG’s Wimberly Labs, we got a tour today of some truly remarkable visualization and collaboration technology, including EON Reality’s immersive 3D room.

The cave (or iCube, as we’re told they would prefer we call it) is comprised of three white walls and a floor, all about 10′ x 10′ in size. Onto each surface is projected a high-resolution, stereoscopic image. A viewer stands in the room wearing polarized 3D glasses — like you might use in a 3D movie — with small markers that stick out a bit from the frames. (more…)

Don’t you just hate it when you find yourself at a party without a party whistle? Are you an iPhone-aholic? Then the iPhone ToyLab has just the thing for you. Released today, the Party Whistle is your virtual party whistle (bet you didn’t see that one coming). But don’t take our word for it:

(OK, maybe that’s still taking our word for it, but, well, you know). The Party App is our Toy Lab’s first foray into fun, playful iPhone apps, and as such we thought we’d share the experiment with Labs readers. The app is a mere $0.99 at the iTunes or App store: click here to learn more.

If you download the app and try it out (say, at a New Year’s Eve party), let us know what you think by leaving a comment…

Thanks, and see you in 2009!

This one comes from Florian in our Munich office…

How’d he do it?  (more…)

There was a lot riding on the seven-inch pole-dancing doll. Tickle-Me Elmo made for another pressure point.

In fact, with eight worldwide locations, six time zones, and roughly fifty people involved, IDEO’s Global Chain Reaction looked more like a blueprint for possible points of failure than a functioning Rube Goldberg machine designed to run sequentially across three continents.

(more…)