This was going to be my summer project, but after getting the parts I couldn’t stop myself from putting it together straight away. About a year ago I read an article about a guy who put together a synthesizer controller using laser pointers, a bowl of water, a solar panel and MAX/MSP. I can’t find the link anymore but it doesn’t matter when you want to roll your own!
This is what you need:
- A solar panel (2V to be able to connect it to the audio in port on my MacBook),
- Some cabling (a 3.5 mm standard stereo plug)
- A bowl of water
- A software synthesizer that can read input from the audio in port.
I already had access to water and a glass bowl and decided to skip the laser pointer (a round bowl will create interesting areas of focused light anyway).
Connecting the solar panel to your Mac is easy. Just connect the wires to a 3.5 mm stereo (or mono) cable and connect it to the line in audio port. Instead of using MAX/MSP I opted for the free Puredata toolkit (Pd). Pd is a real-time graphical programming environment for live interactive computer music. It is an interesting way to program a virtual synthesizer.
Fire up Pd and create a patch that looks like this:
Starting form the top left the adc (analog to digital converter) receives the signal input from the solar panel and sends it to a multiplier to increase signal strength. Two oscillators and a sawtooth phasor generator send data in various frequencies (330, 440, and 349 correspoding to C, F and A on a piano) to an amplitude modulator which is controlled by the solar panel input.
The resulting audio signal is sent to a dac (digital to analog converter) which will ouput the result to your computer speaker. If I starting Pb and create a small wave in the bowl of water in front of the solar panel the result sounds like this (heavily compressed mp3).
The options are, as usual, endless. Pd is capable of creating extremely complex patches and visualizations. You can easily use the optical interface to control aspects of midi streams.
Now that I ruined my summer project I have to think of something else. Any ideas? Maybe Smalltalk. Or an R/C steam turbine tank?