Introduction: DIY Virtual DJ Midi Usb Controller

Hello guys, I am Gulshan Seetohul from Mauritius Island and in this instructable will show you how to make a diy midi controller for virtual dj.
I decided to make this as midi (via usb and converter software) controllers for virtual dj are too expensive.

It is very important for you to know that this instructable will be built from a cheap $10 gamepad that has at least 2 axes(x,y) and multiple buttons.

Step 1: You Will Need the Following...

You will need

1) A cheap gamepad
2) An electric solder
3) A glue gun
4) Push buttons
5) Potentiometers (depends how many axes your gamepad has). The value i used is 10Kohm as my gamepad originally had 10Kohm ones,it was written on the circuit board.
6) A project box (i used an ice cream box as prototype)
7) Good Soldering skills

Step 2: Opening the Gamepad

Its very easy to open the gamepad, just unscrew the screws and expose the printed circuit board.

Step 3: Find the Right Point of Connections.

Ok, heres the tricky part of the project...
It all depends on your gamepad, once you have the circuit board in hand, you must refer to the layout of the buttons of the gamepad and try to identify where the buttons make contact.

Simply take a piece of wire(about 4 cm in length) and splice the ends, now try different contacts on the pcb and try to determine where are the grounds and where are the positives.

To easily know what buttons are being activated, got to control panel,then to game controllers,it will show you what buttons of the gamepad are being pressed(or activated through the short circuit you are making using the small wire).

Step 4: Solder the Push Buttons

Now that you know where are the contacts that you need, use your skill and solder each contacts to wires,

note that colour coding makes it very easy!!

Step 5: Solder the Potentiometers

Now you have to solder the potentiometers.

To know what are the connections of the potentiometer,simple
refer to the pictures below!

i colour coded mine as below:

Step 6: Put It in a BOx.

Finally,when you complete soldering all the needed wires, find a box and put all in :)

Mine was only a prototype (I didnt even rename the buttons) and i will improve it by putting leds and linear potentiometer (crossfader type).
I will also use a nice and large project box.

To be able to use it as as virtual dj controller, download a software called ''rejoice'' , it is free.
Then you just need to assign the buttons as you want in virtual dj.
For e.g play/pause or sync or effects or whatever function you need.
Do the same for the potentiometers (use as crossfader or equalizer or even volume).


LEIZERC made it!(author)2016-02-29

Hello friend I'd like to know how I connect a linear potentiometer

GREAT IDEA SOS a genius, I'm from Spain

gulshan20 made it!(author)2016-03-10

Hello, you just need to connect the 3 pins on the joystick onto the 3 pins of the linear potentiometer :)
It will work the same,as long as the linear pot is of the same resistance value as that of the joystick pot.

Finis+VincentB made it!(author)2015-12-07

hi there good day .this is vinz.where can i download 64bit rejoice.

jperez83 made it!(author)2014-03-02


Is there any chances that it will work with TWO GAMPADS BOTH with same FUNCTIONS (Player 1 and Player 2)

please respond to my comment


gulshan20 made it!(author)2015-01-22

please read through the comments, i have already replied to this question.
You need to use "fergo midi joystick" software to combine the 2 gamepads , then you can proceed to mapping out the buttons.

thanks ;)

munilonko made it!(author)2014-07-31

Hello I have a question. I'm building my midi controller and I want to put a light sensor ldr and use it as potentiometer. How do I do it? simply connect the LDR as a button more, or should i add something else? I'm a musician, not electrically. Nor speak English :) Greetings!

gulshan20 made it!(author)2015-01-22

the LDR should have a range of 0-10K in order for you to use it :)
check with your local dealer for the LDR values ;)

joey.crespo.92 made it!(author)2014-12-16

Can I use a pots with a higher value. like if the pots is supposed to be 10k can i use 100 k pots ?

gulshan20 made it!(author)2015-01-22

check on your board, the value of the potentiometer should be written somewhere there :)
Else use 10K pots.

Johnny+Lavabo made it!(author)2014-06-02

Hi! Very cool instructable! The only thing I don't understand is how you can map the potentiometers in vdj. I've searched and searched, but found no solution :/

ajalademola made it!(author)2013-03-29

where do i download the rejoice software?

gulshan20 made it!(author)2013-04-01

U can simply google it ;)
Its a free software^^

TheRealDutchOwner made it!(author)2012-01-15

It isn't cardboard. It's a PCB board.

SpankThat made it!(author)2011-10-22

Excellent project dude! You inspire me ;)

gulshan20 made it!(author)2011-12-17

thank you:)
ur welcome:)

ezas%C4%8Diurinskas made it!(author)2011-10-15

Hi, i make that projecy. I have fergojoystickmidi. It works perfectly on ableton 8.2.2 but not working on Traktor and virtual dj! I dont like ableton I wanna Traktor or virtual dJ! Please HELP!!

martinqueija made it!(author)2011-07-17

hey gulshan20 nice instructable btw!!! i am about to tare down a ps2 joystick to use it as a midi controller with multicontrol on mac.

correct me if im wrong.. each analog stick has two axis therefore 2 potenciometers per analog

