Weather System

Water periodically circulates through this system, emerging in a trickle from a faucet in the sky. The water is collected, shuffled, held, and released by an assemblage of gutters to be collected, spilled, leaked, and recirculated by containers below. Lightning and thunder periodically erupt as the cloud attempts to stay dry.

Materials: Aluminum gutters, custom electronics and software, pump, plumbing.
Dimensions of the entire system are approximately 16x16x3 feet and variable.

The process of constructing the system involved continually running water to find leaks in the system and then attempting to control them with more gutters. Adding more pieces tended to shift the existing structure creating more problems, however. The result is patch on top of patch, fix on top of fix. Pots, bowls and cups are employed to catch the remaining leaks, and yet, water still escapes and floods the floor.

Weather System

Kittenator bookmarklet, a website by Mark James, was recently created to generate arbitrarily-sized placeholder images… of kittens. To make it available to a wider audience I created the Kittenate! bookmarklet, a small script that replaces the images of virtually any website you’re viewing with images of kittens at the click of a button.

Kittenate! <– Drag this link to your bookmarks toolbar. Clicking it will replace all the images on the webpage you’re viewing with kittens. (Or you may have to right click and select ‘add bookmark’)

The Daily Puppy just got KITTENATED

iPhone X-ray Machine

Democratizing security one citizen at a time. Built with lasercut hardboard, iPhone 4, and custom html5 app.

Berlin Reboot Radio 88.4 FM

I was recently featured on Berlin Reboot FM discussing some of my sound work, the episode is embedded above for listening. The episode’s page is here.

Ant Sonification

From my interest in data sonification and feedback systems, I constructed an environment to create music from the movement of ants. As they move about, some custom software tracks their positions through a camera and creates audio waveforms which are then transmitted into the sand substrate through a speaker coil. The audio vibrations cause shifts in the sand which alters the movement of the ants, and thus the sound, completing the feedback loop.

Below is a video clip showing the setup and sound produced.

Sonification of Ants from Luke Loeffler on Vimeo.

Glass Camera

Inspired by some amazing photos of the sun’s path, I decided to put together a pinhole camera. Fortunately (or possibly unfortunately when I see the results after a few months), I didn’t have any photo paper and had to improvise. I’ve been making PCBs using a photo-sensitive thin-film mask over the copper.  I’ve also been experimenting with glass etching using HF acid.

The process I’m going to follow will be to expose the sensitized glass, develop it in a basic developer, and then etch in HF acid. The areas of the light sensitive film receiving light should become “hardened” so they adhere to the glass after the development process and during the etching process. The end result should be that dark areas of the exposure are frosted (opaque) and the light areas of the exposure are see-through. I also hope to complete the process on a piece of copper board leaving copper in the light areas and nothing in the dark areas.



Pictures are of the (hopeful) view, and the camera itself, lashed to a railing.

I’m not quite sure how long to let it go. Normally, the film takes 15 minutes to develop under a 100W full-spectrum lamp at 10 inches. I’m guessing with a 1/16″ diameter hole, it could take months.  Fingers crossed, I don’t want to have to repeat this…



I was impatient and peeked at the film as it was progressing. The blue color indicates it has been exposed while the greenish color indicates non-exposure. As you can see, the skyline was recorded–the bright sky causing the blue exposure and the buildings due to their non-reflectivity, left parts unexposed. Unfortunately, there must not have been enough light because developing the film ate away the exposed areas as well. Back to the drawing board.

Organic Processor


Organic Processor #1. April 2010. Wood, glass, Porifera, jute, custom electronics, custom software.  9x9x10 inches

Organic Processor #1 is the first in a series of sculptures exploring cognition and the characteristics of empathy in imaginary organisms.  The organism comprises several “neurons” in software, each responding to stimulus in the immediate environment, within itself, and remote information such as messages on twitter.

Sample video of OP #1 deep in thought.  The software is still under development. I’m working on a number of different animated gestures that convey emotion.  As it processes sensory information and browses twitter, it will respond by displaying different moods (happiness, depression, anxiety, calm, etc.)  The video shows a generic animation for “thought” to indicate new information is being processed.

