RockBand Kick Drum Trigger Interface
I like RockBand. I really do. However, I’m always finding excuses as to why I’m not better than I am at the drums. Even with my buddy’s purchase of the ION kit, I’m still lacking in awesome.
My latest excuse was how difficult is was to press the kick drum pedal rapidly when you get tired. A real kick drum pedal requires very little force to activate and hold down, since they are effectively balanced and counter weighted systems that are very adjustable for response. Pedals shipped with any RockBand kit have no counterweight action and no bounce.
I have a Yamaha KP65 kick drum trigger that I use in a small MIDI kit. It feels surprisingly good for the price and is a world better than anything on the “fake” inputs that RockBand systems typically use. I figured I could rig a switch to make it contact the pedal when pressed down. I also figured that I’d have to do it on a time budget of about 4 hours or risk not getting something else done.
Long story short, double sided tape and a cheap micro switch were no match for Maps.
So, research time. I found some information on the RockBand forums with several circuits proposed. The first one I found used an op-amp (LM386) and a 555 to handle the transaction. This seemed reasonable at first but just looked more and more complicated as I thought about in. On page 11, someone posted a much streamlined circuit that had what I was looking for. However, this also seemed like it had a few too many parts, and frankly, I didn’t have that stuff lying around. I hate using 741s in battery circuits, which I did. I had some LMP2011 op-amps lying around, but at $2.75 each, I was not going to use two of them.
Effectively, this is just a circuit that amplifies the piezo output, detects the peak level, and shorts a signal to ground for a certain amount of time. My op-amp can run at 2 volts, but not more than 5.5V. Using a BJT to short the output seemed ineffective since they require more current to operate than a MOSFET… plus I have more MOSFETs around than BJTs. Finally, the diode selection was important. I prototyped with 1N4009, but the .6V drop limited sensitivity at the desired voltage ranges, so I figured that a Shottkey diode rated at about .2V would make this very sensative. I came up with this:
I’m using a 3V Lithium coin cell to drive this. The battery is good for 230mAh, and since this circuit has a quiescent requirement of 900µA, this should be more than enough for months of normal play.
I also didn’t feel the need to put in a sensitivity control. Most triggers have one already and getting the cutout on the case correctly with the parts I had was going to be a nightmare.
Every part specced is SMD, except the battery holder, which I was going to fake, regardless. The required board space is tiny, but the smallest case I could get in my time budget was RadioShack’s smallest one.I could make the board tiny and face it, or just make the board the right size to use the mounting holes.
I use Eagle. Because I’m too cheap to buy anything else, and don’t want to pirate stuff. Here’s what the board looks like in Eagle:
Here’s what it looks like in real life:
You can pick up a copy of the printable board template that I used.
For this version, I wound having to move the switch a bit in, and the board is clearly cut off on top. The scrap I had lying around was a smidge small.
Things I learned:
- Using a 20 Gauge dispensing needle rather than the normal 22 I use allowed me to move faster, but I hade 3 shorts on the board. Oops. There went the time budget.
- The hacked battery holder was good enough for a prototype.
Well, once I got the shorts cleared up I was very fortunate to find it worked straight away!
The signals looked good as well:
- First picture: The output from the front-end amp
- Second: Output from the peak detector to the MOSFET
- Third: The actual output (The crap at the end is due to a terrible rigging of the high-side resistor. It jiggled.)
Taking this for a quick spin made it obvious that it had worked quite well. It’s much easier to move fast and I didn’t see any extra hits or missed hits.
So, if I had to do it over again, I’d probably use a different op-amp. The Seiko S-89431 has the low voltage, rail-to-rail operation, and micro power that the LMP2011 gave me, and comes in around $.44 each in small quantities. I’ll try it at some point. Other than that, I think everything else was fine.