I've been DJing for about 10 years now, and for the last couple I've swapped good old fashioned vinyl for virtual vinyl in the form of Serato. This allows me control mp3's using timecode vinyl on the turntables. However, like a lot of DJ's, this led me down the dark path of spending gigs staring at my laptop - aka - Serato Face. I needed to find an interface that would keep my eyes off the screen, but all the ones in my price range weren't laid out in a way that worked for me.
Having seen some great Instructables from other people that made their own arcade style MIDI controllers, a bespoke controller became something I needed to add to my DJ arsenal.
However, my knowledge of electronics and programming is completely rubbish! So I needed to find a way to do it with nothing more than some basic soldering. Another problem was that I'm primarily a carpenter, but to keep it rugged & compact it would need to be made from some kind of metal.
So, with next to no experience in any of the stuff I needed to be good at, this was going to be a challenge to say the least!
Things I used...
- Some sheet metal (an old fireplace)
- Something to cut metal with (a little Dremel/junior hacksaw)
- Metal file for tidying things up a bit
- Sacrificial MIDI controller (got mine off ebay...£33)
- Buttons (£30ish)
- 3mm / 7mm / 13mm drill bits
- 29mm holesaw
- Soldering Iron
- Some old timber
- Little self tapping screws (£1.50ish)
- Paint (£4.50)
- Patience & coffee
Step 1: Research, Aims, Objectives
- Have 5 different cue points for each channel (10 buttons)
- Search through loop points and turn them on/off for each channel (6 buttons)
- High pass filter for each channel, and a button to turn on/off (2 buttons, 2 dials)
- Navigation (1 dial, 2 buttons)
- A button to hit for fade out delay effect on each channel (2 buttons)
- A few buttons to trigger airhorns & samples....cos everyone loves an airhorn! (3 buttons)
That gave me a total of 25 buttons (colour coded), and 3 rotary dials. Also it needed to be "plug & play", meaning I could just plug it in the USB and it would be ready to go (no faffing around with extra software or power supplies).
I spent a couple of evenings trawling the internet looking at guides on how other people made theirs. The ones I probably benefited most from were...
Rather than learning a totally new skill set, I decided that I'd be best off ripping the circuitry out an existing MIDI controller and simply soldering my own buttons & knobs in place of the ones already there. I got one off ebay for £33.
I got the arcade buttons from here. I spent around £30.
Step 2: Design
Once I'd sourced my bits I gutted the controller and figured out how much space I'd need for the circuitry, and how deep the buttons were under the surface.
Then I sat in front of AutoCAD and designed, redesigned, redesigned....then redesigned again. Eventually I landed on something I was happy with that met all my requirements....or at least was a good compromise. The CAD shown isn't really finished...this was like my 4th version so couldn't be bothered to draw on the details.
Step 3: Cutting the Casing
It isn't on my CAD drawing but I wanted to curve a few of the edges. I wasn't too bothered about screw/bolt heads on show.
I've got a little Dremel that I used to cut the metal, but it takes ages, so I wanted to do as few cuts as possible. I decided to cut the top/front/rear as one piece, and sides/bottom as another, and bend them into shape.
I'd removed a big metal gas heater from my living room recently so had plenty of scrap to work with...I think i was using 1mm steel, but I'm not sure.
I made a template for the casing out of some softwood I had kicking around. Then i drew each piece onto the metal with a bit extra on the edges I could get away with it...this could get trimmed off later.
Then I cut them out using my Dremel...since it's a rubbish little thing that could only cut a couple inches on each charge this took bloody ages. Seriously....I made these while I was waiting for the battery to charge...that's how long it took!
After that I simply rolled the pieces around my template to put the bends in. This was ok on the curvy edges but I really struggled with the square on the top rear edge so there were a few uneven bits & dents (from where I thought it would be a good idea to use a hammer!)
Step 4: Joints
For the joints, I used bits of the fireplace that were already bent to 90o....I just cut them off
I cut them to length and attached them with Flange head self tapping screws with a 3mm pilot hole.
Then more bloody Dremeling and a lot of filing to make the edges match up nicely. It was far from perfect, but good enough for me.
Step 5: Cutting Openings
I masked the top of the case and marked out the openings for the buttons and drilled the center points with a 3mm bit.
Most the buttons needed a 28mm / 12mm / 7mm mounting hole, and these were cut using a 29mm holesaw / 13mm blacksmiths bit / 7mm HSS drill bit.
The square hole for the USB was cut by Dremel, and the jack drilled.
Step 6: Bodging the Electrics
I got a keyboard off ebay for £33 - Miditech i2 Control-25.
It had 25 keys for me to replace with buttons, a bunch of rotary dials, was powered by USB bus, and a footswitch input. The footswitch input meant I could just plug in via jack and turn anything with a switch into a MIDI trigger!
I took my time taking it apart, being careful not to break anything important. Once I'd striped all the casing & keys off I removed the LED display, and pitch/mod wheels from the main circuit board...everything I needed was still showing up on my computers MIDI monitor so I left them off.
The next problem was wiring my switches into the keyboards circuit board. I just fiddled about with a bit of wire while watching a MIDI monitor on the computer until it said a key had been pressed. Each of the key triggers was made of 4 graphite pads, and I found that if you scratch the graphite off and 3 or 4 of them are crossed, a note gets sent.
I drilled through the scratched graphite pads on the circuit, poked a bit of wire through, back out the hole next to it, then given a spot of solder. Then the excess got trimmed off with a Dremel. It was a bit crude, but it did the job and wasn't going to budge if it got banged about. I needed all 25 keys to work so took my time and tried not to wreck anything!
For the rotary knobs I dremelled off the knobs I didn't want to use and this sent the MIDI monitor mental. So I tried to be clever and bypass some stuff on the circuit board...then it went more mental! After a few hours of failing to fix this I admitted defeat, and am now watching ebay again for a second keyboard to rip apart...I'll update the instructable when I've sorted it out. For anyone doing this that's as useless as me...don't try to be clever! Leave everything in place, and move the knobs by cutting them off and extending with wire from the terminals.
The buttons got soldered on once the circuits were mounted in the case.
Step 7: Mounting Circuits / Painting
I mounted the circuit boards on some cardboard to make sure they wouldn't short on the casing. When I checked the fit I found that the angle joints were in the way, so I trimmed them so they were a bit narrower (more damn dremeling!). The circuits got attached with more screws, being careful not to drive through anything important.
I stripped it back to the casing and it got a couple of coats of primer, sanding with 240grit after each coat. It then got finished with black gloss spray paint.
Step 8: Installing Buttons
I mounted the buttons, trimmed the wires for each one so there wasn't too much excess, and soldered wires in place. It didn't really matter which wire went to which button as it all gets mapped in Serato anyway.
Then I put the casing back together, and Bobs your Dads brother!
Step 9: Finished!
And there you go...if you take a look at the pic you'll also notice a big red button I made that plugs into the auxillary in (footswitch) and acts as an additional trigger...for if you want to blow up the world or something.
I'll update the instructable when I get the knobs sorted out, and post a video of it in use too. I just wanted to get it posted in time for the UP! contest. Please click vote!
I didn't really know what I was doing for most of this project, so any feedback on how I could have done this better will be appreciated.