The Week in Sound

I think one of the least-appreciated features of the new generation of smartphones is the voice recorder. We’re all taking more photos than ever, yet forgetting to capture a significant part of our everyday experience: sound. Lately I’ve made it a point to record interesting sounds I encounter as I go about my day. Interestingly, they seem to have a more powerful effect of returning me to a scene than a photo, surpassed only perhaps by smell.  Try recording, post what you’re hearing, and let me know!

The first clip takes us to the campus of Carnegie Mellon University this winter. While in the arts building I heard a the beautiful and haunting sound of a girl practicing the marimbas.  Contrast the solitary sound with he cacophony of many music practice rooms mixing.  Later in the week, some dispatcher on a radio in a cab ride in Queens was noteworthy for its strangely rhythmic musicality.  As if LaGuardia wasn’t bad enough already, this 20-minute alarm at the airport made me vow to go through JFK next time.

Back home, leaving the garage, I noticed the beautiful clicks and pops of an engine cooling down. While walking to work: pigeons under the bridge. The terrifying creaky stairs at the old warehouse in which my studio is located. It’s just a matter of time before they break.  Next, the sound of relays chattering in a little mechanical feedback noisemaker a made.  Lastly, I will leave you with the sound of the death throes of an exhaust fan in the bathroom of the warehouse. It always manages to screech like some kind of killer primate when you’re least expecting it.

Three DIY Circuit Board Methods Reviewed

I have been doing a lot of circuit prototyping lately and have had to make printed circuit boards (PCBs). In order to save money and time, I started making them in-house, although it took several weeks of frustration, the purchase of three different systems, and some tinkering before I arrived at a method that worked for me. There are already numerous guides on how to make PCBs at home, but the purpose of this is to compare three popular systems and evaluate their claims to (hopefully) save you some trouble.  Each of the three systems has strengths and weaknesses–you must simply know when to use each.

The first system I tried this year was Pulsar’s “PCB Fab in a Box”. It was attractive because they claimed to offer a selection of toner transfer paper, foils, copper clad boards, and laminating machine that worked together flawlessly to quickly produce excellent, repeatable results. Unfortunately, despite carefully following the directions and using an approved printer, I got poor results.

The first image shows that the traces simply would not adhere to the copper board. I was finally able to achieve some success by “tacking down” the paper into place with a regular iron before running it through the laminator, and then running it through a total of 6 times, rather than the recommended 2. The next image shows the toner adhering to the board much better than before. I think the added heat helped. Unfortunately, you cannot stop at this point and etch because toner is very porous and the etching solution will still eat at the copper beneath unless you seal it. Pulsar’s solution for this is their green foil which “seals” the toner. Unfortunately, after applying the foil with the laminator, it didn’t stick everywhere and in some areas, it actually pulled up a few pads and traces from the board. Overall, the resulting board was not useful. Perhaps my little HP laser jet P1006 is the problem, but testing with a large Xerox “mainframe” office printer offered similarly poor results.