am i right? so there are 4 potenciometers per joystick..

how do i cable a FADER (from an old mixer) to an axis of an analog to use it as a potenciometer instead of using the analog..??

hope you understood my question
thanks in advance

gulshan20 made it!(author)2011-07-21

Yes each stick has 2,on a rotatry potentiometer,there are three connections,namely power,signal and ground.on the slider potentiometer from the mixer also there are three connections,just google to find out which connections do what(signal ground or power) and connect them to the gamepad.

Beonic made it!(author)2011-01-19

is it possible to connect a second pad to the first one for more functions
or seperate?

gulshan20 made it!(author)2011-01-19

i once tried to figure this out but then later just dropped the idea as i am not using the device often.
U should basically be able to do it. use rejoice,there is a function of combining 2 or more gamepads and output them to a single midi.
try it and post your results.thanks for helping and trying further things about the project:)

mikergee made it!(author)2011-01-20

i already try it and work perfectly, i separate the control deck 1 and 2 but you should open 2 rejoice application to control the other device. i also use MJoy because it can handle 2 joystick and more stable than rejoice but the problem is it can handle only 6 button per joystick. until i found a perfect software. its fergo joystick midi, i think its the best software to use.

gulshan20 made it!(author)2011-01-20

hey thanks man:)
you found it:)
thanks for sharing the information:)
i will try the program you mentioned and test it:)
continue with the good work and share also:)

mikergee made it!(author)2011-01-21

this is what i got so far. controller for 1 deck only but you can control 2 deck alternately or build another one for 2nd deck, i don't need the mixer area coz i'm using an external mixer, i have a previous design using keyboard circuit but i drop the idea when i found this joystick to midi project.

gulshan20 made it!(author)2011-01-21

hey you made nice progress:)
it looks good too:)

i think i will now use my existing controller as a mixer, then i will build 2 other one to control the deck:)

next thing i need to figure is how to control rotary encoder,it can be used to search music in folders or it can be used as jogwheels:)

i will post any progress here itself:)

btw, in which country u live?

mikergee made it!(author)2011-01-22

i have a rotary control in in mind, by using ball mouse sensor to control the scratch waveform, i will just place the cursor in the proper waveform and control it. i will let you know how i progress.

i'm from Manila Philippines

mdeichmann made it!(author)2011-03-12

Hi! You guys are amazing! Creating these controlling from practically nothing!

Mikergee! I live in the philippines aswell,, wondered if you can help me build one,

basically what i need in one box is.....

6 toggle switches
4 knobs
3 sliders

what board can you recommend?

as you guys mentioned, a gamepad with two analog sticks can handle 4 pots? correct me if im wrong,, :)

as i understand..... sliders and knobs are analog?? (big question mark)

what can you suggest?

gulshan20 made it!(author)2011-03-13

ok,firstly you need to know that, slider and knobs are both POTENTIOMETERS.It is just that they are different in shape but has exactly the same function!

ok,now,if you will build your controller from the same type of gamepad i used(the usual one from china),you will get 12 buttons,and 4 POTENTIOMETRES.
now,i said that you have 4 potentiometers,but you want 7 potentiometer(4knobs+3sliders), to do this,you will have to buy a second gamepad and do the same as for the first one.then,you can just use a usb hub to bond them.

i guess mikergee may help you better than i on this question.

mdeichmann made it!(author)2011-03-14


thanks man,,, appreciate it! working today on my project,,,

i dont know if its a good thing,,, but i found a two in one gamepad,,, 2 gamepads connected to each other and has only 1 usb cable,,,


is it a must to download the mac software that you have mentioned? (junxion)

or i can continue with my project with out using the software?

thnx guys! il post the finished product when im done! more power!

gulshan20 made it!(author)2011-03-14

you ABSOLUTELY need a software(e.g junxion) to be able ti convert HID data to midi data to be able to send data to virtual dj

aatencio made it!(author)2011-03-14

gulshan, im really sorry,, i hope im not annoying you or anything,,, =)

i have downloaded the software, multi control,,,

i do get signals,, all i see when i press the switches are the values goin up and down,,, (0-127),,,

but,, what next? i have no clue what im lookin at,,,

im sorry,, i hope im not a pain... im sure once i get this,,, ill be creating tons more,,

thanks guys!

gulshan20 made it!(author)2011-03-17

hi aatencio.

oh you do get signals,thats a good sign:)
now,if you get signals,you already know that your hardware is ok.
now if you are using a windows os,i recommend you the software 'Rejoice'.
i personally use this software and find it easy to may also use 'fergo joystick midi' but i have not tested it.

values going up and down means that your potentiometers are correctly hooked up.
try rejoice and see if its ok.

sorry for replying late.was very busy at school those few days.

mdeichmann made it!(author)2011-03-25

Sure thing no prob! We all have to work sometime... hehe,,

oh yah by the way sorry for the last post (aatencio) i used my girlfriends account,, forgot to logout,,, well anyway,,,

sounds good then,, meaning i hooked everything correctly,, but my question is,,, how do i use it with m-audio torq? or serato? and im sorry to complicate things,, but im running a mac,, and the only software i can use is multi control...

