Rock Band with Electronic Drums (HOWTO)

Aelius27Aelius27 Unsigned
edited August 2012 in Less Rokk More Talk
**UPDATE** : Picture of solder locations posted to Page 4.

I read the rules, and saw that we weren't supposed to talk about hacks. I assume that they mean SOFTWARE hacks that help people cheat, rather than hardware hacks to help us enjoy their game more, but I could be wrong.

Harmonix, I mean no offense. I'd really like to not be banned, and just have this thread deleted if my interpretation is wrong. This is the only thread I will talk about this on from here on out, so if you delete this thread mum is the word from here on out. :)

Now that I've hopefully provided some form of disclaimer that might keep me from being banned...

This will be my thread that I'm brain dumping my HOWTO on. It will unfold over time as I put together the pictures/video to help you guys out.

Here is my initial video, for those that want proof and haven't seen it yet.
http://www.youtube.com/watch?v=mdD2i2r6tFw

My system has changed, and frankly my drumming has gotten better. ;)

Seriously though, at the time of the video I was using the BasicX processor. That processor doesn't natively support the MIDI baud rate, so it was a pretty serious hack. I also found that processor to be a little unreliable, and had some problems with triggering. I'm waiting on a UART that supports the correct MIDI baud rate currently, because I would like to return to that system...

In the meantime, I've moved to a PC based system for the time being. The PC system is 100% reliable. I got the "Flawless Drummer" achievement using it, and I'm currently playing through the game on Hard. My latency is low enough that you can't tell the difference between my drums and the Harmonix drums at all. We had a Rock Band party at my house with ~ 15 people or so on Friday using only my Roland Drums. Everyone loved it and we had no problems with needing different calibrations.

I'm inputing MIDI to the PC via a PCI based sound card with a gameport, and a gameport to MIDI cable. I wrote custom software on the PC to process the MIDI messages and pulse pins on the parallel (LPT) port. Then I have a small circuit that uses opto-isolators for the switching in order to isolate the PC electronics from the drum/360 electronics.

I don't really see a business opportunity that scales well here, so you can put away your fear and wallets. I'm planning on making everything I've written and discovered freely available. Because I actually do like money, at the end of all this, if you really feel moved to throw money at me, you can paypal me. :)

