Troll Carpet

Ronit Slyper

Nov 19, 2007 - basics done
Nov 5, 2007 - in process
Dec 11, 2007 - writeup completed

Goal

I built an interactive carpet platform. Microcontrollers exercised control over different areas of the carpet, providing a locally-consistent interactive experience. This setup was designed to do the following:
  1. minimize spaghetti wiring
  2. allow for elegant, invisible failure of portions of the carpet (I'm a hardware realist...)
  3. encourage programs to give different areas of the carpet unique interactive personalities
The electronics were embedded in 3 sheets of foam, each divided into two 2ft x 2ft pads. Each of the 6 pads contained 4 pressure sensors, 3 voice chips, 1 LED, and 1 buzzer. For the show, I loaded a simple demo program. Whenever someone steps on a presssure sensor, the corresponding voice chip (*) yells at them to go away.
(*)Actually, what really happened is that I paid some trolls to chill under the carpet for 2 hours, and gave them strict instructions to be quiet. Trolls don't listen very well.

Materials

Materials for the Carpet
The carpet was a sandwich of carpet, foam with electronics, memory foam, and more carpet 2 IKEA carpets, a full-mattress-sized sheet of memory foam, and Joann-Fabrics 3in high-density foam, not dense enough and thus superceded by McMasterCarr foam 3 sheets of 54"x24" polyethylene foam, cut to 48"x24". McMaster-Carr (sample order shown). I refer to 1/2 of a sheet as a pad, thus 6 pads in this carpet. sewing machine from Target 7.5 yds of velcro from Joann Fabrics
Main electronics
Six sets of Lilypad Arduinos from Sparkfun were used in this platform. I created a page about them here. Sparkfun: 6 Lilypad Arduinos & power supplies Sparkfun: Arduino usb to serial converter, soldered conductive thread from Lame Lifesaver in Canada (unused) Programming a Lilypad
Materials for Pressure Sensors
Each pad had four pressure sensors made of resistive foam Aluminum mesh from Lowe's
I created a grid with masking tape and cut through the middle of it.
Several sheets of conductive foam from Jamecowere cut into 5"x5" squares along with the mesh Each pressure sensor was built from a square of conductive foam sandwiched between two squares of mesh. A wire was soldered to each piece of mesh (this is hard!!). One went to power, the other to an analog in.
Voice Chips
Each pad had 3 voice chips 28 recordable greeting cards arrive from ebay (cheap!), along with 10 Troll dolls A great suggestion from a labmate. After much thought I went with these rather than the Winbond voice chips from Digikey/Jameco, figuring the lower price/effort made it worthwhile.
The button connects a certain pin to ground, in both the "play" and "record" cases. I cut off the play button, soldered wires to both white wires, and connected one (via a switch) to the Arduino's ground, and the other to a digital I/O pin. The pin was set to input (high-z) to NOT play, and was pulsed output-LOW to play.
Switches for connecting the grounds of the voice chips to the Arduino's ground. When the grounds were connected and the Arduino off, the chips triggered incessantly. Result should not be sent in the mail
LEDs and buzzers
Each pad got 1 buzzer and 1 LED The super-bright type of LEDs Resistors for the LEDs 6 of these generic buzzers, 3-6V
Connectors
Hacks to cover my lack of knowledge of the proper way to do things. Screws and hexnuts from Lowe's created grounding terminal strips; this was my clever modular solution to "7 wires want to go to ground". I twisted wire into the Lilypad holes, and reinforced each connection with a dab of wire glue. Command adhesive stuck the sensors to the foam base

Process

I soldered the power/ground connection to the Lilypad, including the capacitor for kicks (see Leah's website). I stuck two wires in each hole in the power supply, a ground wire heading off to my "ground wire bus" made of the screw and hex nuts, and another doing the same for power. Using a utility knife, I carved holes in my foam base for each power supply.

My first tile took a long long time. It worked immediately; the time-consuming element was anguishing over the wiring:
.
Not so good. I discovered wire terminals (the orange caps); they helped but my idea with the screws improved later tiles.

I built the last four tiles in parallel. By this point, with the utility knife I was slashing a square surrounding the Lilypad, and threading all wires through the slits. Progress:
.

Results

Prettier.

Arduinos Everywhere!

How to make a really small apartment.

So glad I used my neighbor's soldering table.