After a long break (nearly 10 years!), it seemed like a good time to dust off this blog and post some updates to recent projects I have been working on. The blog has a new name, Hand-Rolled Noise (it used to be called Build Music Things), and an updated website.
This weekend I went to BEAM Day, a day of workshops for creating music and sound art machines. This day is part of this year’s events for the BEAM 2012 festival taking place 22-24 June at Brunel University. I can’t make the festival this year, so the BEAM day was a good chance to meet some people creating and experimenting with electronic music, sound art and performance controllers.
Alex Allmont created a collaborative workshop to build an electro-mechanical noise machine, the Polytherelegomuino. People were invited to build mechanisms out of LEGO that would in turn operate the controls of electronic synths. Each participant had a LEGO board to create a mechanism on with a turning shaft providing power, all driven from a central motor. The result was like a robotic synth knob-twiddling noise factory!
Here’s a video of the final machine taken by Alex – WARNING: watch your speaker level, this is NOISY!
The synths used in the Polytherelegomuino are based on the Arduino synths of Mike Blow’s optical theremin instruments, the Theremuino and Energy Ball Theremuino which Mike was demonstrating on the day.
Codasign ran a workshop for controlling OSC compatible audio software, such as Max/MSP, with movement gestures via a Kinect. The Kinect to OSC interface they were using is built in Processing using OpenNI libraries, which allows a person’s movements to be tracked and mapped to OSC parameters. In the workshop they showed how a synth in Max/MSP could have parameters like pitch, number of harmonics and filter cutoff controlled by hand movements and standing position, all tracked through the Kinect.
Like the Meeblip synth, the supported tool for Rockit development is AVR Studio which can only be used with Windows. It’s possible to build the Rockit code from the Mac OS X command line using the avr-gcc compiler and a new Makefile. The avr-gcc compiler is available for installation on Mac OS X through MacPorts. You’ll also need to install avrdude which is also available from MacPorts.
I’ve adapted this Makefile to build the Rockit code. This Makefile may also work with Linux, although I’ve not tried it. Simply place it in the directory with the Rockit source (make sure it’s named Makefile, not Makefile.txt) and type:
avrdude -c usbtiny -p m644p -U flash:w:Rockit.hex
The avrdude options above can be modified to use your programmer.
The Rockit kit doesn’t ship with an AVR programming header, so you’ll need to solder your own header on the board. Here’s the correct way to connect the Sparkfun Pocket AVR programmer to the AVR header on the Rockit board:
The header must be put on the top of the board so that the header pinout lines up with the AVR programmer connector. With a standard header on the board, this looks like it will make it fairly tight against the case, although I’ve yet to try assembling a Rockit case.
Following a move to WordPress, this is the new site for Build Music Things!
The Rockit has 2 digital oscillators, a 2-pole analog filter with low-pass, band-pass and high-pass modes, and 2 LFOs that can be routed to different control inputs of the oscillators and filter. From first impressions of playing the Rockit, the analog filter sounds nice. The band-pass mode of the filter is especially good, and offers something different from standard low-pass filtering, which can give the Rockit a nice ‘vocal’ sound when played in this mode.
If you’re using a different programmer, you may need to replace the avrdude -c option with the one for your programmer. Here’s a picture of how the Sparkfun Pocket AVR Programmer should appear connected to the MeeBlip:
The Gakken SX-150 synth has a stylus which is touched on a continuous strip to control the pitch of the sound. It’s hard to play tuned notes using the stylus and so a MIDI interface for the SX-150 is a good mod to make the synth more usable. For this reason, several MIDI interface designs have been developed, including designs by RJ, Stray Technologies, Narbotic Instruments and Mrbook. All of these interfaces convert MIDI to a voltage (MIDI to CV interface) which is connected to the stylus.
The Narbotic and Mrbook design are both Arduino based, the others microcontroller based standalone circuits. I’ve had a go at making RJ’s design, prototyping it on a breadboard. The circuit works well, although as RJ points out, the accurate tuning range is about 2 octaves. Beyond that, the tuning needs tweaking to the higher octaves using the pot included in the circuit.
The circuit uses all the components described by RJ, except I swapped the TLP552 optocoupler for a 6N137. I used avrdude to program the attiny2313 microcontroller using a Sparkfun AVR programmer.
avrdude -c usbtiny -p attiny2313 -U lfuse:r:-:h
Avrdude shows the default lower fuse configuration as 0x64. To use the external 20MHz crystal, the following avrdude command can be used:
avrdude -c usbtiny -p attiny2313 -U lfuse:w:0xE8:m
The attiny2313 should be ready to be programmed with the hex code provided by RJ. This can be uploaded using avrdude using the command:
avrdude -c usbtiny -p attiny2313 -U flash:w:SX150MIDI.hex
Update: I prototyped the MIDI interface onto a stripboard to have a permanent version of the circuit, here it is:
Update 10/22: RJ’s original project page doesn’t appear to be online any longer so I’ve made a copy of RJ’s firmware available for download here.
The Rockit kit arrived last week from HackMe Electronics. A few people have already built working kits, I’m looking forward to building and powering it up. There’s a fair bit of soldering in this kit, so those of us building a kit have our work cut out…
The Theremin Style Music Controller was set up in the kitchen along with two installations made by other dorkbot members: Richard’s biscuit-tin rhythm copying drums and John’s Tilty music box. Other installations included the Dorkbot Pisano wheels and Aaron’s Monome style ball-bearing controller, which triggered Anton’s electro-mechanical glockenspiel, a coconut and John’s octophone and LED level meters.
Thanks to all the people who came and had fun playing with the installation!
I wanted the hardware build to be as quick and simple as possible so the sensors are mounted in a cardboard box. The unit plugs into a Mac running Reaktor and controls the music being produced.
The sensors are connected to an Arduino Uno, which has some code to send the sensor data as serial data over USB to the Mac. On the Mac, the control and routing of the sensor data is handled by some code developed in Processing to send the sensor data as MIDI and OSC to Reaktor.
The electronics components used in this project are:
- Arduino Uno
- Seeed Twig I2C Touch Sensor Controller and 4 Sensors
- Seeed Stem Base Shield
- 2 Sharp 2Y0A21 Distance Sensors