I've spent the last 9 months building and improving my Lunetta CMOS based noise synthesizer. It makes some impressive sounds, but one thing I've missed is percussion. I fooled around with several basic drum circuits but nothing really grabbed me. Then I found Eric Archer's Mini Space Rockers. This simple circuit has a lot of possibilities. This is a transistor based circuit and the sound is determined by the values of three capacitors. By swapping out different values you can produce an impressive array of sounds. In his Analog Sequencerbox
datenkrieger used CMOS chips to control a Mini Space Rocker circuit, so I decided to do the same. My circuit differs from other versions because instead of hard wiring the capacitors I made cartridges out of caps and header pins. I can switch drum voices quite easily.
The MSR drum circuit is awesome but one thing it lacks is snare and cymbal sounds. I decided to adapt blinkyblinky's Randomized Arduino Drum Machine project, which features cool, glitchy sounding snare and cymbal samples. This circuit uses the truerandom library to create cool randomized sample based beats with a lofi sound.
A Lunetta is a DIY sound generator. They are modular, meaning they consist of multiple discrete units. The modules are connected with patch cables- wires with alligator clips that can be rearranged in many ways. Lunettas are built with CMOS logic chips. These chips are the basic building blocks of computers and digital circuits. They are used to create, combine and control binary digital signals- 'ons' and 'offs'. In a typical Lunetta set up the pins of these chips are connected to metal posts. These posts can be connected with the patch wires to create complex circuits that produce tones, rhythmic patterns, melodies and many weird sounds.Here are few tracks made with my Lunetta- Confidence is High and Makeshift Morgue.
My Lunetta is one of my favorite projects ever! It has 304 individual posts and over thirty modules- from oscillators and counters to dividers and rate multipliers. It's built into a gun case that my buddy Gordy rescued from a dumpster. The panels are made from 4" PVC fence posts cut down. I've had more use and entertainment out of it than anything else I've ever built. I will be building a new one soon and writing an instructable about the process.
Step 1: Let's Play With Blinkyblinky's Randomized Arduino Drum Machine.
Instructables user blinkyblinky's Randomized Arduino Drum Machine is just what it says, a simple, lofi random drum unit. It has one knob to control the rate and a simple DAC to output the samples as an audio signal.I first built this unit in a project box by itself with an audio out jack to connect to an amp. I'm installing it in my Lunetta as-is except instead of an output jack I'm using a post so it's compatible with my Lunetta. I'm also adding a vactrol to the pot so I can control the tempo with external voltage. My intention here isn't to change the original project too much. I just want to incorporate it into my machine.
Since I had been playing with the code, I hooked the Arduino up to my computer and reloaded the original sketch from blinkyblinky's instructable. Please read it for more details.
This will be mounted in a PVC panel on the end of my synth. I laid out the switch, post and pot positions on graph paper and marked the panel with an awl. Everything was drilled and installed and wired up. Check out the pictures above for details. Installing the random drum is pretty easy. I already had a free standing unit I had been experimenting with so I just altered it and mounted it in my Lunetta. The main concern was to install it without bending the DAC resistors and causing a short. I removed the audio jack from the previous project and connected the audio out to a post. I also added a vactrol between the center lug of the pot and pin A1. This allows for CV control of the tempo by connecting the LED input of the vactrol to a post through a 470 ohm resistor. For a more in depth look at vactrols and how they work check out step 3 of my Instructable here.
Finally I added a switch to the power in of the Arduino to turn the unit off and on. I ended up with one pot, one switch and two posts on the front panel. When everything was installed I hooked it up to make sure it worked before moving on to the Mini Space Rockers.
Step 2: Look Out! Here Come the Mini Space Rockers.
Mini Space Rockers were integrated into a CMOS sequencer previously by datenkrieger in his Analog Sequencerbox. These simple circuits create a wide variety of percussion sounds. The sound is determined by the values of three capacitors. I built a couple of these drums last year for another project. Instead of using fixed capacitor values I used female headers as sockets and constructed 'cartridges' out of capacitors and header pins. This allows me to play a wide variety of drum sounds by simply swapping out the cartridges. While my previous drum project wasn't as cool as I hoped it would be, I was able to salvage the Mini Space Rocker circuit so I want to integrate it here. Since the previous project used switches to send voltage to the drum unit to trigger the sounds it would fit right into my Lunetta set up.
The DIY socket made from header pin sockets mounted on a bread board had 16 wires coming out of it and I didn't want to cut and reattach all of them. I ended up drilling a hole large enough to accommodate all the wires and then cut a slit in the plastic panel to allow the wires to be squeezed in. By working carefully I managed to do it without breaking anything. A small piece of white vinyl tape now hides the cut. The space rocker section now has the cartridge socket assembly and three posts- a trigger input for each drum voice and an output.
Step 3: So How Does It Sound (and How Can I Make It Better)?
First of all let's give it a listen-
The only problem I have with the Mini Space Rockers is that there's only two of them so far. They're awesome! They can be triggered from many different modules for all kinds of rhythmic effects. MSR drum modules will find their way into many DIY drum machines from now on. Go build your own now!
The Randomized Drum Machine was a mixed bag. I like the randomness. For unstructured pieces it's really cool. I can run it off of a steady voltage and carefully sync it up to a timing oscillator or feed it variable voltage for chaotic robojazz tempo changes and surges. The drum sounds themselves are very lofi sounding which is great for a Lunetta, but you wouldn't use them for a highly produced sound. They sound really cool run through effects.
One thing I'd do to improve the random drum is to add a sync pin. A few changes to the code would allow each drum event to be triggered from an outside source. It would still be 'random' but it would sync with other modules better. I also want to adjust the analog read mapping to get a better range of tempos. I really want to be able to gate fast blast beat pulses as accents and fills. The free standing unit seemed to operate both faster and slower than the Lunetta controlled version depending on the pot setting. I think that changing some variables within the code will fix that. Finally, I'd like to add a trigger out post with an analog to digital converter (ADC). This would allow me to use the random drum output as a trigger for other modules as well as a drum voice. I'll work on these improvements and report back, but all in all I'm pretty satisfied with my new drum modules.