Lily Gabaree

Final Project

Conversation Visualizer / Dinner Table Device

I’m thinking about representing conversations in other forms, such as in liquid mixtures (consumable or otherwise). Maybe my device could detect conversations at a dinner table, and then squirt out one of two liquids, depending on who was speaking at a given time - such as an acid or base, or a red or blue color. Over time, the mixture would reveal if someone was dominating the conversation.

Alternatively, the two speakers’ dynamic could be rendered a little less directly by mapping its qualities to one of a variety of presets (e.g., cocktail mixes), to be consumed by the two speakers.

Another possibility is that it could detect when one person interrupts the other, and maybe squirt the person who interrupts, or do something else to indicate the problem (light up, shake…).

Here's a possible model of the device.


My initial prototype involves arduino, a microphone I found in the Harvard shop, a servo motor, eyedroppers (manually filled with dyed water), and a lot of string and tape. The base is laser-cut from chipboard, and the mechanism works by having the servo’s arm squeeze the eyedropper. I like the overall structure of this - in terms of size, and having the unit suspended on laser-cut legs; this one doesn’t have any kind of cover over the guts of the device (which will hopefully be enclosed in some kind of sphere). And I like the weirdness of it squirting out when you’re talking, and the dispersion of dye in water.

VOICE prototype test 1

So now I’m trying to make a prototype that uses fabricated PCBs (a central board, and modules for the input microphones), a laser-cut geodesic dome structure enclosing the whole thing, and some kind of actuation that doesn’t require an excess of glue holding a servo motor in place.

Working with servos in Arduino is fairly easy because there’s pre-existing code and libraries for it; figuring it out for the Attiny44 means I need to actually understand pulse-width modulation (PWM). I experimented with different duty cycles withe the servo.

But I really would prefer a more robust solution, so I talked to Rob and he gave me some pumps, specifically two of these: RS-360 Mini DC 4-12V Water Pumping Motor Reversible Gear Aquarium Pump. I attached some tubing and tested out the pumps - they worked really well, and are self-priming (it can push along air as well as water - you really don’t have to do anything to get it going besides turn it on).

So my new plan is that have these two pumps serve as the main output actuators, drawing on cups within the device (I’ll make some little cupholders, so I can swap out paper cups of water etc. as needed).

I’m going to stick with microphones as my input. During inputs week, I made a MEMS analog microphone board, and later made a program that prints integer values (or can trigger an event if a hard-coded threshold is reached).

Since I need two microphones that are detecting different values - I don’t want both pumps triggering whenever someone at the table speaks - they need to be somewhat far apart from eachother, and close to each speaker. So I’m thinking of having them extended out like antenna arms, in the air. It would be better, therefore, if they were very light - light enough to stay upright or horizontal in the air, supported by wire - and also relatively unobtrusive. So I’m designing a microphone module, as opposed to a whole microphone board; this one will just have the analog mic, and the necessary capacitors and resistors.

To overview: I’ll have two microphone modules as inputs; and two pumps as outputs (in addition to maybe some other “interrupt” actuator). The central board will have an Attiny44, and headers for the two pumps; there will also be a header for the two microphone modules. The whole thing will be powered by a 5V supply that plugs in - there are power connectors in the Harvard shop that you solder directly to boards.

Rob advised me to put the regulator on the microphone module, rather than on the main board (the microphone runs at 3.3v; the pumps at 5v). So my microphone modules will take in 5V, but run the microphone on 3.3v; and the output will go to a pin on the Attiny44.

After designing the board in Eagle, I milled it with the SRM-20 mill - the traces are pretty small, but hopefully they will be stable.

I ran into a problem stuffing the board, when attempting to reflow solder to apply the microphone - the heat gun didn’t have a tip on it, so the heat was getting all over the place and ended up kind of lifting up some of the copper substrate - so there are tiny air bubbles. I might need to redo this, but for now it works!

I’m going to solder leads directly to the pads on the edge of these boards, and have those connect to the pin header on the main board. I might end up using ribbon cable, but wrapping it around a stronger wire, and wrapping the whole thing for aesthetics (so it will look like one cable/antenna).

Next up: milling and stuffing the main board, and programming it to be able to interpret the two different input values and compare them. I’ve ordered the white translucent acryclic that I’m planning to use for my final prototype; in the meantime, I’ll make another prototype structure out of cardboard (to test out the configuration of the dome - it will be a standard geodesic dome, but there need to be carefully placed openings for the two mics, and the two tubes.) I am also hoping to construct the dome in two halves, so it will be easy to remove the top and replace the liquid containers.

If it’s really hard to get the comparison to work, I’ll make two separate units (one microphone module to one pump board, and another set) - which will give me basically the same functionality, but will prevent me from implementing an “interrupt” function.