Comments

  • Aelius27Aelius27 Unsigned
    edited January 2008
    Okay, first post of actual content...

    The first stage of my hack was to determine my general strategy. Simulating the output of a Piezo-electric sensor seemed non-trivial to me. So the first thing I check was if you could play the game using the buttons on the little controller section in the middle of the drums.

    Turns out you can (try it at home!). This makes the modification of the harmonix drums trivial. This makes it simply automating some switches, which is great.

    So, the middle controller section uses a standard technology that most controllers these days use. They have interlaced but non-connecting solder pads on the circuit board, and a conducting material mounted on a rubber membrane over those pads. When you press the button the rubber membrane is deflected which causes the conducting material to touch both of the solder pads and connect them.

    I wanted my center section to continue to be usable as a controller, so I used my multi-meter to find solder locations on the circuit board that didn't interfere with the buttons ability to work.

    For those that want to skip ahead, turns out all the buttons are connected to ground on one side, and have a signal line connected to one of the pins that connect the chip board to the main circuit board on the back side (compared to the location of the button pads). With no power applied I used a multi-meter to find those pins and soldered on there.

    Unfortunately I have work and plans tomorrow night, so I'll take my controller apart and post pictures of my work on Saturday. I'll probably also put together a YouTube video that covers this part of the hack.

    This information should be enough to get the most clever of you up and working soon. I'm also working with a friend who purchased a MIDI relay device to get his working in that way, for those that want a little simpler solution, that will be a good direction to go, but they aren't cheap. ;)
  • ragmasterragmaster Unsigned
    edited January 2008
    I am dying to use my Alesis Kit, and i know im not alone. The MIDI relay options sounds clean. Although i have no idea what that means :).

    Count me in for 250 bucks!

    Got to be a market for this eventually, seeing that rock band might be the greatest drum training device ever in the history of mankind. Its made me realize, i suck.
  • zolonzolon Opening Act
    edited January 2008
    Ok. Few simple questions, which I am sure you will answer when you have time.

    1. Parts list - aka, What drum set? What bread bored? What chip again? so on and so forth.

    2. Will any MIDI controller work?

    3. Time involved for setup and break down of the contraption?

    I am sure I will come up with more as I see your info, but I am currently looking at VSets, and I want to make sure I get one that is PROVEN to work.

    Thanks.
  • Aelius27Aelius27 Unsigned
    edited January 2008
    I will detail as much as I can, and answer pretty much any questions anyone comes up with as I document each step, but here is your answers for now:

    1) My drum set is an older Roland TD-6 I bought off craigslist specifically for this project. Any drum set with a reliable MIDI out should work. I'm planning on making the software configurable from a text file in case you need/want to change the MIDI channel numbers, or adjust/support additional instruments. I've added a bit to my kit so I now have 2 crashes, with both mapped to green.

    I'm comfortable saying anything by Roland that outputs MIDI is going to work fine. The other major brands should also work fine, though I'm not an electronic drum expert by any means...

    Bread boards are simple prototyping tools. Any of them will work, that is like asking "which brand of plyers?".

    The chip I was using was the BasicX-24, though I'm not sure it's up to the task. As I stated above I'm currently using a full blown PC, though it's an older one, running Windows XP.

    The full parts list I'll post when I get to documenting that stage of the process.

    2) MIDI controller? Are you asking about the electronic drum brain? Anything that outputs MIDI signals should work fine. The brain is responsible for dealing with the triggers though, so if you had a bad one you might get double triggering, etc. You don't want that.

    On the other side I'm using a cheap PCI sound card with a gameport. The gameport driver is uniform on all those cheap soundcards, and was written/maintained by Microsoft, it's stable and fast. I tried using a MIDI-USB thing at first, but had random note misses when playing that I attributed to lag/jitter. That seems to have been fixed when I went to the PCI interface. It was cheap at a local computer retailer, like $15.

    3) I haven't really moved them. Currently my system is a headless PC, connected by cable to the Roland drums, and by cable to the breadboard, which is connected by cable to what remains of the Harmonix drums. Setting up the Electronic drums is by far the most time consuming part of the equation.
  • zolonzolon Opening Act
    edited January 2008
    Sounds great. I have just started the barter with my lady on spending $1500 on a set of drums. :P

    MILLS Music near where I live does price matching with almost any place, and I have been looking at the TD6-SW Tour Set already. So this fits with your designs.

    http://www.google.com/products?q=roland+TD-6SW&rls=com.microsoft:en-us&ie=UTF-8&oe=UTF-8&um=1

    2) And yes, in a way. I have a ton of MIDI devices already, just no actual drum triggers. So I was thinking I could use one of them for testing the setup until I can afford the VSet.

    I am looking forward to the layout diagrams you have setup and any other information on this. Thank you so much. :)
  • Aelius27Aelius27 Unsigned
    edited January 2008
    Sure, that set should work fine.

    I got my set for ~ $400 used on craigslist after I sold the amp that came with them, but I already had a drum pedal and throne.

    Of course, since then I've bought a shiny new (more comfortable) throne, a nice Pintech trigger to use for the snare, and I'm waiting to receive a nice Pintech mesh headed kick trigger I won on ebay so I can use my double pedal. But I choose not to talk about how much this project has cost me with my wife. :)
  • zolonzolon Opening Act
    edited January 2008
    Understand that.

    I already have a throne. My kick pedal snapped YEARS ago though, from a old set that I have had since I was 4. So I will need to pick up a new one of those unless it comes with the set.

    I found a set on craiglist, but I have always been twitchy about buying electronics used.
  • zanzabezzanzabez Unsigned
    edited January 2008
    That has to be the best thing I have seen yet!
  • brianwibrianwi Unsigned
    edited January 2008
    I don't want to get banned either, but made a much more expensive way work (and I'm the friend mentioned in the first post), so am posting here especially as a lot of the credit goes to Aelius27 anyway, cause he helped me troubleshoot big time. (Given that the cost of the solution is ~$400 total, I doubt many will do it.)

    For those who aren't as engineering inclined (although it will still take a little) and have a few extra dollars laying around, I took a suggestion from ZenNye at ScoreHero (ZenZen here I think), and bought the MidiSolutions.com R8 Midi Relay. I have a set of Roland TD-6SW drums.

    What I did:

    1) Midi Out Cable to Midi In on the R8
    2) Program the R8 (using the awesome free software from their site) to however you'd like your drums to work. I've appended how I programmed them at the bottom. When you program you want to send a 40ms pulse on NOTE ON.
    3) Buy 4 RCA to exposed (and tinned) wire cables. I used the 6 foot ones I found at Radio Shack. You'll also need 4 RCA to 1/4" mono converters (so you can plug this end into the R8). *(In reality anything that gets you from the 1/4" jack on the R8 relays to bare wires will work just fine - pre-tinned just makes it that much easier and you're not wasting one end of the cable when you cut it off).
    4) Buy 1 1/4" mono to 1/8" mono cable. This is for the bass pedal.
    5) From here, I'm not going to detail it as Aelius27 will likely do a much better job :), but now you have to take apart your drums and get down to the motherboard. The only wires that will matter are the bass pedal and the one that goes to USB on the XBOX360. You are free to cut the rest (at your own risk of course).
    6) Then solder the wires onto where the buttons go on the motherboard. This is difficult. If you don't know how to solder, find someone who does, and use FLUX. If you still want your controller to work like Aelius27 did, then use his connections. Otherwise you can see under the buttons what looks like two 'E's facing each other. The small circles above and below are where you make the connection. The circle that has a small trace coming out of it is where you solder the center wire of your cable too. The other circle appears to just join with the large grounding plane. This is the ground and where the outer cable from your RCA cable should be attached. Use a multimeter if you have any doubts or this doesn't make sense.

    7) Now plug the cables into the R8 based on how you programmed it in step 2.

    8) Once this is done, take the cable from #4 above and plug it into the bass pedal plug in that is still attached to the motherboard.

    9) Turn everything on and it should work.

    10) I'm able to do some of the fastest parts of songs with no issues and no delay. The relays in the R8 are super fast (2ms) so I didn't need to adjust my calibration for this to work.

    MIDI NOTE / DRUM / COLOR ASSIGNED

    22: Hi-Hat Rim (Closed) YELLOW
    26: Hi-Hat Rim (Open) YELLOW
    42: Hi-Hat (Closed) YELLOW
    44: Hi-Hat Pedal Unused
    46: Hi-Hat (Open) YELLOW

    38: Snare RED
    40: Snare Rim RED

    48: Tom 1 YELLOW
    50: Tom 1 Rim YELLOW
    45: Tom 2 BLUE
    41: Tom 3 GREEN (for fast runs down the toms?)

    36: Kick ORANGE

    49: Crash 1 GREEN
    55: Crash 1 Rim GREEN

    51: Ride BLUE
    53: Ride Rim BLUE

    Again KUDOs to Aelius27 for making me want to do this in the first place and his superior skills in helping me make my solution work correctly.

    I am waiting on a larger mem card for my camera and then I'll post a video that shows me playing, etc.
  • rwornerworne Opening Act
    edited January 2008
    Considering Harmonix's stated stance on open standard controllers - why should this hack not be allowed?

    This new controller is very interesting indeed.
  • Shady515Shady515 Unsigned
    edited January 2008
    What about kind of the opposite-hooking up Rock Band drums to a pc via usb and being able to jam with some sort of soundboard or something? (I can't find an electronic drumset and I'm a guitarist who found out I can play the shxt out the drums!) Isn't there some sort of program I can get and just plug in my RB drums and jam? Even better, custom sounds per pad-like dog barks on the yellow pad and bells on the blue? Or something...Ideas...
  • BakksterBakkster Road Warrior
    edited January 2008
    rworne;235103 said:
    Considering Harmonix's stated stance on open standard controllers - why should this hack not be allowed?
    There are many threads about hacking the hardware, and as long as they don't abuse the game to give you an advantage in online play, or steal DLC or proprietary info, HMX is probably cool with it.
    Shady515;235109 said:
    What about kind of the opposite-hooking up Rock Band drums to a pc via usb and being able to jam with some sort of soundboard or something?
    Search the forum for DrumIt (I believe is the name), as this program has already been written.

    Very cool, and something I had thought about doing as well. Any plans to skip the dismantled RB drums and go straight from MIDI to USB? I assume it would only require spoofing the USB info of the RB drums and adding that information to the micro controller's code.

    Very cool indeed.
  • zolonzolon Opening Act
    edited January 2008
    Welp, it's not roland, but I found a Yamaha DXP III Electronic Drum Kit for only $600.

    Picking this up ASAP, and then I will start hacking cables to get it to work with RockBand.

    I will take step by step pictures and document the path I took, for two reasons. One, I am going to probably mess up along the way, if it's documented, maybe some one can tell me where. The other, well, some one needs to. :P

    Thanks for showing us all that this can be done.

    And yes, there is a program called DrumIt that allows you to use ANY game controller as a drum set, aka, the RockBand drums with your windows computer.
  • rwornerworne Opening Act
    edited January 2008
    Shady515;235109 said:
    What about kind of the opposite-hooking up Rock Band drums to a pc via usb and being able to jam with some sort of soundboard or something? (I can't find an electronic drumset and I'm a guitarist who found out I can play the shxt out the drums!) Isn't there some sort of program I can get and just plug in my RB drums and jam? Even better, custom sounds per pad-like dog barks on the yellow pad and bells on the blue? Or something...Ideas...
    Got an Apple?

    You can hook up your RB Drums to a Mac and use Garage Band.
  • igotriceigotrice Unsigned
    edited January 2008
    Wow, good work Aelius27.

    Question: for those of us who just want to mod a double bass pedal, how do you think we should go about using just a Roland KD-7 or similar pedal trigger with a MIDI controller?
  • Shady515Shady515 Unsigned
    edited January 2008
    no, it's a Dell...All I know for pc is Frets on Fire and Guitar Zero. I will look up Garage Band and see if there's one for windows xp.
  • BakksterBakkster Road Warrior
    edited January 2008
    igotrice;235908 said:
    Question: for those of us who just want to mod a double bass pedal, how do you think we should go about using just a Roland KD-7 or similar pedal trigger with a MIDI controller?
    I think a double-bass mod (without using a full MIDI drum set) is overly complicated. Just make each kick drum trigger act as a momentary switch, and connect them in parallel. This combination could then simply be plugged into the kick drum port with no further modifications needed.

    If you are using a full MIDI drum kit, both kick drums should simply trigger the same MIDI channel.
  • zolonzolon Opening Act
    edited January 2008
    Aelius27,

    You mentioned you made a program to relay the midi. As I am not a programmer by any means, I was wondering if I could get a copy?

    I picked up the DTExpress III Drum Set, so now I am trying to figure out how to get the MIDI converted in some fashion that I can control.

    Thanks.

    Temp Solution :P

    image
  • edited January 2008
    Awesome work man, I knew it wouldnt be long until someone cracked this. Thinking about buying a simple midi kit myself so in a few months something like this could come in very handy. Keep up the good work *thumbs up*
  • BlankoBlanko Opening Act
    edited January 2008
    Can't wait to get this mod going. It's annoying having a real electric kit and a dinky toy both consuming my small condo.

    However I'm not looking forward to testing my soldering skills - which are essentially non-existent.

    Just a few questions:

    1) I have a htpc setup near my drums - so I'll be using that instead of breadboard. But besides this pc, is there anything else I need to use between the rb-drum-controller and the xbox? After soldering the connection, how does the rb-drum-controller connect to the pc?

    2) Will the pc method still work if I use my midi-to-usb adapter? (I've never had any missed notes)

    3) For the less inclined, can you video be more explicit with the soldering part of the project? And/or would you be able to build this part for me - for a fee of course?


    Amazing work all around.
    David
  • Aelius27Aelius27 Unsigned
    edited January 2008
    Sorry I didn't get this up this weekend. My internet connection was unavailable for a few hours right when I wanted to be doing this. Sucked.

    There is a full description of everything I'm using currently for the PC method in the first 2 posts. Yes, there are opto-isolators between the RB drums and the PC.

    I'd probably be willing to do some parts of the hacks for a fee. You'll be happier in the long run if you do it yourself though...
  • zolonzolon Opening Act
    edited January 2008
    I'm trying to figure out how to relay from midi to LPT. As I mentioned before, I am not a programmer, so I have no clue how to go about this.
  • BlankoBlanko Opening Act
    edited January 2008
    I'd love to do it myself. I'm just concerned about ruining my kit. The only experience I have soldering is from a dinky light-organ I made in school almost 10 years ago. Anyway, I guess we'll see how confident I am after you document that process (with video hopefully).

    Is this soldering tool appropriate?
    http://www.thinkgeek.com/gadgets/tools/78cf/

    Is this a good reference for the opto-isolator?
    http://en.wikipedia.org/wiki/Opto-isolator

    So, as I understand it here's the pc mod process:
    1) soldier wires to rb-drum-controller circuit board
    2) run (each of?) those wires to an opto-isolator
    3) connect a serial cable via cut wires to the opto-isolator
    4) connect the serial cable to the pc
    5) connect vdrums to pc (midi)
    6) run software to interpret midi signals (I'll gladly pay you for this, regardless of any other help I need). Any time frame on this - so I can begin testing?
    7) software sends signals via serial cable to opto-isolator(s)
    8) opto-isolator(s) trigger the corresponding rb-drum-controller circuits

    Forgive my ignorance if I'm way off :)

    Thanks again for all you've done.
    David
  • rwornerworne Opening Act
    edited January 2008
    Dayum. I want to do this so bad.

    So I'm looking for a kit. Low priced ones are ION, Alesis, and the Yamaha DTXplorer.

    I've read many people griping about the crappy MIDI implementation on the ION, but I don't know about the other two. Though I just assume Yamaha knows what they are doing.

    I don't play the drums, but I am interested in trying to learn. RB is the best motivator I could find. :)
  • zolonzolon Opening Act
    edited January 2008
    I can't afford the midi-relay box solution, so now I am just sitting here banging my head against code that I have no clue about.

    Any word about release of your software Aelius27?
  • zturnzturn Unsigned
    edited January 2008
    WOW that would be so cool to have! but i could never be able to pull something like that off and would it work with the PS3 version??
  • zolonzolon Opening Act
    edited January 2008
    Well, I have been banging my head against the wall for a few days on how to send pulses to LPT pins based on MIDI events, and yeah. This is WAY above me.

    Windows XP aparently won't allow direct access to the LPT, so any option will require special drivers right there.

    I have found a few USB UART/FIFO options that would require some codeing still, but they come with the special drivers that allow single pin operation.

    Aelius27, can we at least get some pointers in how you went about the software development?

    I also possibly found another solution that doesn't require any programming.

    http://highlyliquid.com/kits/msa-r/

    I have emailed the company asking advice on which one of the MIDI Decoders should be used in such a project. As soon as I have more information, I will follow up here.
  • BlankoBlanko Opening Act
    edited January 2008
    Excellent sleuthing. I didn't even know such a diy midi decoder existed.

    D
  • zolonzolon Opening Act
    edited January 2008
    I got a response from Highly Liquid and it appears either the MSA-R and the MSA-P will work.

    The outputs (relay contacts) of the MSA-R and MSA-P are isolated from
    the rest of the MSA board, so backfeed should not be a problem, as long
    as you stay within the limits of the MSA specifications.

    The MSA-R outputs act as any mechanical switch would--so if you can get
    the control to "trigger" using a switch or just a piece of wire, the
    MSA-R should work just as well.

    The MSA-P outputs are similar. They act, roughly, as a switch with a
    22-ohm resistor in series.
    Friday I will be ordering the MSA-P as it has a faster response. When it comes in I will start the mod and report with pictures of the whole process.
  • Aelius27Aelius27 Unsigned
    edited January 2008
    The MSA board looks like a really good solution.

    To answer your question, for my LPT access I'm using the dll/driver described here: http://logix4u.net/Legacy_Ports/Parallel_Port/Inpout32.dll_for_Windows_98/2000/NT/XP.html

    Hope that helps!
    -- Scot
Sign In or Register to comment.