Gavin Morris has been working on his awesome sound responsive LED sculptures for a while. Technically the sculpture is an interesting application of WS2812 RGB LEDs, Raspberry Pis and a load of styrofoam cups and flower pots. However the artistic development, and inspiration for this project is equally interesting. Gavin shares his thoughts and a brief technical description of the project below.
This year I’ve been artist in residence at the Eastville Project Space, a new art space in Yeovil, Somerset UK. During the residency I created The LED Roundsystem, a series of lighting chandeliers. They were inspired by the work of one of the founders of the artspace, Zoe Li whose flowerpot sculpture I saw at “Salvage – A Hacker Farm Field Trip” a kind, of magical mystery tour organised by the band/noise collective which Zoe’s husband Farmer Glitch was a member at the time. His petrol can synths are certainly amazing but I was immediately drawn to the flowerpot chandelier and wanted to put LEDs in it from the moment I saw it.
Much time passed before it all came together. Amazingly for me, Zoe and Stephen started a new artspace and offered me a residency to work on some ideas. Over a few months the LED Roundsystem was born…. The globes respond to volume and pitch, lighting up a different colour for each note. They also have the capability to record and playback live sound.
On the face of it it’s just some pretty lights but there’s quite a lot going on behind the scenes.
The globes themselves are made from styrofoam cups. There is a long history of using styrofoam to create interesting artwork. Generally the cups and bowls are stuck together with a combination of solvent free adhesives. I read somewhere that you can produce cyanide by melting the foam with the wrong glue, so I guess you have to be a bit careful! I made a hole in each cup using a hollow punch, glued them together and then pushed a WS2812 pixel through each one; around 80 pixels in each globe (there are a few slightly different shapes).
Each globe has a Raspberry Pi in it with a wifi dongle and a USB soundcard. I am running the Satellite CCRMA image. The image is based on Raspbian with some optimizations for use of audio as well as adding Pure Data and Node.js, both of which I used for this project. I’ve got mixed feelings about using the Pi for this kind of thing, it’s amazing that it works but it was a slightly painful development process.
I’ve learned a lot of command line Linux stuff. There are quite a few hurdles to get over and workarounds needed – but that’s always the way I guess!
The globes have several different modes of operation as documented in the video. Firstly they are OLA (open lighting architecture) nodes which means I can control them from lighting software via Artnet over WiFi. I’ve been using Jinx! because it has some nice patterns and a great price. To get the Pi to control WS2812 pixels I’ve been using Martin Schuhfuss’ Node module which provides native bindings to the rpi-ws281x library by Jeremy Garff. It’s a bit of a mouthful but it’s been faultless for me so far and Martin has encouraged me to carry out some very minor fixes to get the library to work with my set up.
As I said the globes are all fitted with USB soundcards and have microphones attached. Some of these are set up to detect ambient noise and others more localized sound (e.g. a singer or instrumentalist). A Pure Data sketch analyzes the pitch of the incoming audio using Miller Puckette’s amazing Sigmund~ external, then chooses a hardcoded colour for each pitch. It then sends this colour and volume data via OSC to a Node.js script running on the Pi. There are a number of different lighting patterns available and these are chosen randomly or can be set via TouchOSC on a phone or tablet. The Node script runs the lights setting the colour and intensity according to the incoming data.
Two of the globes also have a looper feature where audio can be recorded, layered and played back with accompanying light patterns. Again there are some parameters which can be set via TouchOSC (loop length, feedback and various thresholds and gains) in a performance. Alternatively general settings can be applied for use in an installation. It’s a pretty basic looper but its good fun – you can build up vocal loops, beatbox rhythms, or play a bit of guitar or melodica. Then you can add more loops on another globe and then play over the top into the middle one. It’s quite an interesting effect and feels a bit churchy to me. But can also easily descend into chaotic noise, especially if a bunch of school kids turn up and start playing with them.
I realised that many people are also shy to make sound in public so I developed a tablet interface to control the globes. Input from a sequencer on the tablets is passed to a server which update all the globes. Beats tapped in by users are immediately updated across all connected Roundsystems. There are also some one shot buttons where sounds can be immediately triggered. These are a bit more accessible to people not familiar with the step sequencer format, although people usually suss it out pretty quickly anyway.
So that’s it for the moment. Though there’s certainly still potentially for development. I’m considering taking them on the road as part of my Digital Funfair show. The concern is that Funfair is quite a hectic environment and the globes work best with a bit of silence and darkness. Hopefully something unexpected will happen. I welcome your suggestions!