I designed and built these button pins as an art contribution to the BaconWood festival. BaconWood is a bacon and music festival that takes place in the Mendecino woodlands. 100 of these were distributed to the crowd, making this giant bacon party more colorful and blinky.

The MCU controls each LED individually with 4bit PWM. I built a pattern framework which allows for different types of patterns (blinking, twirling, random, ...). The framework can do various thing like palette animation, color ranges, operate at different speeds and so on.

The idea was to make a cool little pin in itself, but also to design a cheap modular node that can be network to one another to use for other projects. In other words, these pins can be meshed into a network. Each one can receive, emit or retransmit patterns.

The board is made so that there's a 4 pins connector on either side. The 4 pin connector is (VCC, GND, IO, IO), where IO is a bidirectional UART. I wrote a software UART using a simple protocol and interuptions on these IO pins. The message is typically a lighting pattern, validation and timing as to when to pass the pattern to the next neighbor.

I designed the PCB using Eagle, the PCB were printed by AP Circuits, the parts ordered from DigiKey, the LEDs from somewhere in China, and the whole was hand soldered by yours truly (yes, it did take a million hours).

These pin can be assembled in strings or meshes. I have 100 left. Stay tuned to see what I'm going to do with them.

I programmed this 3D version of the classic Pong game that plays in a cylinder and wanted to open the source code for it under the GPL license. It is written in Java using the Processing.org framework/IDE.

Note that:
* it is possible to put effect on the ball based on the movement of the paddle while hitting the ball
* a circle moves along the Z axis to help with depth perception
* a menu is accessible to tune some parameters

It was made as an experiment, and purely for fun. The gameplay is currently limited since your NPC opponent will never miss the ball (his paddle XY coordinates are tied to the ball's). I shelved the project, but wanted to have the paddle controlled using hand gestures while using simple computer vision.

I was envisioning a projection screen in the middle of a room with a player on either side. Each side has a projector, a webcam that reads player motion and, you guessed it: a player. The ball accelerates and the amount of effect on it increases as the exchange lasts, until someone misses. First to get 11 points win.

This was meant to be a prototype so the code might not be perfect and commented.

If someone was to tell me "I know what you did last summer", that would mean that they know about my involvement in project Pixmob, a crowd display technology developed by Eski and used by the Cirque du Soleil in a show they put together for Microsoft Kinect's launch.

I played an important creative and executive role on the project: from prototyping, to design, to soldering, to hiring and managing troops. Basically just doing whatever it took to making it happen.

From Eski's site:

In Los Angeles, on June 13 2010, with a mise-en-scène by Cirque du Soleil, Microsoft launched Kinect, a revolutionary system for the Xbox 360 console where the human body is the controller. In order to find new ways to make the crowd participate in the event, Cirque du Soleil called upon ESKI’s PixMob technology.

With barely three month ahead of them, ESKI’s designers and engineers produced several thousands of PixMob LED pixels as well as the infrared spotlights to communicate with them. They also designed the visual effects, created the ‘ponchos’ that the Cirque du Soleil had imagined and embedded the pixels in more than 3000 ponchos.

PixMob’s technology stunned the members of the crowd as they each turned into a pixel of a giant screen glowing in a myriad of colors. Along with Cirque du Soleil’s dazzling performances, lots of ink has been spilled over the ‘magic ponchos’ born and raised in our studios!