Next I returned to the Techniks Press-n-Peel system, which I had used when I first made some PCBs around 2001. It worked reasonably well with only occasional breaks in traces. Unfortunately, a clothing iron was the only solution at the time to apply heat and pressure. However, with a fancy new laminator from the Pulsar kit in my possession, I decided to try the PnP system again with the hope the laminator would bring about consistency. Pulsar claims on their website the laminator is not compatible with the Press-n-Peel system, however this is not true. I got very good results by simply running the board through the laminator until the black artwork could be seen through the blue coating. This turned out to be 5-6 times. The best part is that after peeling the substrate away, no additional work is necessary. The blue coating on the plastic sheet sticks to the toner and accomplishes what Pulsar’s “green foil” does, but in one step. I found the PnP system with the laminator to be excellent for quick, simple, one-sided boards that did not require especially fine resolution. After attempting to create artwork for a TSSOP (a surface mount chip with pins just 0.6mm apart, the artwork was a bit too fuzzy.

The limitations of the Technics system led me to explore photo-based development–the use of photosensitive boards to create the etching mask. I avoided this route for some time as presensitized boards can be costly due to the additional coating. Furthermore, if you only make a one-sided board, an entire side goes to waste. After discovering the MG Chemicals Negative Dry Film Resist, however, I decided to try a photo process. The beauty of the dry resist film is that you only apply it when and where you need it, which allows you to buy any kind of copper clad board you wish–double/single sided, varying thicknesses, etc. The instructions for its application did not work as expected. I kept getting bubbles when I tried to apply the film to the board, and warping after running it through the laminator. With some experimentation, I was able to apply it perfectly every time.

Unwritten directions for applying the dry resist film: First, lay the board on top of the film and cut around it with an exacto knife–no need to leave several centimeters around the edge as the MG directions say. Next (and this is the key), after you peel the soft coating, place a few droplets of water on the copper board before applying the film. The water helps the film to adhere to the board evenly. Center the film, pulling it up and repositioning if necessary. Lastly, squeegee the water out working from the center outwards. I used a small, rectangular piece of nylon with a hard edge to do the trick (you can use the edge of a credit card). Work out all the water and bubbles. Lastly do not use the laminator as recommended (unless you can set the heat very low). I used a clothing iron and put it on the acrylic setting (the lowest it would go). Placing a sheet of printer paper between the iron and the board covered in film, I used moderate pressure for 30-60 seconds. This was adequate to adhere the film to the board. Absolutely no warping or bubbling occurred. You will know you’ve used too much heat if the surface is not even.  The next image shows a laminate applied with too much heat on the iron.

After the film has been applied, the rest of the process is straightforward. Directions are on the MG Chem website. With the photo-based system, I was able to get incredibly high resolution artwork. The following image shows artwork for two TSSOP (0.65mm pitch) chips being developed under a standard broad-spectrum (also sold as “daylight” spectrum) compact florescent (CFL) bulb.

Pulsar Press-n-Peel MG Chem. Dry Film Resist
Pros transfers toner well to bare board for labels Simple, straightforward process (print/apply/etch); good results very high resolution possible; clear masks allow easier alignment for making two-sided boards
Cons additional step of adding green foil (assuming you can even get the system to work) artwork can be too fuzzy for fine-pitch SMT devices Need darkroom environment; applying film takes a bit of extra time; added chemical step of developing the film before etching; must invert artwork first (toner goes where copper should be removed)
Tips N/A Use the laminator from the Pulsar system for added consistency Use water when applying film to avoid bubbles; use very low heat to avoid warping
Suggested Use Use the transfer paper for silkscreening labels, part outlines, etc. to bare (i.e. copper removed) board Simple, single-sided projects that do not require high resolution; when you don’t have the time for the photo method Double-sided boards, or when high-resolution necessary

Additional Tips

When making double-sided artwork, include four small vias at the corners of the board’s artwork. Tape each transparency to a piece of glass with the presensitized board sandwiched between. Align the four holes and the artwork should register perfectly.

If you choose to etch with Ferric Chloride, many suggest using a sponge to wipe over the surface of the board. This is to bring fresh etchant into contact with the copper. I would suggest simply wearing latex disposable gloves and gently wiping the surface with your finger–this seems to be a bit more gentle (less chance of ripping off part of the mask), and just as effective.

When using a photo process, always place the side of the transparency with the toner against the board. The acetate sheet is actually a few thousandths of an inch thick and is just enough to allow light to get in from the sides and cause fuzzy lines if the toner mask isn’t directly against the board.

Cleaning the board thoroughly is necessary for the Press-n-Peel system, however scotch brite pads are not necessary as many suggest. I feel they are too abrasive and leave large scratches. I have found dish soap, followed by comet cleaner to be effective. If you don’t use too much water with the comet, leaving it as a moist paste, it will be sufficiently abrasive.

Use a magnifying eye loupe to check the toner prints, masks, and etched boards for problem areas, especially when working with fine-pitch surface mount artwork.

Ephemeral Recordings

One recent idea I’ve been investigating is the transmission of data by ephemeral, imperfect, mechanical means. It began as the thought of using a knotted cord to transmit a sequence of notes around a room for a physical sonic sculpture, but has taken other directions as I have given more thought to what it means to make a mark.

Mark making can be broken into three categories: addition of material, removal of material, and the modification of a material (although there is a fair amount of overlap between the categories).  Examples of addition were to clamp a bead onto a passing string, to add a blob of glue, or to add a drop of water. Removal of material could mean cutting away, notching, or burning a substrate as it passes. Modification could be knotting the material as it passes, staining it, raising the temperature, etc.

Most media strive to be precise and permanent. By soaking portions of a passing rope with saline, these regions can be detected as they pass “listeners” further down the line. Due to the capillarity of the rope, however, the saline spreads out in several directions which causes slight conductivity and more gently ramping (as opposed to digital) signal. Due to evaporation, the signals get weaker and weaker as they progress through the system yielding unexpected results. Looping everything back around will allow one continuous rope to be used.

Additional possible methods could use a heating element to apply varying amounts of heat to a passing wire. As the heat spreads, the crispness of the signal is diminished and bleeds into adjoining signals. As the heat is transferred to the environment, the overall signal diminishes and returns the wire to its original state.


Saline on Jute by ukle

The Sound of Vapor from Luke Loeffler on Vimeo.

Visualizations for new Display

IMG_1463Over the last couple months I’ve had the chance to develop a series of “paintings” for the fiberoptic tapestry, a new display system developed by artists Ligorano/Reese. It is essentially a hand-woven canvas of optic fibers, each illuminated by an electronically-controlled LED. The result is incredibly beautiful and expressive, producing a painterly effect. I was mesmerized by the gently-glowing canvases the first time I saw them and was very excited to get the chance to create content for them.

My work has been developing visualizations that utilize the new physical display in different ways. The first visualizes air traffic over four major airports in the US, drawing moving lines to indicate aircraft taking off and landing. The second, entitled Order/Disorder, displayed below aggregates a number of sources for natural disaster information and draws the disasters as “tears in the fabric” of the world. Lastly, I am working to create software that reacts to the environment and responds by flashing a series of animations developed by Marshall Reese.

A program in Processing communicates with the hardware and serves as a hub accepting drawing commands from other software via OSC. A number of scripts in Python perform data aggregation, scraping, parsing and animation for the flight tracker. A patch in Pd performs sound analysis and drives the canvases through OSC.

“Order/Disorder is a software visualization of destructive and restorative forces in the world. The software runs on an electronically-controlled tapestry of woven fiberoptic threads created by New York-based artists Ligorano/Reese. Two computer programs, named order and disorder, modify the tapestry throughout the day in response to natural and man-caused events such as earthquakes, biohazards, and aircraft accidents. Order seeks to weave a rainbow-gradated pattern representing peace and wholeness while Disorder seeks to destroy and unravel the tapestry by “tearing” the fabric and weaving in aberrant threads.”

Reverse Engineering the Speaking Piano

I was really intrigued by Peter Ablinger’s Speaking Piano (officially titled Quadraturen, auf Deutsch)–a system that takes human speech and translates it to a sequence of notes to be played on a piano by a bunch of solenoids, or “mechanical fingers.”

Since I’ve been learning Puredata, I thought it would be a fun exercise to attempt to recreate the software Ablinger wrote to translate speech to midi notes. The secondary purpose was to turn my oft-idle digital piano into an interactive sound piece, translating sound from another part of the house into music downstairs. The result isn’t perfect, but I think it still achieves the same ambiguous result where you are able to hear the voice once you see the transcript. The biggest difference is obviously that I’m using a digital piano, not a mechanically-actuated analog piano. However, the Roland has a fairly sophisticated physical model with things like dampening and string resonance, so it’s better than nothing.

Below are the two components to the software. Clicking the image will link to the pd file if you’d like to experiment yourself. You can either load in a pre-recorded wave file and play it back, or set the gain to the adc~ to 1 and use a microphone to drive it in real time (although I set up a delay of about 3 seconds so I could evaluate the results without hearing my own voice). delread~ passes the data into fiddle~ which does all the hard work of Fourier analysis. A metronome set to 15 ms samples the outputs of the individual sine components and creates midi notes. The blocks that create the actual notes are partial_key.  The highest key on the piano is midi 108, which corresponds to 4186 Hz, so I added a low pass filter to remove frequencies that couldn’t be reproduced.


partial_key.pd creates the midi notes which are sent to the piano. The signal makenote_b is received from the metronome, which causes the note to be made. Additionally, no note is sent if the midi key number is higher than 108, the limit of my piano, or if the amplitude is too small (< 0.01).


Here is a sample of the result, speaking the following: “these are very profound words, which is why they are being spoken by a piano. I hope you are forever moved by these profound words.”

I’d love any feedback from Puredata or DSP gurus on how the software could be improved. I’m not quite sure what sorts of additional analysis and synthesis steps are being taken in the Quadraturen software as it is not available.

Wind Carol

It’s that time of year again. Christmas is coming, snow is falling outside my window, and the wind is whistling.  Maybe it’s late, or my mind is playing tricks on me, but the wind seems a bit more coherent than usual… Musical, even. Creepy.


The idea came about from the desire to manipulate various parts of the built environment to create music as the wind is blowing. Maybe change the orientation of a sheet of metal, the size of some opening, etc. With a feedback loop, the system could progress through a melody once it detected that the desired notes of the sequence had been played. Although a composer could control the content, the weather would determine the tempo. A listener may have to wait weeks or months for the piece to complete without sufficient wind.

In the meantime, I created the above synthetic version of what I imagine it could sound like (though the song above would probably have to be recorded somewhere in Antarctica). The synthesized version uses a custom patch written in Pure Data to shape the frequency of white noise to follow a midi file of choice.

Pure Data: The Swiss Army Knife of Audio

After a weekend workshop (thanks to Hans-Christoph Steiner and Eyebeam) on Pure Data, I’ve been tinkering with it quite a bit lately and geeking out on old signal processing stuff I haven’t touched since college.

Over the years I’ve played with a number of tools for audio processing: Matlab, jMusic, a Java library for algorithmic composition, Nyquist, a Lisp-based synthesis/analysis environment, Beads, another Java library for synthesis and analysis, and Supercollider, another synth/analysis environment with smalltalk-like syntax. All of these are powerful tools, but aren’t as engaging in terms of interactivity. Having been forced to use LabVIEW in the past, another dataflow language, I was initially reluctant to pick up another, but for audio work, it’s been great. It is so easy to try new ideas without any need to recompile. It’s a lot like playing with a running circuit.

So far I’ve used to to analyze sound and control some lighting panels to create a reactive environment, synthesize tones for my invisible chimes project, and do some other synth experiments. This brief subtractive synth test uses filters to shape pink noise into hazy tones forming a chord. synth2 tinkers with sample playback and ring modulation. Next up, granular synthesis to build some instrumental Christmas music?

Other Useful Audio Software

Jack is a great tool for routing inputs and outputs on your system. It has made it really simple, for example, to send the output of iTunes to Pure Data, which allows me to sample chunks, process them, and mix it back into songs playing. I made a small program that samples chunks of the last song and then injects them into the new song when it detects beats. It also supports plugins, so you could use Pure Data as a signal processor for other programs like Logic.

Wiretap Studio is really useful for capturing any sound source on your system, doing basic waveform editing, fades, effects, and exporting to any other sound file format.

RjDj for the iPhone is a program that lets you download (and create, using Pd) “scenes” that generate music or process environmental sound and play it through the headphones. For example, one might identify that fan humming along at 300 Hz and re-inject overtones to change its timbre.