Hyperweb: Interactive Art for Vivid Sydney

Updated 10 February 2020

Hyperweb is a collaborative interactive sculpture installation at Vivid in Sydney. I designed and built a crowd sensing weather station that is used to control an audio "soundscape" within the piece. It also triggers light show events that coincide with the ambient tracks. Special thanks to Core-Electronics for sponsoring the build!

The crochet sculpture was created by Louisa Magrics. Lighting Design by Calum Young. Project Management by Chuck Grotte. Audio Production by Sydney collective BitzPink. Interactivity and control by Stephen Haynes

Hyperweb

The primary function of the control system on Hyperweb is to control ambient audio within the art. This is controlled by detecting motion, temperature, humidity, and wind speed. Each element controls a different type of sound sample, they layer together to create a soundscape. The secondary function of the project is to initiate light show events that are run on a lighting desk computer.

I decided to use a Raspberry Pi to play my audio files and created an image that runs my Sonic Pi sketch on startup. An Arduino is used to take sensor readings and convert them to MIDI signals that it sends to the Raspberry Pi.

I loaded all my sound samples into Sonic Pi and programmed a sample keyboard that would read the MIDI inputs and play samples. This was my preferred method because I needed to be able to play five or more samples at the same time. I used a Circuit Playground Express as the Arduino Board, but I ended up using an external sensor package so I could get more accurate readings within the housing. The Circuit Playground has native USB support so outputting MIDI signals was no issue. I housed everything in a waterproof housing made of PVC pipe to keep the profile low. If I was to do it again I would not use PVC pipe since it was difficult to get the electronics in and out.

How it Works

The first type of readings that the control unit uses is motion. There are three IR motion sensors mounted in the housing, they detect when people move within three regions under the sculpture itself, and play sound recordings of birds taken from different locations within the Sydney Botanical Gardens where the art is located.

One of the programming challenges I ran into was caused by the crowds. Motion sensors return a digital HIGH when they detect motion, and if the motion is continuous then they don't turn LOW. Vivid in Sydney draws over two MILLION visitors! The art is located in the main Vivid art walk in a place where people must walk through it to see any of the installations in the Botanical Gardens. There is a constant stream of people walking through it each night, so this would cause the motion sensors to turn on at the beginning of the night and never turn off! I ended up programming in a timer for the sensors. After a set time for each sensor, if the reading was still HIGH the sample would be played again.

vivid-sydney-hyperweb-night-action-shotThe next triggering event is humidity. Every 2.5 minutes the humidity is read, and a sample is played that relates. If it is very humid then water samples are played, if it is very dry then wind recordings are played.

Temperature samples control composed ambient tracks that were submitted by five different artists for the project. Every five minutes a temperature reading is taken, and a track is started. Each track has a three-degree range to be triggered. The idea being that the ambient music would change as the night progressed. Each time a temperature reading is taken a signal is also sent from the Circuit Playground to an Arduino Leonardo. The Leonardo sends HID keyboard presses to the lighting desk computer that controls the lights. We created macros that are triggered by the keypresses from the Leonardo that trigger light shows. The light shows are curated to coincide with the ambient tracks that play at the same time. I ended up using a second Arduino board because I ran into trouble getting the Raspberry Pi to output anything useful to the lighting desk, and I ran out of time to come up with a more elegant solution. The Leonardo outputs HID keypresses over USB so it was very easy to integrate.

The final portion of the project is the wind sensor. It is used to control the amplitude of all the tracks, so as wind speed increases so does the volume. The Raspberry Pi sends analog audio to an amplifier mounted in the tower.

Some of the challenges that I ran into were finding a way to make Sonic Pi play samples reliably. I found out after much frustration that samples larger than 10MB caused Sonic Pi to crash. I ended up needing to compress some of my samples and turn them all Mono to make it work. I've since found a Teensy Audio shield that could have made this project much simpler if I'd known it existed.

I couldn't find much direction on playing MIDI samples on Sonic Pi. This is the basic format I found that works.

t = "/home/pi/Desktop/Sample1"
y = "/home/pi/Desktop/sample2"
u = "/home/pi/Desktop/sample3"
i = "/home/pi/Desktop/sample4"
o = "/home/pi/Desktop/sample5"
a = "/home/pi/Desktop/sample6"

live_loop :midi_piano do
  note, velocity = sync  "/midi/circuit_playground_express_midi/1/1/note_on"
  sample t, note: note, amp: velocity / 127.0, rate: 1.0 if note == 1
  sample y, note: note, amp: velocity / 127.0, rate: 1.0 if note == 2
  sample u, note: note, amp: velocity / 127.0, rate: 1.0 if note == 3
  sample i, note: note, amp: velocity / 127.0, rate: 1.0 if note == 4
  sample o, note: note, amp: velocity / 127.0, rate: 1.0 if note == 5
  sample a, note: note, amp: velocity / 127.0, rate: 1.0 if note == 6
end 

To keep the project going if it was shut down at night. I made Sonic Pi and Autorun program, and put my sketch in the sonic pi init.rb file so it would run automatically when Sonic Pi opened.

sydney-vivid-hyperweb-project-action-shot-nighttime

Conclusion

Overall I would say that the project was very successful, and I achieved all my goals I set for the project, it only took a couple hundred more hours than I expected! It was truly amazing to see how many people were walking through the art each night, last year 2.33 million people attended Vivid, and this year they expect even higher numbers! Thanks again to Core-Electronics for sponsoring the weather station control unit!

Have a question? Ask the Author of this guide today!

Please enter minimum 20 characters

Your comment will be posted (automatically) on our Support Forum which is publicly accessible. Don't enter private information, such as your phone number.

Expect a quick reply during business hours, many of us check-in over the weekend as well.

Comments


Loading...
Feedback

Please continue if you would like to leave feedback for any of these topics:

  • Website features/issues
  • Content errors/improvements
  • Missing products/categories
  • Product assignments to categories
  • Search results relevance

For all other inquiries (orders status, stock levels, etc), please contact our support team for quick assistance.

Note: click continue and a draft email will be opened to edit. If you don't have an email client on your device, then send a message via the chat icon on the bottom left of our website.

Makers love reviews as much as you do, please follow this link to review the products you have purchased.