i have no clue with what im doing,,,,,,, hehe,, thats why i come to you guys! i can see the numbers and the software responding to the pad,,, but what next? what do i have to do for it to work on torq???

mann.. im soo glad i have you guys to help!! big thanks guys!

gulshan20 made it!(author)2011-03-26

ok so u have a mac,but the problem is,i don't:p
but it should be similar.

now,in the software u used,u got all the buttons and pots hooked correctly,meaning that u get values also(0-127)
now,i don't have the same software as u,so i cannot tell u exactly what to do,but u must search how to use the should be able to send all the midi data of your controller to a single midi outlet.

then u just have to configure it on virtual dj.
personally i don't have torq or serato but if these software are midi enabled,then u should configure the buttons and pots the same as u did for virtual dj.

btw,be patient,it will take some time:p
i myself took a very long time to know what i was doing:p
it is all about the software!!focuss on it!

hoped i help man:)

mikergee made it!(author)2011-03-21

as far as i know all switches are all push button, the toggle function can be define in the software. (how you want to react the button)

may i ask what controller you are found(2 in 1)

i'm working on my new design using 3 controller, (2 dual shock and 1 regular pad) here the image

gulshan20 made it!(author)2011-03-23

hey mikergee
your design seems very good man:)
looks professional:)
but how will you do the jogwheels?u found any solution?i haven't found anything,oh well,i do not have enough time to work on it:( exams are near:(

mikergee made it!(author)2011-03-25

the jog wheel is just a simulation, its actually a 8 cm cd with sticker act as shuttle wheel like in vcr, you cannot rotate it. by just panning it left and right it will push a switch define as nudge in vdj.
i think it will take a lot of circuitry to make a jog wheel.

heres the actual panel design made in flexyglass ready to cut.

gulshan20 made it!(author)2011-03-25

wow man u very good at this:)
am glad that people are actually happy about this project because i have not seen many of these tutorials/instructibles on the internet :p

good luck for the project man:) it will surely be very good:)
for the jogwheel,it can be made,but it cannot be incorporated within the gamepad's for it on google,because i dont actually have much information on it.

gulshan20 made it!(author)2011-01-22

oh,but i was thinking differently, i was thinkg of replacing the potentiometers with a encoder itself.
An encoder is exactly as a potentiometer,but it can keep on rotating and rotating forever:)
yes,please post your rezults:)

regards,am from Mauritius:)

mikergee made it!(author)2011-03-25

heres my prototype in action. hope you like it.

gulshan20 made it!(author)2011-03-25

man your prototype is very very good:)
works well:)
btw,u made 1 for the other deck too?and try to use all the 4 potentiometers for more controls:) seems u used only 2:p

gulshan20 made it!(author)2011-01-22

no,the 3 pots are not used for equalizer.
they are used as equalizer FADERS , that is, i can play the voice from 1 deck,and use the bass of the other deck. It makes mixing so much more easy:) .

yes,u can use 2 or more gamepads to get more functions, then you have to use a program called ''fergo joystick midi'' to be able to combine the gamepads into 1 single midi outlet.(thanks to mikergee who found this software)

as for the deck switching,i use it to apply effects and loop out button, that is ,when i press choose deck A and i press an effect button, the effect will be applied to deck A, similarly ,i can do the same for deck B.

please share any progress so that other people can save time investigating into the matter again:)

Beonic made it!(author)2011-01-23

yeah i will post some progress soon
i have to order a new gamepad ...i damaged the first one =(

i like diy things and i like ur project so...
my idea is to create a full vdj controller like a dj mixer but without jogwheel

mikergee made it!(author)2011-01-23

you can use a wired usb hub with 2 or or more port to connect all the joystick in one controller

gulshan20 made it!(author)2011-01-23

yes please post your progress,and if possible,post pictures too:)
btw,we are currently working on how to use encoder wheels(jogwheels) into our DIY gamepad mod!
will post progress if any!

joearkay made it!(author)2011-02-23

What did you solder the potentiometers too?

As in which part of the controller?

gulshan20 made it!(author)2011-02-23

I soldered it to the existing potentiometers.(the analog sticks.)
Each analog stick has 2 axis,which means,2 potentiometers in 1 analog stick.
Just solder directly to the existing need to remove the old ones.

mikergee made it!(author)2011-03-13

can you use the full length of the potentiometer? mine was about 70% only.

gulshan20 made it!(author)2011-03-13

yes i can use the full length.
maybe the fact is that i use Rejoice and not Vergo midi.
check in virtual dj settings,i think there is something called 'Absolute Value' which regulates the length of the potentiometer.

joearkay made it!(author)2011-02-23

Ok cheers :) what value of potentiometer did you use?, 100k?

gulshan20 made it!(author)2011-02-23

No,i soldered 10k potentiometers.
At the back of the circuit board,it was writt 10k,sO i soldered 10k potentiometers=)
U can check whether yours is 10k or otherwise solder the value writtn there=)

About This Instructable



More by gulshan20:Automotive Remote Central LockingDIY Virtual DJ midi usb controller
Add instructable to: